見出し画像

MagicNumberを指定し、すべてのオーダーをクローズする

int MagicNumber_bid = 1111; // bidマジックナンバー
int MagicNumber_ask = 1112; // askマジックナンバー

OnInit()

特になし

OnTick()

order_cancel(MagicNumber_bid); //MagicNumber_bidのオーダーをすべて削除
order_cancel(MagicNumber_ask); //MagicNumber_askのオーダーをすべて削除

position_remove(int Order_Mag_num)

//+------------------------------------------------------------------+
//| オーダー削除                                                      |
//+------------------------------------------------------------------+
void order_cancel(int Order_Mag_num)
  {
   for(int i = 0; i< OrdersTotal() ; i++)
     {
      //保有ポジションを一つ選択
      ulong posNumber = OrderGetTicket(i);
      ulong magic = OrderGetInteger(ORDER_MAGIC);  // ポジションのMagicNumber

      //選択したポジションの通貨が一致しているかをチェック
      if(OrderGetString(ORDER_SYMBOL) == _Symbol)
        {
         //選択したポジションのマジックナンバーが、引数と同じかどうかチェック
         if(magic == Order_Mag_num)
           {
            //注文待機を削除
            mytrade.OrderDelete(posNumber);
           }
        }
     }
  }




MQL5コード一覧はコチラ

https://note.com/noway_pway/n/na50e47a51645

この記事が気に入ったらサポートをしてみませんか?