Скачать MetaTrader 5

Индикаторы: Hodrick-Prescott Channel

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Знаете ли вы, что в MQL5 появилась обработка событий?
Automated-Trading
Админ
99472
Automated-Trading 2016.02.04 11:15 

Hodrick-Prescott Channel:

Индикатор рисует ценовой канал, используя Hodrick-Prescott Filter. Этот канал является переработанной на MQL4 и дополненной версией канала для MQL5.

GBPUSD.eM1.png

Автор: Alexey Volchanskiy

Anatoly Garmatyuk
1678
Anatoly Garmatyuk 2016.02.04 19:24  
как раз то что искал, спасибо
Alexey Volchanskiy
16675
Alexey Volchanskiy 2016.02.05 01:25  
Anatoly Garmatyuk:
как раз то что искал, спасибо

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

    void CollectData(ENUM_TIMEFRAMES &tfArr[], int shift = 4, int InpHPPeriodFast = 21, int InpHPPeriodSlow = 100)
    {
        int tfSize = ArraySize(tfArr);
        string fltName = "vhpchannel_03";
        for(int nTF = 0; nTF < tfSize; nTF++)
        {
            m_HP[nTF]           = iCustom(m_symbol, tfArr[nTF], fltName,  InpHPPeriodFast, InpHPPeriodSlow, 0, 0);
            m_HPSlow[nTF]       = iCustom(m_symbol, tfArr[nTF], fltName,  InpHPPeriodFast, InpHPPeriodSlow, 1, 0);
            m_Dev1[nTF]         = iCustom(m_symbol, tfArr[nTF], fltName,  InpHPPeriodFast, InpHPPeriodSlow, 2, 0);
            m_Dev2[nTF]         = iCustom(m_symbol, tfArr[nTF], fltName,  InpHPPeriodFast, InpHPPeriodSlow, 3, 0);
            
            m_HPShift[nTF]       = iCustom(m_symbol, tfArr[nTF], fltName,  InpHPPeriodFast, InpHPPeriodSlow, 0, shift);
            m_HPSlowShift[nTF]   = iCustom(m_symbol, tfArr[nTF], fltName,  InpHPPeriodFast, InpHPPeriodSlow, 1, shift);
            m_Dev1Shift[nTF]     = iCustom(m_symbol, tfArr[nTF], fltName,  InpHPPeriodFast, InpHPPeriodSlow, 2, shift);
            m_Dev2Shift[nTF]     = iCustom(m_symbol, tfArr[nTF], fltName,  InpHPPeriodFast, InpHPPeriodSlow, 3, shift);
        }
        //Print("m_HP[0]=", m_HP[0], "   m_HP[1]=", m_HP[1]);
    }
Alexandr Saprykin
6439
Alexandr Saprykin 2016.02.05 14:55  
То что надо, спасибо.
MikeZv
473
MikeZv 2016.02.05 15:48  
Automated-Trading:

Hodrick-Prescott Channel:

Автор: Alexey Volchanskiy

А это не то же самое ?
https://www.mql5.com/ru/code/191
Hodrick-Prescott Channel
Hodrick-Prescott Channel
  • голосов: 19
  • 2010.09.22
  • Victor
  • www.mql5.com
Индикатор рисует ценовой канал, используя Hodrick-Prescott Filter.
Alexey Volchanskiy
16675
Alexey Volchanskiy 2016.02.05 22:00  
Mike:
А это не то же самое ?
https://www.mql5.com/ru/code/191

Да, но там для пятерки. Реальный автор Victor указан на странице индикатора в кодобазе, вы бы хоть посмотрели.

Реальный автор: Victor

Краткое описание канала 

Я перенес его на четверку, хотя там работы на 5 минут. Но ведь не было для четверки? Не было, теперь есть.

Плюс добавил рисование хвоста, убрал ошибку отрисовки метки при вызове из советника и добавил показ спреда. 

СанСаныч Фоменко
6135
СанСаныч Фоменко 2016.02.06 08:12  
Alexey Volchanskiy:

Да, но там для пятерки. Реальный автор Victor указан на странице индикатора в кодобазе, вы бы хоть посмотрели.

Реальный автор: Victor

Краткое описание канала 

Я перенес его на четверку, хотя там работы на 5 минут. Но ведь не было для четверки? Не было, теперь есть.

Плюс добавил рисование хвоста, убрал ошибку отрисовки метки при вызове из советника и добавил показ спреда. 

1. Из входных параметров исчезла лябда. Почему?

2. Когда широко пользовал НР. Но специфически. Переделал индикатор следующим образом. В буфер заносил только последний рассчитанный бар (для советника нужен был только последний). В результате индикатор перестал перерисовывать и можно было увидеть график, по которому торгуешь. Самое удивительное, что перерисовывающий график совпадал с не перерисовывающимся при примерном соотношении лямбд 1:100.

ПС.

Как Вам вообще мысль преобразования перерисовывающихся индикаторов? 

Alexey Volchanskiy
16675
Alexey Volchanskiy 2016.02.06 08:56  
СанСаныч Фоменко:

1. Из входных параметров исчезла лябда. Почему?

2. Когда широко пользовал НР. Но специфически. Переделал индикатор следующим образом. В буфер заносил только последний рассчитанный бар (для советника нужен был только последний). В результате индикатор перестал перерисовывать и можно было увидеть график, по которому торгуешь. Самое удивительное, что перерисовывающий график совпадал с не перерисовывающимся при примерном соотношении лямбд 1:100.

ПС.

Как Вам вообще мысль преобразования перерисовывающихся индикаторов? 

1. Какая входная лямбда? Вот оригинал https://www.mql5.com/ru/code/191

2. Мне нужно последние 10-15 баров, но оставил по умолчанию больше

Преобразования во что и как? Я сам их разрабатываю по мере сил 

Hodrick-Prescott Channel
Hodrick-Prescott Channel
  • голосов: 19
  • 2010.09.22
  • Victor
  • www.mql5.com
Индикатор рисует ценовой канал, используя Hodrick-Prescott Filter.
СанСаныч Фоменко
6135
СанСаныч Фоменко 2016.02.06 20:10  
Alexey Volchanskiy:

1. Какая входная лямбда? Вот оригинал https://www.mql5.com/ru/code/191

2. Мне нужно последние 10-15 баров, но оставил по умолчанию больше

Преобразования во что и как? Я сам их разрабатываю по мере сил 

1. Это самопал, решающий конкретные практические задачи. Оригинальный и очень широко применяемый в экономике фильтр НР имеет параметр "лябда"

2.  Берем перерисовывающий индикатор, как у Вас. Это означает, что последние 15-20 баров перерисовываются, так как Вы рисуете каждый раз все вновь рассчитанные бары. Это полностью соответствует алгоритму НР как и всем другим перерисовывающимся индикаторам.

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

Yury Reshetov
13460
Yury Reshetov 2016.02.06 20:28  
СанСаныч Фоменко:

1. Это самопал, решающий конкретные практические задачи. Оригинальный и очень широко применяемый в экономике фильтр НР имеет параметр "лябда"

2.  Берем перерисовывающий индикатор, как у Вас. Это означает, что последние 15-20 баров перерисовываются, так как Вы рисуете каждый раз все вновь рассчитанные бары. Это полностью соответствует алгоритму НР как и всем другим перерисовывающимся индикаторам.

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

Гораздо проще завести ещё один буфер куда будут записываться показания до перерисовки. По крайней мере, потом, сравнив разницу, можно будет оценить потенциальные риски от того, что рисует индюк и каков будет результат, если по нему торговать в реальном времени.
Alexey Volchanskiy
16675
Alexey Volchanskiy 2016.02.06 21:29  
Yury Reshetov:
Гораздо проще завести ещё один буфер куда будут записываться показания до перерисовки. По крайней мере, потом, сравнив разницу, можно будет оценить потенциальные риски от того, что рисует индюк и каков будет результат, если по нему торговать в реальном времени.
Тоже логично, попробую сделать. 
12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий