Помогаем советнику определить своё местоположение и принять правильное решение - страница 2

 
Sergey Savinkin:

Спасибо. Будем изучать завтра, а то меня уже в сон рубит.

 
Aleksey Vyazmikin:

Посмотрите канал Дончиана. Описанная технология применяется мной, только делю на 10 зон и период не в 1000, а поменьше....

Кроме того, вхожу именно на покупку и продажу на границах - это стратегия черепах, она трендовая.

ок. Спасибо за инфу. Решение уже где-то близко, а главное цель ясна))

 
geratdc_:

Всё уже придумано, я понял. Велосипеды всё изобретаю. А какие подводные рифы там есть? ЧТо делать если на графике инструмента нет и 10 баров? Какой шаг для iHighest() и iLowest() указывать? У меня этот блекджек просто спотыкается. Покупает на максимумах и продаёт на минимумах. И привет...

Это сказки какие-то теоретические. Есть реальный пример? И как вы собираетесь торговать на инструменте, по которому нет котировок? )))

Вообще мысль анализа по барам мне кажется ложной. Вот, посмотрите на https://www.mql5.com/ru/code/14737 , в описании ссылка на MQL5 - версию

Я работаю с его немного улучшенной версией. Сейчас разрабатываю канал на тиках, а не барах.

Hodrick-Prescott Channel
Hodrick-Prescott Channel
  • голосов: 19
  • 2016.02.04
  • Alexey Volchanskiy
  • www.mql5.com
Этот канал является переработанной на MQL4 и дополненной версией канала для MQL5. Сначала вычисляются отфильтрованные значения цен Close. Затем они фильтруются с большим периодом. В результате получаются два массива: HP и HPSlow. На следующем шаге вычисляется стандартное отклонение HP относительно HPSlow и строится канал. Индикатор выводит...
 

Применил в коде, но не заработало:


При розыске ценовых экстремумов за 1000 баров, советник видит что ранее цена была ещё выше и позволяет покупать, но текущая ситуация меняет рынок - он идёт вниз и советник набирает убытки.


При розыске экстремумов за 100 баров, советник вообще попадает в абсурдную ситуацию - он находит экстремумы, которые таковыми не являются и переворачивает тип 3 ордера с правильного направления на покупку - в продажу (как мы  с ним договаривались), но цена продолжает расти и советник снова получает убыток.


Получается что это опять надо настраивать параметры функций iHighest и iLowest по истории, а на реале советник продолжит спотыкаться. 

Система GEOPRICE Позиционирования советника не работает. Надо что-то придумывать другое.


Третий ордер на покупку. Цена больше не пойдёт вверх, а уходит вниз... за StopOutом))

 
geratdc_:

При розыске ценовых экстремумов за 1000 баров, советник видит что ранее цена была ещё выше и позволяет покупать, но текущая ситуация меняет рынок - он идёт вниз и советник набирает убытки.

При розыске экстремумов за 100 баров, советник вообще попадает в абсурдную ситуацию - он находит экстремумы, которые таковыми не являются и переворачивает тип 3 ордера с правильного направления на покупку - в продажу (как мы  с ним договаривались), но цена продолжает расти и советник снова получает убыток.

Не хочу быть навязчивым, но это и лечат предложенные мною ранее фракталы. Первую ситуацию фильтрует то, что берутся БЛИЖАЙШИЕ фракталы, сильно старые большие цены игнорятся. А фракталы могут быть на разных таймфреймах (D1, Н4, Н3 и т.д.), в зависимости от того, на каком работаем мы. В вторая ситуация - вообще не возможна. Фрактал не нарисуется на краю экстремума, ка это может быть с концом массива баров.

 
geratdc_:

Применил в коде, но не заработало:


При розыске ценовых экстремумов за 1000 баров, советник видит что ранее цена была ещё выше и позволяет покупать, но текущая ситуация меняет рынок - он идёт вниз и советник набирает убытки.


При розыске экстремумов за 100 баров, советник вообще попадает в абсурдную ситуацию - он находит экстремумы, которые таковыми не являются и переворачивает тип 3 ордера с правильного направления на покупку - в продажу (как мы  с ним договаривались), но цена продолжает расти и советник снова получает убыток.


Получается что это опять надо настраивать параметры функций iHighest и iLowest по истории, а на реале советник продолжит спотыкаться. 

Система GEOPRICE Позиционирования советника не работает. Надо что-то придумывать другое.


Третий ордер на покупку. Цена больше не пойдёт вверх, а уходит вниз... за StopOutом))

При поиске ценовых экстремумов, 

думаю что так будет правильней

         int HighIndex = iHighest(_Symbol,0,MODE_CLOSE,1000,1);  // может лучше MODE_HIGH
         int LowIndex = iLowest(_Symbol,0,MODE_CLOSE,1000,1);    // а здесь MODE_LOW
         
         double HighPrice = High[HighIndex];
         double LowPrice = Low[LowIndex];
 
Есть такой интересный индикатор  Уровни Мюррея
 

iHighest

Возвращает индекс наибольшего найденного значения (смещение относительно текущего бара) соответствующего графика. 

int  iHighest(
   string           symbol,          // символ
   int              timeframe,       // период
   int              type,            // идентификатор таймсерии
   int              count,           // число элементов
   int              start            // индекс
  );

...

start=0

[in]  Индекс (смещение относительно текущего бара) начального бара, с которого начинается поиск наибольшего значения. Отрицательные значения игнорируются и заменяются нулевым значением.

Возвращаемое значение

Индекс наибольшего найденного значения (смещение относительно текущего бара) соответствующего графика или -1 в случае ошибки. Для получения дополнительной информации об ошибке необходимо вызвать функцию GetLastError().

Что такое индекс? Это возвращается МАХ цена или тот индекс-параметр start из набора параметров iHighest() ???

 
Alekseu Fedotov:

При поиске ценовых экстремумов, 

думаю что так будет правильней

Алексей, я кажись понял. Мы возвращаем не цену, а индекс. А потом нужна дополнительная обработка, да? как вы указывали в примере? А я туплю, думаю что эти хаесты и лоесты возвращают цену.

 
geratdc_:

Алексей, я кажись понял. Мы возвращаем не цену, а индекс. А потом нужна дополнительная обработка, да? как вы указывали в примере? А я туплю, думаю что эти хаесты и лоесты возвращают цену.

Да !

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