Решил озвучить информацию об интересном индикаторе Quantum. У индикатора всего один параметр для определения перекупленность или перепроданность рынка.
Сообщение: 2190
Зарегистрирован: 04.03.13
Откуда: Москва
Репутация:
3
Отправлено: 11.01.16 20:10. Заголовок: Версия QuMA_Channels..
Версия QuMA_ChannelsFIBO_min.mq4 урезана для вызова из советника, чтобы ускорить тестирование.
//+------------------------------------------------------------------+ //| MA Chanels.mq4 | //| ░njel░ | //| iamnotlinked | //| Quantum.mq4 | //+------------------------------------------------------------------+ //| Quantum.mq4 | //| Copyright й 2010, zznbrm | //| //+------------------------------------------------------------------+ //| 2012Jan27 mod for mer071898 //+------------------------------------------------------------------+ //| //| 10.12.2015 Genry : MA_Channels+Quantum = QuMA_ChannelsFIBO.mq4 //| 10.01.2016 Genry : Add the algorithm for finding extrema. //| The idea and code Deviat: Development Slim33 10/18/2014 //| 11.01.2016 Staxis: Increasing the speed indicator. //| 11.01.2016 Genry : MIN version to work with the advisor. //| It works faster than the standard version. //+------------------------------------------------------------------+
#property copyright "zznbrm+njel+Genry" #property link "notlinked"
//--------------------- MA extern int BarsCount = 500; extern int MAPeriod = 100; extern int MAMethod = MODE_SMA; extern int MAPrice = PRICE_CLOSE; extern int fontsize = 10;
//------------------------------------- double m = iMA(NULL,0,MAPeriod,0,MAMethod,MAPrice,i);
gadblUp3[ i] = 0.0; gadblDn3[ i] = 0.0;
switch ( FibSelect ) { case 1: FibMult = m -Inc0; break; // 23.6 case 2: FibMult = m -Inc3; break; // 38.2 case 3: FibMult = m -Inc1; break; // 50 case 4: FibMult = m -Inc2; break; // 61.8 case 5: FibMult = m -Inc4; break; // 78.6 case 6: FibMult = m -Inc5; break; // Gann 82.87 case 7: FibMult = m -Inc6; break; // 88.2 case 8: FibMult = m -Inc7; break; // 100.0
default: FibMult = m -Inc3; }
intLow3 = iLowest( Symbol(), Period(), MODE_LOW, eintDepth3, i );
if ( intLow3 == i ) { if (Low[ i] <= FibMult) gadblUp3[ i] = Low[ i]; }
switch ( FibSelect ) { case 1: FibMult = m +Inc0; break; // 23.6 case 2: FibMult = m +Inc3; break; // 38.2 case 3: FibMult = m +Inc1; break; // 50 case 4: FibMult = m +Inc2; break; // 61.8 case 5: FibMult = m +Inc4; break; // 78.6 case 6: FibMult = m +Inc5; break; // Gann 82.87 case 7: FibMult = m +Inc6; break; // 88.2 case 8: FibMult = m +Inc7; break; // 100.0
default: FibMult = m +Inc3; }
intHigh3 = iHighest( Symbol(), Period(), MODE_HIGH, eintDepth3, i );
if ( intHigh3 == i ) { if (High[ i] >= FibMult) gadblDn3[ i] = High[ i]; } } return(0); }
//+------------------------------------------------------------------+ //|Slim33 18.10.2014 //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ double Deviat(int bar) { int i; double val = 0, loDev = 0, hiDev = 0;
if( bar + BarsCount >= Bars - 1) return(0);
for (i = bar + BarsCount; i >= bar; i--) {
double m = iMA(NULL,0,MAPeriod,0,MAMethod,MAPrice,i);
Версия QuMA_ChannelsFIBO_min.mq4 урезана для вызова из советника, чтобы ускорить тестирование.
Соедините эту версию с предыдущей и получите оптимальный вариант. Вроде бы так, но надо будет еще проверить. А в советнике не стоит вызывать индикатор. Достаточно просто поставить в него функцию расчета текущих уровней. Она будет достаточно компактной и "легкой".
Вроде бы так, но надо будет еще проверить. А в советнике не стоит вызывать индикатор. Достаточно просто поставить в него функцию расчета текущих уровней. Она будет достаточно компактной и "легкой".
Предложения понятны, спасибо, Игорь! Эх, практики не хватает. Я еще хотел сделать из этого индикатора MTF-ный. Возможно это улучшит результат, если сигналы на вход и выход будут с разных ТФ.
Не будет ли слишком много линий? Для текущего и еще одного ТФ - 16 линий, для трех ТФ - 24 и т. д.
А не надо добавлять. Добавить параметр TF - если 0, то текущий, а если > текущего, то с него и данные для отрисовки. Проще загрузить 2 индикатора на один график, если надо.
Отправлено: 17.01.16 20:47. Заголовок: Genry пишет: А не н..
Genry пишет:
цитата:
А не надо добавлять. Добавить параметр TF - если 0, то текущий, а если > текущего, то с него и данные для отрисовки. Проще загрузить 2 индикатора на один график, если надо.
Genry пишет: цитата:А не надо добавлять. Добавить параметр TF - если 0, то текущий, а если > текущего, то с него и данные для отрисовки. Проще загрузить 2 индикатора на один график, если надо.
Обсуждая ускорение QuMaшки, мы с коллегой iew независимо совершили "открытие" - исправленная QuMaшка отлично повторяет Envelopes из стандартного набора МТ, которые при оптимизации должны работать быстрее любого пользовательского индикатора
Обсуждая ускорение QuMaшки, мы с коллегой iew независимо совершили "открытие" - исправленная QuMaшка отлично повторяет Envelopes из стандартного набора МТ, которые при оптимизации должны работать быстрее любого пользовательского индикатора .
Игорь, я использую такой подход удобство подбора уровней фибо или отклонения для енвелопес: назначение отрицательного индекса для стандартных значений Фибо. После этого в тестере можно задать параметры перебора уровней фибо: от -1 шаг -1 до -8 и он будет перебирать фиксированную сетку, а в остальных случаях - диапазон определенный трейдером.
double i_fibo_Level1 = i_fiboLevel1; // для удобства оптимизации и задания шага фибо double i_fibo_Level1_cl = i_fiboLevel1_cl; // для удобства оптимизации и задания шага фибо double i_fibo_Level1_v2 = i_fiboLevel1_v2; // для удобства оптимизации и задания шага фибо double i_fibo_Level1_v2_cl = i_fiboLevel1_v2_cl; // для удобства оптимизации и задания шага фибо
Сообщение: 2213
Зарегистрирован: 04.03.13
Откуда: Москва
Репутация:
3
Отправлено: 29.01.16 12:43. Заголовок: Перенес свои сообщен..
Перенес свои сообщения из ветки советника по Квантуму:
------------------------------------------------------------------------------------- ... у меня была идея сделать такой алгоритм скальпирования на тренде: 1. по аналогии с Фибо-сеткой строим ATR-сетку по такому принципу: 1ATR * (3.618 && 6.618 && 8.618, уровни настраиваются) получается канал с учетом волатильности (можно учитывать и фибо-уровени для надежности).
2. На сильном тренде если цена пробивает максимально удаленный ATR-уровень , например: 8.618 - по сигналам Квантума начинаем строить сетку. Сетку переводим в безубыток (закрытием части ордеров ) при развороте и достижении предыдущего уровня 6.618 и : 1. закрываем при достижении уровня 3.618 или 2. оставляем и тралим по уровням до обратного сигнала.
A теперь доказательство эффективности этого алгоритма на примере:
Это график тестера с 01 июня 2014 года по 28 января 2016 года. Сов прошел 20 месяцев начав с 1000$ возможно потому, что открывал и закрывал короткие сетки между уровнями 23 и 38 Фибо с одной стороны канала, а не у противоположного уровня.
На графике есть пару ступенек которые снесут депозит в 1000$ если начать торговлю в этот день, но в целом получилось красиво :). Доход в 5000$ за 20 месяцев - это 250 баксов в месяц, совсем немного, но ММ брался из расчета дальнего уровня, а так можно и побольше поставить.
Жаль на графике есть сливные участки, надо думать как из преодолевать, но может перевод в безубыток поможет или использовать SL. --------------------------------------------------------------------------------------------------------------------------- В первом примере ММ был: старт: 0.02 множители 1.05 и 1.1 Если взять январь 2016 с 11 числа по сегодня, т.е. пару недель старт тот-же 0.02 и множители 1.2. и 1.3, то данный подход скальпирования сеткой на одной стороне канала принесет 960$, риски будут выше, но не для этого января :d
1. При торговле волатильности использовал АТR-канал построенный от МА100 в обе стороны. Первоначальные уровни:
а) ATR x 8.618 (8.62) - дальний уровень, при его касании или пробитии начинаем строить сетку по сигналам Квантума. После касания ценой среднего уровня 6.62 на уровень 8.62 переносим SL - первый шаг трала.
б). АТR х 6.618 (6.62) - средний уровень, при касании его ценой - трал перемещается в безубыток на уровень 8.62. В теории, т.к. ордера открывались за уровнем 8.62 должны получить всю сетку в безубытке, но возможны варианты, когда часть ордеров останется еще в минусе.
в). АТR х 3.618 (3.62 :) ) - самый близкий к МА100 уровень, используется как сигнал для закрытия половины прибыли сетки (можно всей сетки), чтобы сделать Сейф.
г) МА100 при касании ценой уровня МА100 можем закрыть всю сетку или передвинуть трал и продолжать тралить по уровням ATR (и Фибо) до появления встречного сигнала Квантума.
ЗЫ: можно добавить еще один уровень в АТР (хотя он вроде уже есть в советнике) - за 8.62 для установки первоначального стопа.
Отправлено: 31.01.16 11:07. Заголовок: Genry пишет: по ана..
Genry пишет:
цитата:
по аналогии с Фибо-сеткой строим ATR-сетку по такому принципу: 1ATR * (3.618 && 6.618 && 8.618, уровни настраиваются) получается канал с учетом волатильности (можно учитывать и фибо-уровени для надежности).
То есть к МАшке откладываем в обе стороны значение ATR на предыдущем (или текущем?) баре, умноженное на соответствующий коэффициент?
Все даты в формате GMT
2 час. Хитов сегодня: 1
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет