
【無料公開!!】TANBOT for MT4 - TradingView WebhookアラートとPythonを利用してMT4で自動売買をする!ワンアラート仕様!!-
こんにちわ!TANBOTです!
今回はTrading ViewワンアラートからMT4で自動売買するEAを紹介していきたいと思います。許可を頂き、下記の記事を参考にさせていただきました。
2021/11/02 更新
有料コミュニティにてMT5での自動売買も可能になりました。
2021/12/11 更新
無料版テンプレート更新。v5へ移行、TANBOT for Bybitと兼用になりました。
- おことわり -
BOTを運用する際には別途TradngViewのインジケーターなどでアラートを設定する必要があります。
当プログラムコードを利用したことにより利用者が被る損失や被害について、筆者は一切の責任を負うことはできません。
- 必要なもの -
・TradingViewの有料アカウント
・TradingViewのアラート
・Windows(MetaTrader4)
・Python(3.x)
・VPS(任意)
- 導入サポート&専用アラート開発・共有の場 -
TANBOTは無料で公開しておりますが、ユーザー様同士での【導入サポート&専用アラートの開発・共有】を目的としたコミュニティへの参加を有料にてご案内しております。下記リンク先のnote有料部よりコミュニティに参加できますのでご検討くださいませ。
- 設定① -
まずはPythonをインストールしましょう。以下のリンクを参考に。
検索窓よりcmdと入力し、コマンドプロンプトを呼び出す。

起動するとこのような画面が出ます。

まず、下記のコードをコピペして下さい。
pip install flask
こうなります。※このウィンドウは開いたままでお願いします。

下記ファイルをダウンロード後、解凍してください。
解凍したファイルを以下の場所まで開いてください。

python横の余白をクリックするとアドレスが出るのでコピーします。
※アドレスは保存場所やファイル名によって異なります。

先ほどのコマンドプロンプトの続きにcd と入力して上記のアドレスをペーストします。※cdの後のスペースを忘れずに!

続いて下記のコードを入力します。
python server.py
こうなります。cdの後のスペースを忘れずに(定期

最終的に下記のような画面になっていれば成功です。

- 設定② -
まずこちらからアカウントを作成。Windows用の実行ファイルをダウンロード後、解凍してngrok.exeを起動します。Authページでtokenを取得後、下記コマンドで認証を行います。
ngrok authtoken XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
続いて下記のコードを入力します。
ngrok http 80
このようになっていれば成功です。赤枠で囲ったところをコピーして設定①は終了です。※VPS等を使わない場合、PCが更新等で再起動になってしまうと、再取得しなくてはいけません。VPSを使わない場合は基本的にPCつけっぱなしという状態になります。

PCつけっぱなしかVPSを利用するか任意なので参考までに。コミュニティのメンバーでもあるピーマン君が書いてくれました。
- 設定③ -
まずは下記リンクよりTrading Viewの有料アカウントを作ります。

下記ファイルはTANBOT for MT4/TANBOT for Bybit専用のテンプレートになります。Pine エディタにコピペして編集しましょう。
テンプレートを使ってオリジナルアラートを作る場合、下記の記事も参考にしてみてはいかがでしょうか。
編集する箇所は以下の赤枠内です。アラート名とロジック、エントリーとクローズの条件です。

例)高値安値のブレイクアウト
Trading View側でアラートを設定します。ここではアラート名をtanbotとします。先ほど設定①の最後に取得したURLをコピーして /webhook を付け加え、Trading Viewアラート設定画面のwebhook欄にペーストします。

https://xxxxxxxxxxxxx.ngrok.io/webhook
以下のような設定になります。今回設定したメッセージ内のtanbotという部分はMT4のEA設定時に必要なので覚えておきましょう。これでTrading View側の設定は終わりです。

- 設定④ -
まずMT4を起動します。左上のファイルからデータフォルダをクリックし、下記画像の場所まで開きます。

設定①にてダウンロードしたファイル内のalert_exampleというファイルをExperts内にコピペします。

同じく設定①にてダウンロードしたファイル内のsocket-library-mt4-mt5というファイルをInclude内にコピペします。

MT4を再起動し、ツール内のオプションをクリックしDDLの使用を許可するにチェックを入れます。

続いて、表示内のナビゲーターをクリック。下記画像のようにエキスパートアドバイザ内にalert_exampleが表示されていますのでチャート上にドラッグしてください。

下記のような画面になりますので設定していきます。

全般のチェックボックスに以下の通りチェックを入れます。

続いてパラメーター入力の設定です。Magicは複数EAを動かす際に数字が重複しないように設定してください。AlertNameへ設定③の最後に設定したTrading Viewアラート名を入力します。ここではtanbotとします。下記二つの画像、赤い矢印の箇所です。


最後にツールバーの自動売買をオンにします。チャート右上にニコニコマークが出現したら設定④は終了です。


- 動作確認① -
テスト売買の方法は二つあります。まずはここまでの復習も兼ねて、Trading Viewのアラートからテストしてみましょう。以下はTrading Viewのテストアラートです。
実際にアラートを通知してみましょう。今回はテストなのでアラートは一回のみにしました。※テストはMT4側のロットを最小単位0.01にするか、デモ口座にて行ってください。

アラートが鳴りました。

続いてコマンドプロンプトを経由

MT4での買い注文が完了しました。

実際には注文までに1秒もかかりません。これでテストは完了して自動売買が可能になりました。
- 動作確認② -
Chrome拡張機能のTalend API Testerを使ってテストします。

APIテストページに飛んだ後、
上記の赤枠部分を入力してSendボタンを押すとサーバーにPOSTリクエストが飛び、注文が行えます。紫枠部分関して、アラートネーム,1と入力してください。今回のアラートネームはtanbotなのでtanbot,1となります。
- 終わりに -
以上になります!最後まで読んでいただきありがとうございます。設定が少し大変に見えますが意外と簡単です。ワンアラートなので、一度設定してしまえばTrading Viewのアラートの数だけMT4の銘柄にて自動売買が可能です。
今後も機能追加等していく予定です。下記DiscordグループではTANBOTの初回導入サポート+アラートやストラテジー開発・共有の場を提供しています。(TANBOTの導入サポートはコミュニティ参加note購入者のみとさせていただきます)