【MQL4勉強プログラミング】EAで選択した注文に設定した損切りの価格を取得する方法!

ザフナーラボブログ

OrderStopLoss()関数は、選択した注文に設定した損切りの価格を取得するために使用します。

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

double OrderStopLoss();

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

戻り値

選択した注文に設定した損切り価格を返します。

注意点

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

  • OrderSelect()関数の詳細については「こちら」を参照してください。
  • 選択した注文に設定した利益確定価格を取得したい場合は「こちら」を参照してください。

具体例

選択した注文に損切り価格が設定されていなかったら、損切り価格を設定したい場合は、以下のように記述します。


void OnTick()
{
  ……
  for(int i = OrdersTotal() - 1; i >= 0; i--)
     {
       if(OrderSelct(i,SELECT_BY_POS,MODE_TRADES) == true)
         {
           if(OrderStopLoss() == 0)
             {
               bool Modified = OrderModify(OrderTicket(),OrderOpenPrice(),110.500,
                                           OrderTakeProfit(),0,clrNONE);
             }
         }
     }
  ……
}