Помогите с экспертом для iCustom индикатора. - страница 2

 
Vinin писал(а) >>

В первоначальном варианте индикатор на каждом тике пересчитвал всю историю.

Сейчас он пересчитывает необходимый минимум.

Для корректности работы желательно было бы проверять сигнал и на первом баре, не только на нулевом.

действительно. сильно тормозил терминал.

 

Моя окончательная правка. Стрелочки заменил на точки чтобы незаслоняло свечи. И сигналы рисуются на Open.

Советник открыл кучу сделок на покупку и не закрыл их и в конце эта куча позиций (50) на покупку закрылась маржинколом.

Нужно чтобы он закрывал открытые позиции на противоположном сигнале и одновременно открывал новую позицию.

Файлы:
 
L-user писал(а) >>

Моя окончательная правка. Стрелочки заменил на точки чтобы незаслоняло свечи. И сигналы рисуются на Open.

Советник открыл кучу сделок на покупку и не закрыл их и в конце эта куча позиций (50) на покупку закрылась маржинколом.

Нужно чтобы он закрывал открытые позиции на противоположном сигнале и одновременно открывал новую позицию.

Посмотри этого советника

 

Исправил советника

Файлы:
 
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
   int ticketBuy,ticketSell, i=Bars; 
        
//открытие покупки
    if (iCustom(NULL,0,"jealousy_levels_v2",1,1)>0)
    {
     ticketBuy=OrderSend(Symbol(),OP_BUY,LOT,Ask,0,SL,TP,"Buy order#",111,0,Red);
     
     if(ticketBuy<0)
       {
        Print("OrderSend failed with error #",GetLastError());
        return(0);
       }
    } 
// закрытие покупки   
     if (????????????????????????????????????????????????) // какое здесь должно быть условие?
    { 
    OrderCloseBy(111,222);// закрытие покупки противоположной позицией
    }
//---------------------------------------------------------------------------------   
//открытие продажи
    if (iCustom(NULL,0,"jealousy_levels_v2",0,1)>0)
    {
     ticketSell=OrderSend(Symbol(),OP_SELL,LOT,Bid,0,SL,TP,"Sell order#",222,0,Blue);
     
     if(ticketSell<0)
       {
        Print("OrderSend failed with error #",GetLastError());
        return(0);
       }
    }
// закрытие покупки 
      if (?????????????????????????????????????????) // какое здесь должно быть условие?
     { 
     OrderCloseBy(222,111);// закрытие продажи противоположной позицией
     }

   return(0);
  }
//+------------------------------------------------------------------+

Мой советник очень хорошо открывает позиции и на покупку и на продажу. Но он не закрывает эти позиции. Позиции просто накапливаются.

Какое должно быть условие чтобы выполнился OrderCloseBy?

Vinin, Ваш советник работает только по стоп лос и тейк профит.

Файлы:
tets02_1.mq4  3 kb
 
L-user писал(а) >>

Мой советник очень хорошо открывает позиции и на покупку и на продажу. Но он не закрывает эти позиции. Позиции просто накапливаются.

Какое должно быть условие чтобы выполнился OrderCloseBy?

Vinin, Ваш советник работает только по стоп лос и тейк профит.

Нашел ошибку у себя. Вчера просто устал сильно.

Попробуй поставить стопы и тейки равные нулю.

И все увидишь.

Файлы:
 
Vinin писал(а) >>

Нашел ошибку у себя. Вчера просто устал сильно.

Попробуй поставить стопы и тейки равные нулю.

И все увидишь.

Проверил. Спасибо.

Еще туда надо добавить один штрих. Принцип системы в том что цена возвращается к уровням. Сделайте так чтобы убыточные позиции НЕ закрывались с минусом, а только на противоположном сигнале и только с плюсом.

 
L-user писал(а) >>

Проверил. Спасибо.

Еще туда надо добавить один штрих. Принцип системы в том что цена возвращается к уровням. Сделайте так чтобы убыточные позиции НЕ закрывались с минусом, а только на противоположном сигнале и только с плюсом.

Достаточно поставить стопы нулевые и будет счастье

 

Улучшил сам индикатор. Добавил сигналы торможения роста и торможения падения цены это там где цена еще не развернулась и сильно отскакивает.

Сигналы положил в теже буфера.

Файлы:
 
Vinin писал(а) >>

Достаточно поставить стопы нулевые и будет счастье

Стоп лосс и тейк профит у меня равны нулю и так. Я про то что если позиция убыточная, то ее нельзя ни в коем случае закрывать, а дождаться пока будет профитный противоположный сигнал. Цена всегда возвращается к этим уровням, вопрос времени.

Или Вы про какие стопы нулевые?

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