
TradingView WebhookアラートをGoogleAppsScript経由でDiscordに投稿する。
前置き
こんにちは。たんさんです。
前回の記事で、TradingViewのWebhookアラートを使ったbitFlyer自動売買BOTを制作しました。↓
しかし、よく考えてみると、GASシリーズ第1弾のこの記事↓
これを最新版にアップデートできるなと思い至ったので、早速スクリプト(めっちゃシンプル!!)を書き、記事化することにしました。
前提条件
この記事は全文無料で読めます。(有料設定は投げ銭用です)
しかし、TradingViewのWebhookアラートを使用するにはTradingViewの有料会員登録が必要ですので、その点はご理解ください。
↓TradingViewの有料登録はこちらから(アフィリエイトリンクです)
仕様(ざっくり)
TradingView → Google Apps Script → Discord
準備
・TradingView有料会員になる
・Googleアカウントを取得
Google Apps Scriptの設定①
⭐️Google Driveにアクセス
⭐️+新規をクリック
⭐️その他 > Google Apps Scriptをクリック
※Google Apps Scirptがない場合+アプリを追加をクリック
※Google Apps Scriptを検索し+接続をクリック
(下の画像は接続済のため ★評価する になっています)
その後、上記画像の方法でGoogle Apps Scriptを開く
⭐️無題のプロジェクトをクリックし、任意の名前(ここでは「tradingview_alert_discord」)を入力
⭐️以下のコードを貼り付け
//=========================================================
// ↓入力部分↓
//=========================================================
// Discord Webhook URL
DISCORD_WEBHOOK_URL = "Discord Webhook URLを入力";
//=========================================================
// ↓コード本体↓
//=========================================================
function doPost(p){
var message = p.postData.contents;
var payload = JSON.stringify({content: message});
var params = {
headers: {
'Content-Type': 'application/json'
},
method: "POST",
payload: payload,
muteHttpExceptions: true
};
try {
var response = UrlFetchApp.fetch(DISCORD_WEBHOOK_URL, params);
Logger.log(response.getContentText());
}
catch(e){
Logger.log(e);
}
}
※以下の部分に、アラートを送るDiscordチャンネルのWebhook URLを入力します
DISCORD_WEBHOOK_URL = "Discord Webhook URLを入力";
Discord Webhook URLの取得
⭐️アラートを送るDiscordチャンネルの歯車マーク⚙をクリック
(Webhook URLを取得するためには、チャンネルのWebhook URLを取得する権限が付与されている必要があります)
⭐️ウェブフック > ウェブフックを作成をクリック
⭐️ウェブフックURLの右側 Copyをクリックし、保存をクリック
Google Apps Scriptの設定②
⭐️コピーしたWebhook URLを下記画像右側の赤丸部分に貼りつけし、
ファイル > 保存をクリック
※URLを貼り付ける際は以下のようにお願いします。
「"」や「;」を間違って消さないように注意してください。
DISCORD_WEBHOOK_URL = "https://discordapp.com/aaaabbbbccccddddeeee";
⭐️公開 > ウェブアプリケーションとして導入をクリック
・プロジェクトバージョン:New
・次のユーザーとしてアプリケーションを実行:自分
・アプリケーションにアクセスできるユーザー:全員(匿名ユーザーを含む)
⭐️以上になっていることを確認し導入をクリック
⭐️許可を確認をクリック
⭐️自分のGoogleアカウントをクリック
⭐️詳細をクリック
⭐️tradingview_alert_discord(安全ではないページ)に移動をクリック
⭐️許可をクリック
⭐️現在のウェブアプリケーションのURLをコピーしてOKをクリック
(このURLをTradingViewのWebhookアラート部分に貼りつけます)
※今後スクリプトをアップデートする際はファイル > 保存で保存後、
公開 > ウェブアプリケーションとして導入でプロジェクトバージョンをNewにし更新する必要があります。
TradingViewの設定
TradingViewからテストアラートを送ってみます。
⭐️Webhook URLのチェックボックスにチェックを入れ、先ほどコピーしたURLをペースト
⭐️メッセージにDiscordに送りたいメッセージを入力
(@everyoneなどのメンションや、絵文字の使用も可能です)
本番アラートも上記部分に気をつけて設定してもらえれば大丈夫です。
※Discord側に送られたメッセージを確認してみましょう。
先ほどメッセージ部分に記載した内容がそのまま送られています。
終わりに
いかがでしたでしょうか?
TradingViewがWebhook URLに対応したことで、最初のGAS記事に比べると格段にシンブルなシステムになったかと思います!
ちなみに、前回のアラートは1分ごとにTradingViewのアラートの有無を確認していたため、TradingViewのアラート後、Discordにメッセージが届くまで最大で1分弱の遅延がありました。
しかし、新しいシステムでは安定的に数秒以内の遅延しか起こりません。
そのため新しいシステムは、設定が簡単な上に速度も早い、一石二鳥なシステムになりました。
簡単に設定できますので、是非一度試していただければと思います!
以上です。お付き合いいただきありがとうございました。
有用でしたら是非投げ銭として、記事の購入をよろしくお願いします!!
(有料部分は投げ銭用なので何もありません。)
ここから先は
¥ 2,000
サポートしていただいたお金は全てがん闘病生活の資金に充てさせて頂きます。 BTC: 3679CqD4SnZtTgeMTVPjCefCMkrHu3nmjb