Нарушен смысл кода.

19 апреля 2015, 12:04
MrEpif
0
93

Я написал такой код:

void OnTick()

  {

   if(Bars<100 || IsTradeAllowed()==false) return;

   if(OrderTotal(Symbol())==0) OpenCheck();//функция открытия ордеров

   else{

   OrderSelect(tiket,SELECT_BY_TICKET); //выбор ордера

   if (OrderType()==OP_SELL)//если продажа

   {

   if (((OrderStopLoss()-Bid))>ProfitFactor*Point)

   {

   OrderModify(tiket,OrderOpenPrice(),Ask+(ProfitFactor*Point),0,0);//модификация

   }

   }

   if (OrderType()==OP_BUY)//если покупка

   {

   if (((Ask-OrderStopLoss()))>ProfitFactor*Point)

   {

   OrderModify(tiket,OrderOpenPrice(),Bid-(ProfitFactor*Point),0,0);//модификация

   }

   } 

   } 

  }

   Смысл таков:Если ордеров нет проверяется возможность открытия, если ордера есть создается и модифицируется СтопЛосс.Это происходит так что если ордер прибыльный то СтопЛосс пододвигается ближе к рыночной цене если нет по остается прежним(ProfitFactor-размер СтопЛосса в пунктах).

Помогите! 

Поделитесь с друзьями: