Стратегия на базе индикатора "ZigZag" - "Last ZZ50" - страница 3

 

Last ZZ50.mq5 version   "1.001"

Решил сначала проверить, как ведёт себя индикатор при появлении нового бара или после разрыва связи: на каждом тике получаю количество рассчитанных данных для нашего индикатора, если это количество отличается от количества на прошлом тике - выводится принт: 

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   static int  bars_calculated      = 0;
   int         prev_bars_calculated = bars_calculated;
   bars_calculated=BarsCalculated(handle_iCustom);
   if(bars_calculated!=prev_bars_calculated)
      Print(iTime(0),", BarsCalculated: ",bars_calculated,", prev: ",prev_bars_calculated);
//---

  }

А теперь два журнала (вкладка "Эксперты" и вкладка "Журнал")

Эксперты:

2017.07.17 08:03:32.161 Last ZZ50 (USDJPY,M1)   2017.07.17 08:03:00, BarsCalculated: 373610, prev: 100009
2017.07.17 08:04:05.250 Last ZZ50 (USDJPY,M1)   2017.07.17 08:04:00, BarsCalculated: 373611, prev: 373610
2017.07.17 08:05:45.575 Last ZZ50 (USDJPY,M1)   2017.07.17 08:05:00, BarsCalculated: 100000, prev: 373611
2017.07.17 08:06:08.768 Last ZZ50 (USDJPY,M1)   2017.07.17 08:06:00, BarsCalculated: 100001, prev: 100000
2017.07.17 08:07:06.192 Last ZZ50 (USDJPY,M1)   2017.07.17 08:07:00, BarsCalculated: 100002, prev: 100001
2017.07.17 08:07:29.676 Last ZZ50 (USDJPY,M1)   2017.07.17 08:07:00, BarsCalculated: 100002, prev: 0
2017.07.17 08:08:01.653 Last ZZ50 (USDJPY,M1)   2017.07.17 08:08:00, BarsCalculated: 100003, prev: 100002
2017.07.17 08:09:01.827 Last ZZ50 (USDJPY,M1)   2017.07.17 08:09:00, BarsCalculated: 100004, prev: 0
2017.07.17 08:10:00.283 Last ZZ50 (USDJPY,M1)   2017.07.17 08:10:00, BarsCalculated: 100005, prev: 100004
2017.07.17 08:11:02.493 Last ZZ50 (USDJPY,M1)   2017.07.17 08:11:00, BarsCalculated: 100006, prev: 100005

Журнал:

2017.07.17 08:04:47.227 Network '6121033': scanning network for access points
2017.07.17 08:05:23.297 Network '6121033': connection to MetaQuotes-Demo lost
2017.07.17 08:05:34.000 Network '6121033': authorized on MetaQuotes-Demo through Access Point EU 2 (ping: 48.01 ms)
2017.07.17 08:05:34.001 Network '6121033': previous successful authorization performed from 178.165.123.77 on 2017.07.17 07:50:17
2017.07.17 08:05:34.105 Network '6121033': terminal synchronized with MetaQuotes Software Corp.
2017.07.17 08:05:34.105 Network '6121033': trading has been enabled - hedging mode
2017.07.17 08:07:28.881 Experts expert Last ZZ50 (USDJPY,M1) removed
2017.07.17 08:07:28.915 Experts expert Last ZZ50 (USDJPY,M1) loaded successfully
2017.07.17 08:08:53.494 Experts expert Last ZZ50 (USDJPY,M1) removed
2017.07.17 08:08:53.527 Experts expert Last ZZ50 (USDJPY,M1) loaded successfully


Как видно количество рассчитанных баров меняется.

Файлы:
Last_ZZ50.mq5  10 kb
 

Last ZZ50.mq5 version   "1.002"

Новое: добавляем индикатор используемый в расчётах на график - для визуализации (дальше уже будет искать точки "A", "B" и "C" и на этих точках рисовать вертикальные линии - опять таки для визуального контроля кода).


Файлы:
Last_ZZ50.mq5  11 kb
 

Last ZZ50.mq5 version   "1.003"

Ищет вершины "A", "B" и "C". Проводит через эти вершины вертикальные линии.

Поиск вершин выполнен методом "получения за раз значению с одного бара".

Last ZZ50 version   "1.003"

Файлы:
Last_ZZ50.mq5  23 kb
 
Vladimir Karputov:

Last ZZ50.mq5 version   "1.003"

Ищет вершины "A", "B" и "C". Проводит через эти вершины вертикальные линии.

Поиск вершин выполнен методом "получения за раз значению с одного бара".


Уже что-то)

 

Владимир, продолжение будет, или на этом окончим =) 

 
Vitaly Muzichenko:

Владимир, продолжение будет, или на этом окончим =) 


Завтра будет описание - уже с выставлением отложенных ордеров.

 

Вот обнаружил четыре формации точек "A", "B" и "C" - нужно разобраться, как в каждом конкретном случае выставлять отложенные ордера (точнее их тип: Buy*** или Sell***):

Рисунок 1 и 2 и Рисунок 3 и 4


 
Vladimir Karputov:

Вот обнаружил четыре формации точек "A", "B" и "C" - нужно разобраться, как в каждом конкретном случае выставлять отложенные ордера (точнее их тип: Buy*** или Sell***):

Ставим и тащим всегда по середине луча:

Отработанные:

Красным SellStop, синим BuyStop

На одном луче - один ордер, если на данном луче ордер сработал, то больше на нём не ставим

 
Vitaly Muzichenko:

Ставим и тащим всегда по середине луча:

Отработанные:

Красным SellStop, синим BuyStop

На одном луче - один ордер, если на данном луче ордер сработал, то больше на нём не ставим


"Отработанные" - это не всегда так, ведь советник может встать на график в любой момент. Поэтому прошу ещё раз пересмотреть рис. 3 и рис. 4 в плане: советник только стал на график и тут такая картина...

 
Vladimir Karputov:

"Отработанные" - это не всегда так, ведь советник может встать на график в любой момент. Поэтому прошу ещё раз пересмотреть рис. 3 и рис. 4 в плане: советник только стал на график и тут такая картина...

Если пробит центр луча, то луч считается отработанным 

Чтоб не было проблем после перезапуска, нужно сохранять в глобальную переменную терминала точки последних лучей, и работать по ним.

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