Трелинг стоп(Тейлинг со стоплосса)

 

Всем привет! Есть трейлинг, работает отлично,но он трейлит с цены открытия, а как сделать, чтобы он трейлил со стоплосса и прия этом работали параметры Тарйлинг степ и стоп! Спасибо!)

extern int    TrailingStop=10;
extern int    TrailingStep=8;
//+------------------------------------------------------------------+
//+-----------------------TrailingStop---------------------------------+
for( int l = OrdersTotal()-1; l >=0 ; l-- ) //перебор всех открытых торговых позиций
   {double ordsl = 0;
    if (OrderSelect(l, SELECT_BY_POS ) == true)
    {if(OrderSymbol()==Symbol() && (MagicB!=0 && OrderMagicNumber()==Magic) && OrderType()<=1)
    {if(OrderType()==OP_BUY)
    {if(Bid-Point*(TrailingStop+TrailingStep) > OrderOpenPrice())
    {if(Bid-Point*(TrailingStop+TrailingStep) > OrderStopLoss() || (OrderStopLoss()==0))
    {ordsl=NormalizeDouble(Bid-Point*TrailingStop,digits);}}}
         else
         {if(Ask+Point*(TrailingStop+TrailingStep) < OrderOpenPrice())
         {if(Ask+Point*(TrailingStop+TrailingStep) < OrderStopLoss() || OrderStopLoss()==0)
         {ordsl=NormalizeDouble(Ask+Point*TrailingStop,digits);}}}
         if(ordsl!=OrderStopLoss() && ordsl!=0)
         {int  tps = OrderModify(OrderTicket(),OrderOpenPrice(),ordsl,OrderTakeProfit(),0);
         Print ("TrailingStop"," - ",OrderOpenPrice(),"-->" ,ordsl);}}}}


 

 

Исключите строки 

if(Bid-Point*(TrailingStop+TrailingStep) > OrderOpenPrice())

 if(Ask+Point*(TrailingStop+TrailingStep) < OrderOpenPrice())

Причина обращения: