Элитные показатели :) - страница 205

 

Во время работы над "сглаженным обратным преобразованием Фишера" я упомянул о происхождении радужной wma, но тогда не заметил одного: что у нас (пользователей metatrader) до сих пор нет Радужного осциллятора, который является прямым потомком Радужных скользящих средних (и Радужных графиков).

_________________________

Итак, вот он. Прилагаю оригинальный документ от Mel Widner, где он описывает оба осциллятора и их использование. Единственное отклонение - в цветах: я использовал обычные цвета для трендов вверх и вниз (что перевернуто по сравнению с тем, что Виднер использовал в своей статье). В остальном все сделано на 100% так, как описал автор.

 

Захватывающий материал, ребята!

Хотя я и не программист, я кодирую некоторые советники с помощью программного обеспечения для построения стратегий и успешно использую индикатор "наклона", который я включил ниже. Когда индикатор синий, он покупает, а когда красный - продает, используя в качестве руководства следующее:

"Сначала посмотрите на то, как индикатор рисует, вы видите линию, которая меняет цвет. В MT4 вы делаете это с помощью двух линий, так что одна линия окрашена (сигнал), а другая не окрашена (нет сигнала).

Что мы обычно делаем, так это выводим значение сигнала. В этом индикаторе мы добавили следующее:

Print( " utrend=",Uptrend[x], " dtrend=",Dntrend[x]);

Получилось следующее: - момент изменения сигналов

10:43:15 наклон EURUSD,M1: utrend=2147483647 dtrend=1.2258

10:43:15 наклон EURUSD,M1: utrend=1.2258 dtrend=2147483647

Большое число - это то, как MT4 определяет пустоту или отсутствие сигнала в данном случае. 2147483647 = EMPTY_VALUE или нет сигнала.

Таким образом, utrend=2147483647 dtrend=1.2258 означает наличие нисходящего тренда и

utrend=1.2258 dtrend=2147483647 означает наличие восходящего тренда.

Режимы определяются следующим образом

SetIndexBuffer(0, Uptrend);

SetIndexBuffer(1, Dntrend);

Uptrend - это режим 0, Dntrend - режим 1.

Попробуйте создать стратегию и в TA сравнить сигналы. ind < 1000 означает сигнал, так как ind всегда находится около цены, а когда сигнала нет, он переходит к 2147483647".

Я хотел бы заменить индикатор наклона индикаторами trendstrength и fast digital filter, но я думаю, что они должны быть определены так же, как и индикатор наклона. - синим цветом для покупки и красным для продажи.

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

Большое спасибо!

P.S. Я включил trendstrength и jurik версии в зависимости от того, что легче изменить/лучше, как указано выше.

P.P.S. Для справки, индикатор swingline bars было очень легко подключить к программе и получить правильные покупки и продажи.

 

Newtrader100

Вот "цифровые фильтры - на графике", адаптированные для использования из советника

___________________________

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

Второе - почему я не добавил цвета: это самое простое и самое трудное для объяснения. Самое простое - это то, что вам вообще не нужны цвета. Все, что вам нужно знать, это то, вверх или вниз идет тренд, и изменился он или нет. Цвета нужны для визуальной торговли и визуального контроля (люди - визуальные существа, поэтому им нужно видеть как можно больше - даже добавление цветов относится к этой категории), но для советников цвета ничего не значат и часто становятся причиной проблем.

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

как
  1. перерисовывающие индикаторы (одним из которых является slope), так и не перерисовывающие индикаторы должны установить значение двух точек (баров), чтобы нарисовать начало линии. Это означает, что один бар имеет ложный сигнал и он размещается на один бар раньше факта (визуально это не так, но для компьютера это так)
  2. Неперерисовывающие индикаторы нуждаются в 2 буферах для одного дополнительного цвета - это усложняет их "чтение" и все еще пункт 1 относится к ним и делает их непригодными для советника
Итак, это выглядит так (satl в этом случае):

Все, что вам нужно, это простой индикатор "двоичного значения": этот устанавливает значение буфера рисования в 1, когда тренд вверх и -1, когда тренд вниз. В нем оставлена опция множественного таймфрейма, хотя для советника это тоже не нужно (просто используйте второй параметр iCustom() для нужного таймфрейма). В случае с этим советником все, что вам нужно сделать, это что-то вроде следующего:
double current = iCustom( ... , 0 , 0)

double previous = iCustom( ... , 0 , 1)

if (current != previous)

if (current==1)

buy ...

else sell ...
Вот и все. Это заставит советника работать эффективно, предотвратит ошибки кодирования (чем проще код, тем сложнее сделать ошибку) и предотвратит ложные сигналы, так как логика его работы проста, как она только может быть ___________________________
.

Итак, в заключение, часто при адаптации какого-либо индикатора для советника его, вероятно, необходимо упростить перед использованием в советнике. В случае с цифровыми фильтрами вы могли бы реализовать логику поиска тренда в самом советнике, но это было бы ненужным добавлением кода в советник (помните: просто, просто, просто...), когда работа может быть легко сделана в самом индикаторе (проверьте различия и вы обнаружите, что по существу только 3 важные строки кода добавлены в версию "для советника" - остальное удалено. Если бы я убрал из нее код для многих таймфреймов, было бы еще проще).

с уважением

Младен

 

mladen,

Я, наверное, редактировал это сообщение 4 раза, пока наконец не добился идеальной работы.

Чистая простота этого смотрела мне в лицо все это время, но нет, я должен был усложнить все для себя.

Сделал перерыв, перезагрузил старый мозг, и пришел ответ "держи это просто и глупо".

Предварительно, это здорово!!!

P.S. У меня есть подозрения, что у вас есть доступ к инопланетным технологиям.

Большое спасибо и всего доброго!

 

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

 

Модификация индикатора Weekly Pivot

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

Range = high - low;

H4 = close + (Range * 1.1/2.0);

H3 = close + (Range * 1.1/4.0);

H2 = close + (Range * 1.1/6.0);

H1 = close + (Range * 1.1/12.0);

L1 = close - (Range * 1.1/12.0);

L2 = close - (Range * 1.1/6.0);

L3 = close - (Range * 1.1/4.0);

L4 = close - (Range * 1.1/2.0);

Большое спасибо всем, кто может помочь.

Бен

Файлы:
 
mladen:
И еще один цифровой фильтр, но этот "особенный".

__________________________

Он особенный в том смысле, что затрагивает суть всего того, что мы делаем и ищем. Было, есть и будет много дискуссий о том, существуют ли вообще циклы на рынке. Есть аргументы против и есть аргументы за. У обеих сторон есть свои слабые и сильные стороны. Эти индикаторы могут заставить вас как минимум задуматься.

Он начинается вот так:
И это не выглядит чем-то особенным ... пока вы не поместите его на график.
В качестве пояснения: "нециклическая линия" рассчитывается как среднее значение циклов, а не наоборот. Сначала циклы находятся из цен, а затем, в результате найденных циклов, рассчитывается среднее значение (простая скользящая средняя). Как видите, она довольно хорошо отражает саму цену, так что, если ничего другого нет, нам стоит еще раз задуматься над вопросом "есть ли циклы на рынке или их нет".

__________________________

Ну, а теперь всем приятных выходных.

Большое спасибо, Младен!!!

Сделал jurik версии, для тех, кто заинтересован!

 

Радужный осциллятор EA

Привет, Младен,

Я делаю советник с Rainbow Oscillator, который вы выложили.

Вот кусок кода :

double RHUP1 = iCustom(NULL,0, "Rainbow oscillator","Текущий таймфрейм ",3,10,PRICE_CLOSE,true,2,1);//Радуга вверх раньше

double RHUP2 = iCustom(NULL,0, "Rainbow oscillator", "Current time frame",3,10,PRICE_CLOSE,true,2,0);//Радуга вверх сейчас

double RHDN1 = iCustom(NULL,0, "Rainbow oscillator", "Current time frame",3,10,PRICE_CLOSE,true,3,1);//Радуга вниз раньше

double RHDN2 = iCustom(NULL,0, "Rainbow oscillator", "Current time frame",3,10,PRICE_CLOSE,true,3,0);//Радуга вниз сейчас

bool buyRain;

bool sellRain;

if (RHUP10) buyRain = true;

if (RHDN1>0 && RHDN2 <0) sellRain = true;

Когда я тестирую советника, он показывает индикатор в конце, что означает, что он, очевидно, хорошо называется, но он делает только короткие сделки. Никаких лонгов вообще...

Подскажите, пожалуйста, как я могу это изменить?

Заранее спасибо,

С уважением,

 

cci

Привет, Младен,

Глядя в код Cci кажется, что он должен перерисовывать, интересно, если у вас есть шанс, не могли бы вы проверить это! Я пытался сделать nrp версию, но это выбивает меня из колеи.

С наилучшими пожеланиями и заранее спасибо

инструменты

Файлы:
cci.mq4  4 kb
 

cci

Спасибо Mladen и да, код напомнил мне некоторые из этих декомпилированных файлов !