Индикаторы: AutoGannAutoTrend

 

AutoGannAutoTrend:

Индикатор строит ценовой канал, уровни Фибоначчи и веер Ганна на последних вершинах Зигзага.

Рис.1. Индикатор AutoGannAutoTrend

Автор: Nikolay Kositsin

 

Отличный индикатор. Внес некоторые изменения для версии, которую я использую, а именно: веер Ганна и фиб-ретрейсмент для текущего и предыдущего колебаний, а также добавление фиб-дуг и таймконов


 

Так что, попробовав, похоже, что в коде есть ошибка.

Наивное использование времени таймфрейма зигзага (не знаю, что означает "// Òàéìôðåéì Çèãçàãà äëÿ ðàñ÷åòà èíäèêàòîðà") заставляет индикатор рисовать линии Ганна и тому подобное с неправильной начальной и конечной точки при просмотре в более низком таймфрейме. Так, например, при использовании дневного ZigZag линии Ганна будут начинаться с начала дня, даже если ценовой максимум/минус пришелся на другое время суток. Следующий блок сниппетов устраняет эту проблему:

...
          if(UpSign[bar])
           {
            swing_value[found]=UpSign[bar];

            swing_date[found]=TIME[bar];

              {
               MqlRates rates[];
               int copied=CopyRates(Symbol(),Period(),swing_date[found],swing_date[found]+PeriodSeconds(Timeframe),rates);
               if(copied<=0)
                  Print("Error copying price data ",GetLastError());
               for(int i=0; i<copied; i++)
                  if(rates[i].high==swing_value[found])
                    {
                     swing_date[found]=rates[i].time;
                     break;
                    }

              }

            found++;

...

И, конечно, аналогичный сниппет для минимумов свинга, проверяющий, равна ли ставка[i].low значению.