MQL4プログラミング 第12回 AMTで簡単エントリー

バイナリーオプションのエントリーは煩雑?

バイナリーオプションでトレードしているかたは経験されていると思いますが、こんなお悩みはありませんか?
・MT4の画面で複数の通貨ペアを監視していて、いざエントリーチャンスが来たけれどハイローのエントリー画面への切り替えが面倒だ。焦ってしまいエントリーミスしてしまった!
・MT4の画面で複数の通貨ペアでサインツールを立ち上げていて、2つの通貨ペアでサインが出てた。惜しくて仕方ないけど1つだけしかエントリーできなかった。

これらのお悩みを解決する方法を考えました。それはAutoMultiTrader(AMT)というツールを利用する事です。
AMTは普通はバイナリーオプション自動売買ツールとして利用するのですが、私は上記お悩み解決のために手動エントリーツールとしても使っています。

普段のエントリー       
AMTを利用したエントリー       

バイナリーオプション取引会社(HighLow)のお試しはこちら(ハイロー紹介ページ)から

以上の説明を踏まえて、以降ではAMT連動のインジケーターの作成方法を解説します。
今回は自動売買ではなく手動で(キーボード操作による)エントリーをするのでプログラム自体はシンプルです。

AMT連動インジケーターの作成(手動エントリーの場合)

それではソースコードを示します。

// prg-0012.mq4
#property copyright "Copyright 2024, smile-invest-blog.com"
#property link      "https://www.smile-invest-blog.com/prg-0012/"
#property strict
#property indicator_chart_window

//+------------------------------------------------------------------+
//| initialization function
//+------------------------------------------------------------------+
int init() {
//---- indicators
//----
   return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| deinitialization function
//+------------------------------------------------------------------+
int deinit() {
   return(INIT_SUCCEEDED);
}

//+------------------------------------------------------------------+
//| OnChartEvent function
//+------------------------------------------------------------------+
void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam)
  {
//---

//キー押下
   if(id == CHARTEVENT_KEYDOWN) {
      if (lparam == 38) { // ↑キー
         entry(1, 0);
      }
      if (lparam == 40) { // ↓キー
         entry(0, 0);
      }
   }
}

//+------------------------------------------------------------------+
//| start function
//+------------------------------------------------------------------+
int start() {
   return(0);
}

//+------------------------------------------------------------------+
//| entry function                         |
//| 引数1 1:Highエントリー、0:Lowエントリー、
//| 引数2 false:手動エントリー、true:自動エントリー、
//+------------------------------------------------------------------+
void entry(int high_low, bool isAuto) {
   string strEntryCmd = " AMT";

/*
   アラートコマンドリスト(AMT側で設定すること)
   AMT1MA
   AMT1MM
   AMT5MA
   AMT5MM
   AMT15MA
   AMT15MM
   AMT60MA
   AMT60MM
   (AMTの個別アラート設定でそれぞれにHigh, Low の文字列を設定する)
*/
   if (Period() == 1) {
      strEntryCmd += "1M";
   }
   if (Period() == 5) {
      strEntryCmd += "5M";
   }
   if (Period() == 15) {
      strEntryCmd += "15M";
   }
   if (Period() == 60) {
      strEntryCmd += "1H";
   }

   if (isAuto) {
      strEntryCmd += "A";
   }
   else {
      strEntryCmd += "M";
   }

   if (high_low == 1) {
      strEntryCmd += " ***HIGH***";
   }
   else {
      strEntryCmd += " ***LOW***";
   }
   
   Alert(Symbol(), strEntryCmd);

}

35行目、38行目:今回は上矢印キー(↑)押下でHighエントリー、下矢印キー(↓)押下でLowエントリーとします。
OnChartEvent関数については「MQL4プログラミング 第10回 バックグラウンドの色を変える(2)」の投稿を参照ください。

55行目:entry関数 この関数では引数1、引数2、それと現在のチャート足時間によってアラートで表示する文字列を作成します。
例えば entry(0, false)でチャートは1分足の場合は表示する文字列は「 AMT1MM ***LOW***」の文字列を作成してアラート関数に渡します。アラート関数は97行目で「Symbol()」を第一引数で受け取っているので最終的に(チャートが米ドル円の場合)「USDJPY AMT1MM ***LOW***」と表示します。

AMT側の設定

AMT側ではMT4からのアラート文字列を受け取って実際にエントリー処理をおこなう設定が必要です。
AMTは2つのバージョンがありますが、今回はV2(新バージョン)で説明します。(旧バージョン V1 はこちらから)

AMTのダウンロード

AMTのダウンロードは「AMT V2 無料ダウンロード」からおこないます。

AMTのインストール

AMTのダウンロードが終わったら画面右側の「ヘルプ・ガイド」をクリックするとインストールや設定についての説明があるので、それに沿って進めてください。

AMT連動インジケーターに合わせたアラート設定について

ここでは今回作成したインジケーターに合わせたアラート設定について解説します。
下図のように
①「ハイロー」をクリック
②「アラート設定」をクリック

すると、下図の画面が表示されます。

ここで、赤枠の「追加」をクリックします。
すると次の画面が表示されます。

上記の「アラート設定」画面で
①設定名:「AMT1MA」とします。
②取引オプション:「Turbo 1分」を選択します。
③Highサイン:「AMT1MA ***HIGH***」とします。(「」の中の文字列をコピペするのが確実です)
④Lowサイン:「AMT1MA ***LOW***」とします。(「」の中の文字列をコピペするのが確実です)
⑤「戻る」をクリックします。
すると下記画面が表示されるので「保存」をクリックします。

上記アラートの設定が終わったら残りの設定もここで済ませましょう。以下表にまとめます。

AMTアラート設定一覧

設定名取引オプションHighサインLowサイン説明
AMT1MATurbo 1分AMT1MA ***HIGH***AMT1MA ***LOW***手動1分用
AMT1MMTurbo 1分AMT1MM ***HIGH***AMT1MM ***LOW***自動1分用
AMT5MAHighLow 5分AMT1MA ***HIGH***AMT5MA ***LOW***手動5分用
AMT5MMHighLow 5分AMT1MM ***HIGH***AMT5MM ***LOW***自動5分用
AMT15MAHighLow 15分AMT15MA ***HIGH***AMT15MA ***LOW***手動15分用
AMT15MMHighLow 15分AMT15MM ***HIGH***AMT15MM ***LOW***自動15分用
AMT60MAHighLow 1時間AMT60MA ***HIGH***AMT60MA ***LOW***手動1時間用
AMT60MMHighLow 1時間AMT60MM ***HIGH***AMT60MM ***LOW***自動1時間用

インジケーターとAMTの連動確認

最後に今回作成したインジケーターとAMTの連動確認をおこないます。
ここで重要な注意点!
連動確認は必ずデモ口座でおこなってください。

下図のような1分足チャートでAUDJPYを選択状態でHighエントリー(↑キー押下)をおこなった場合、

MT4アラートでは
①「AUDJPY」で通貨ペア確認
②「AMT1MM」で1分足確認
③「***HIGH***」でHighエントリー確認

ATM側アラートでは
④ATM側でエントリーが正しく受け付けたかを確認

上記①~④が確認できればインジケーターとAMTの連動確認はOKです。

AMT側の最初の設定が面倒かもですが、ここの設定は1回実施すれば良いだけなので、頑張ってみましょう!

デモトレードでも結果記録が残せる

ハイローでは本口座のトレードは記録が残りますがデモトレードは残せません。
AMTでは、無料で使えるデモトレードでも詳細なトレード記録が残せて、しかもCSVファイル出力もできるのでいろんなサインツールの検証や裁量手法の検証に使えて便利です。

いろんな条件の検索機能もあります。各通貨ペア別の勝率を出すもの簡単です。

今回はハイローの画面を経由する事なくMT4チャートから直接トレードできるインジケーターとAMT(AutoMultiTrader)のセットで便利な使い方を紹介しました。

今回の関連情報

・AMT(AutoMultiTrader)の無料ダウンロードは「AMT V2 ダウンロードサイト」、「AMT V1 ダウンロードサイト」から。
・ハイローのデモ口座は「ハイロー紹介ページ」から。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA