Любительские советники на доработку

 
Предлагаю выкладывать свои работающие и не очень советники с описанием торговой идеи и алгоритмом действия для обсуждения и доработки. Зачастую создав робота, программисты не совсем довольны его результатом и нужна свежая идея для модернизации.
Одна голова хорошо, тысяча лучше)))
Файлы:
atoll.mq4  7 kb
 
Советник АTOLL. Хорошо показывает себя после 2008 года, дневные свечи, пара EURJPY. Работа такова: после закрытие медвежьей свечи, ждем поднятие цены до определённого уровня, откр. SELL, TP фиксированный, SL путем умножения тела предыдущей свечи на настраиваемое значение, фильтрация MA, RSI, так же сделка открывается только при нахождения цены в пределах тела предыдущей. Закрытие после открытия новой свечи или по SL, TP. Сделка BUY зеркальна. 
   Хотелось бы вставить функцию, одна свеча одна сделка.
   Модернезируем, пользуемся, делимся.
 
Стесняюсь спросить, а чем Code Base не подходит?
 
Iv-off:
   Хотелось бы вставить функцию, одна свеча одна сделка.

if ( iTime(Symbol(),PERIOD_H1,0)< LastorderTime  ) return(0);

Это для часовой свечи.

 
evillive:
Стесняюсь спросить, а чем Code Base не подходит?

Не стесняясь отвечаю, опыт месяц, первый форум за всю жизнь))) про Code Base понял!!!
 
paukas:

if ( iTime(Symbol(),PERIOD_H1,0)< LastorderTime  ) return(0);

Это для часовой свечи.

Говорили тебе, - не работай в Субботу. 
 
Образовалась новая проблема... На тестере все работает, при открытии новой свечи закрывается ордер и ожидается открытие нового, при реальной работе советника закрытие не происходит. В чем проблема, кто подскажет?
 
Не поможете написать советник. Есть ТЗ на 7 стр.
Идея - тройная фильтрация сигналов стохастика с помощью CCI и RSI. Работает отлично. Стопы можно и не ставить, т.к. цена за максимум свечи, на которой была открыта сделка, ни разу не уходила.
Если идея понравится, то посмотрите. Я по этой ТС торгую уже несколько месяцев. Только сигналы часто пропускаю, т.к. некогда постоянно сидеть у монитора.
Задача
Разработать на MQL4 для МТ4 советник, который открывает сделки или выдает сигнал на возможность ее открытия на экран монитора при одновременном выполнении условий, что быстрый стохастик пересекает медленный и значения индикатора CCI1 или CCI2 пересекают нулевую линию и значения индикатора RSI больше (меньше) заданной границы.
 
Iv-off:
Образовалась новая проблема... На тестере все работает, при открытии новой свечи закрывается ордер и ожидается открытие нового, при реальной работе советника закрытие не происходит. В чем проблема, кто подскажет?

может из-за этого

//--- Проверка открытия нового бара
 if(Volume[0]>1) return;


Почему бы другой способ (например из учебника) не использовать для проверки открытия нового бара? Я с объемами еще не работал, мало ли там что.

Вот пример https://forum.mql4.com/ru/51113

bool IsNewBar()
 {
  static int nBars = 0;
  if (nBars == 0) 
   {
    nBars = Bars;
    return(false);
   }
  if (nBars != Bars)
   {
    nBars = Bars;
    return(true);
   }
  return(false);
 }


 
Igor-san:

может из-за этого

//--- Проверка открытия нового бара
 if(Volume[0]>1) return;


Почему бы другой способ (например из учебника) не использовать для проверки открытия нового бара? Я с объемами еще не работал, мало ли там что.

Вот пример https://forum.mql4.com/ru/51113



 
Igor-san:

может из-за этого

//--- Проверка открытия нового бара
 if(Volume[0]>1) return;


Почему бы другой способ (например из учебника) не использовать для проверки открытия нового бара? Я с объемами еще не работал, мало ли там что.

Вот пример https://forum.mql4.com/ru/51113




Спасибо за идею! Проблема решена другим способом и улучшило работу советника. С помощью Hour() ставим время закрытия сделки, по оптимизации на 21 час примерно, и время открытия с 1 до 18. Сделка закрывается ближе к экстремума свечи.
Причина обращения: