0
Мне намного проще сделать гридер по ТЗ. На то чтобы только хоть немного разобраться в коде уйдет как минимум часа 2-3. За это время я соберу по заданию.
avatar

AM2

  • 22 мая 2015, 09:37
0
Сейчас берется среднее от цены открытия нескольких ордеров и на все навешивается тейк
avatar

AM2

  • 21 мая 2015, 20:50
0
Из за них советник может работать некорректно
avatar

AM2

  • 21 мая 2015, 20:47
0
Возможно из за предупреждений ошибки были. Поправил но на демо не могу протестировать т.к. индюки просит еше: www.opentraders.ru/downloads/743/
avatar

AM2

  • 21 мая 2015, 16:23
0
Устроит функция которая уменьшает общий тейк на определенное значение с каждым открытым ордером?
Т.е. у нас есть 3 позиции с шагом 50п. Был общий тейк 550 уменьшаем на 2 значения шага 100п и стал 450п.
avatar

AM2

  • 21 мая 2015, 14:47
0
В настройках ввел параметр BarsCount. Это сдвиг всех линий на указанное количество баров назад: www.opentraders.ru/downloads/742/
avatar

AM2

  • 21 мая 2015, 13:43
0
Значит для открытых позиций выставляеи один общий фиксированный тейк?
avatar

AM2

  • 21 мая 2015, 12:01
0
Устроит если будет строить линии на указанное в настройках количество баров назад?

avatar

AM2

  • 21 мая 2015, 11:40
0
А сейчас?

//+------------------------------------------------------------------+
void BU()
  {
   for(int i=0; i<OrdersTotal(); i++)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderType()==OP_BUY)
           {
            if(OrderOpenPrice()<=(Bid-(BULevel+20)*Point) && OrderOpenPrice()>OrderStopLoss())
              {
               bool m=OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()+20*Point,OrderTakeProfit(),0,Green);
              }
           }

         if(OrderType()==OP_SELL)
           {
            if(OrderOpenPrice()>=(Ask+(BULevel+20)*Point) && OrderOpenPrice()<OrderStopLoss())
              {
               m=OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()-20*Point,OrderTakeProfit(),0,Green);
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+  
avatar

AM2

  • 21 мая 2015, 10:40
0
Поправил предупреждения 44 штуки *shock* 
Тейк уменьшается на величину ProfitDelta пунктов начиная со второго отложенного ордера: www.opentraders.ru/downloads/741/

avatar

AM2

  • 21 мая 2015, 09:50
0
Так примерно:

//+------------------------------------------------------------------+
void BU()
  {
   for(int i=0; i<OrdersTotal(); i++)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderType()==OP_BUY)
           {
            if(OrderOpenPrice()<=(Bid-(BULevel+20)*Point) && OrderOpenPrice()>OrderStopLoss())
              {
               bool m=OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,Green);
              }
           }

         if(OrderType()==OP_SELL)
           {
            if(OrderOpenPrice()>=(Ask+(BULevel+20)*Point) && OrderOpenPrice()<OrderStopLoss())
              {
               m=OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,Green);
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+  
avatar

AM2

  • 21 мая 2015, 08:13
0
Нарисуйте на скрине как надо?
avatar

AM2

  • 20 мая 2015, 13:46
0
Через сколько часов ордер сам удалится
avatar

AM2

  • 20 мая 2015, 13:20
0
В функции DelOrder() уберите комменты // тогда закроет :) 
avatar

AM2

  • 19 мая 2015, 21:42