OrderMagicNumber()

 OrderMagicNumber()関数は、選択した注文のマジックナンバー(=各EAを識別する整数値)を取得するために使用します。

 OrderMagicNumber()関数は、以下のように定義されています。

int OrderMagicNumber();

 OrderMagicNumber()関数には引数がないので、()内には何も記述しません。

戻り値

 選択した注文のマジックナンバーを返します。

注意点

 OrderMagicNumber()関数を使用するためには、あらかじめOrderSelect()関数で注文を選択していなければなりません。

具体例

 複数のEA(「EA_1」と「EA_2」とします。)を運用している場合に、特定のEA(EA_1)によって保有することになったポジションのみを決済したい場合は、以下のように記述します。


#property strict

input Magic_1 = 1111; //EA_1のマジックナンバー
……
void OnTick()
{
 ……
 for(int i = OrdersTotal() - 1; i >= 0; i--)
    {
     if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == true)
       {
        if(OrderMagicNumber() == Magic_1)
          {
           if(決済条件)
             {
              bool Closed = OrderClose(OrderTicket(),OrderLots(),
                                       OrderClosePrice(),10,clrNONE);
             }
          }
       }
    }
 ……
}

関連ツール

『EAつくーる』
MQL言語の学習ができ、裁量トレーダーもEA開発が可能になる!
MQL言語の学習ができ、裁量トレーダーもEA開発が可能になる!?|?fx-on.com
fx-onで購入する

 MT4で作動するEAをプログラミング不要で作成するためのツールです。

特 徴

  • インジケーターを組み合わせることで、EAを簡単に作ることができます。
    インジケーターは、MT4に標準で装備されているもののほか、市販のものも使用することができます
  • EAはmq4ファイルで作成されるので、mqlの学習にも役立ちます。
  • 作成したEAの著作権は本ツールを使用してEAを作成した本人に属し、販売なども自由です
  • シンプルなロジックのEAから高度なオプション付きのEAまで、簡単に作成することができます。