Манипуляция открытыми ордерами

 

Народ, подскажите, задача сделать трейлинг стоп, т.е. если цена доходит определенного уровня, то необходимо двигать стоп лос либо тейк профит в нашу пользу!

Код прилагаю, меня смущает правельно ли я раставил Bid и Ask, туплю, подскажите!

   //---- Манипуляции открытыми ордерами
   for (count = 0; count < OrTotalCount; count++)
   {
      //----
      if (OrType[count] == OP_BUY)
      {
         //---- Stop Loss
         if (((Bid - OrStopLoss[count]) / Point) >= INT_TRAILING_STOP)
         {
            OrStopLoss[count] = GetPrStopLoss(INT_STOPLOSS, OrType[count]);
            OrderModify(OrTicket[count], OrOpenPrice[count], OrStopLoss[count], OrTakeProfit[count], 0);
         }
         //---- Take Profit
         if (((OrTakeProfit[count] - Ask) / Point) <= INT_TRAILING_PROFIT)
         {
            OrTakeProfit[count] = GetPrTakeProf(INT_TAKEPROFIT, OrType[count]);
            OrderModify(OrTicket[count], OrOpenPrice[count], OrStopLoss[count], OrTakeProfit[count], 0);
         }
      }
      else if (OrType[count] == OP_SELL)
      {
         //---- Stop Loss
         if (((OrStopLoss[count] - Ask) / Point) >= INT_TRAILING_STOP)
         {
            OrStopLoss[count] = GetPrStopLoss(INT_STOPLOSS, OrType[count]);
            OrderModify(OrTicket[count], OrOpenPrice[count], OrStopLoss[count], OrTakeProfit[count], 0);
         }
         //---- Take Profit
         if (((Bid - OrTakeProfit[count]) / Point) <= INT_TRAILING_PROFIT)
         {
            OrTakeProfit[count] = GetPrTakeProf(INT_TAKEPROFIT, OrType[count]);
            OrderModify(OrTicket[count], OrOpenPrice[count], OrStopLoss[count], OrTakeProfit[count], 0);
         }
      }
   }
 
А какой смысл тейк профит то двигать? Он ведь станет недосягаемым, следовательно бесполезным.
 
Roger:
А какой смысл тейк профит то двигать? Он ведь станет недосягаемым, следовательно бесполезным.


Двигать стоит в том случае, если вдруг пропанет интернет, или вырубят свет, вот тогда он станет возможно досягаемым!!!
 
Просто можно вместо 100 пунктов взять чуть больше, если тренд продолжиться!
 
festival:

меня смущает правельно ли я раставил Bid и Ask, туплю, подскажите!

Неправильно. Для уже открытого Buy все цены должны отсчитываться от Bid, а для открытого Sell - от Ask.

При открытии рыночных ордеров, если требуется отсчитать некоторое количество пунктов от открытия ордера, то применяются цены Ask и Bid соответственно.

 
Scriptong:

Неправильно. Для уже открытого Buy все цены должны отсчитываться от Bid, а для открытого Sell - от Ask.

При открытии рыночных ордеров, если требуется отсчитать некоторое количество пунктов от открытия ордера, то применяются цены Ask и Bid соответственно.



Можете поправить в коде для наглядности?
Причина обращения: