Murray Math Levels several oktavs
- Индикаторы
- Vladyslav Goshkov
- Версия: 1.1
- Обновлено: 3 февраля 2022
- Активации: 5
Индикатор, рассчитывающий и выводящий на график уровни Мюррея.
Отличие от бесплатной версии:
Позволяет строить на одном чарте до 4-х октав включительно (ограничение связано с ограничением, накладываемым на количество буферов индикатора в МТ4), используя данные с разных таймфреймов, что позволяет оценить соотношение трендов и инвестиционных горизонтов разных порядков.
Выводит свои показания на исторических данных. Бесплатная версия, свободно распространяемая с вариациями разных авторов, на истории рисует показания, рассчитанные на текущем баре, что не позволяет использовать ее для корректного анализа движения цен в прошлом и затрудняет определение вероятного направления движения цены в текущем ценовом диапазоне. Есть версии, показывающие свои значения по истории, корректность которых мне неизвестна.
Рассчитанные значения доступны в буферах индикатора и могут быть получены с помощью функции iCustom():
- линия индикатора с индексом 0 содержит уровень 4/8, октавы, заданной величиной переменной Р0, которая выбирается на таймфрейме, заданном переменной BaseTF_P0 с критерием отбора, заданным переменной BaseMGTD_P0.
Обращение для получения значения этого уровня на нулевом баре: double p0_4_8 = iCustom(NULL,0,"ivgMMLevls",..перечень параметров..,0,0);
На предыдущем баре (номер N): double p0_4_8_prev = iCustom(NULL,0,"ivgMMLevls",..перечень параметров..,0,N); - линия индикатора с индексом 1 содержит шаг сетки, этой же октавы.
Обращение для получения значения этого уровня на нулевом баре: double p0_step = iCustom("ivgMMLevls",..перечень параметров..,1,0);
На предыдущем баре (номер N): double p0_step_prev = iCustom("ivgMMLevls",..перечень параметров..,1,N);
Аналогично для доступа к данным остальных октав:
- линия индикатора с индексом 2 - уровень 4/8, для октавы Р1
- линия индикатора с индексом 3 - шаг сетки, для октавы Р1
- линия индикатора с индексом 4 - уровень 4/8, для октавы Р2
- линия индикатора с индексом 5 - шаг сетки, для октавы Р2
- линия индикатора с индексом 6 - уровень 4/8, для октавы Р3
- линия индикатора с индексом 7 - шаг сетки, для октавы Р3
Это для желающих использовать данные уровни в экспертах.
Пример скрипта, получающего данные для октавы Р0 на нулевом баре:
input string s0="Latest Bar Number to culculate >= 0 "; input int StepBack = 0; input string s01="Culc Oktavs Count - max 4"; input int _pCNT = 4; input string s1="History Bars Count"; input int BarsCNT = 150; input string s2 = "Parameters group for configuring"; input string s20 = "Murray Math Diapazone new search algorithm"; input string s21 = "!!! If you are unsure, do not change these settings !"; input int P0 = 8; input int P1 = 16; input int P2 = 32; input int P3 = 128; input int BaseTF_P0 = 60; input int BaseTF_P1 = 60; input int BaseTF_P2 = 60; input int BaseTF_P3 = 60; input int BaseMGTD_P0 = 1; input int BaseMGTD_P1 = 1; input int BaseMGTD_P2 = 1; input int BaseMGTD_P3 = 1; input string s22 = "**** End Of Parameters group for configuring *** "; input string s3 = "Line Colors adjustment"; input color mml_clr_m_2_8 = White; // [-2]/8 input color mml_clr_m_1_8 = White; // [-1]/8 input color mml_clr_0_8 = Aqua; // [0]/8 input color mml_clr_1_8 = Yellow; // [1]/8 input color mml_clr_2_8 = Red; // [2]/8 input color mml_clr_3_8 = Green; // [3]/8 input color mml_clr_4_8 = Blue; // [4]/8 input color mml_clr_5_8 = Green; // [5]/8 input color mml_clr_6_8 = Red; // [6]/8 input color mml_clr_7_8 = Yellow; // [7]/8 input color mml_clr_8_8 = Aqua; // [8]/8 input color mml_clr_p_1_8 = White; // [+1]/8 input color mml_clr_p_2_8 = White; // [+2]/8 input string s4 = "Line thickness adjustment"; input int mml_wdth_m_2_8 = 2; // [-2]/8 input int mml_wdth_m_1_8 = 1; // [-1]/8 input int mml_wdth_0_8 = 2; // [0]/8 input int mml_wdth_1_8 = 1; // [1]/8 input int mml_wdth_2_8 = 1; // [2]/8 input int mml_wdth_3_8 = 1; // [3]/8 input int mml_wdth_4_8 = 2; // [4]/8 input int mml_wdth_5_8 = 1; // [5]/8 input int mml_wdth_6_8 = 1; // [6]/8 input int mml_wdth_7_8 = 1; // [7]/8 input int mml_wdth_8_8 = 2; // [8]/8 input int mml_wdth_p_1_8 = 1; // [+1]/8 input int mml_wdth_p_2_8 = 2; // [+2]/8 input string s5 = "Font adjustment"; input int dT = 7; input int fntSize = 7; input string s6 = "Latest Bar Marker adjustment"; input color MarkColor = Blue; input int MarkNumber = 217; int start() { double p0_4_8 = iCustom(NULL,0,"ivgMMLevls", s0,StepBack,s01,_pCNT,s1,BarsCNT, s2,s20,s21,P0,P1,P2,P3,BaseTF_P0,BaseTF_P1,BaseTF_P2,BaseTF_P3, BaseMGTD_P0,BaseMGTD_P1,BaseMGTD_P2,BaseMGTD_P3,s22, s3, mml_clr_m_2_8,mml_clr_m_1_8,mml_clr_0_8,mml_clr_1_8,mml_clr_2_8,mml_clr_3_8, mml_clr_4_8, mml_clr_5_8,mml_clr_6_8,mml_clr_7_8,mml_clr_8_8,mml_clr_p_1_8,mml_clr_p_2_8, s4, mml_wdth_m_2_8,mml_wdth_m_1_8,mml_wdth_0_8,mml_wdth_1_8,mml_wdth_2_8,mml_wdth_3_8, mml_wdth_4_8, mml_wdth_5_8,mml_wdth_6_8,mml_wdth_7_8,mml_wdth_8_8,mml_wdth_p_1_8,mml_wdth_p_2_8, s5,dT,fntSize,s6,MarkColor,MarkNumber, 0,0); double p0_step = iCustom(NULL,0,"ivgMMLevls", s0,StepBack,s01,_pCNT,s1,BarsCNT, s2,s20,s21,P0,P1,P2,P3,BaseTF_P0,BaseTF_P1,BaseTF_P2,BaseTF_P3, BaseMGTD_P0,BaseMGTD_P1,BaseMGTD_P2,BaseMGTD_P3,s22, s3, mml_clr_m_2_8,mml_clr_m_1_8,mml_clr_0_8,mml_clr_1_8,mml_clr_2_8,mml_clr_3_8, mml_clr_4_8, mml_clr_5_8,mml_clr_6_8,mml_clr_7_8,mml_clr_8_8,mml_clr_p_1_8,mml_clr_p_2_8, s4, mml_wdth_m_2_8,mml_wdth_m_1_8,mml_wdth_0_8,mml_wdth_1_8,mml_wdth_2_8,mml_wdth_3_8, mml_wdth_4_8, mml_wdth_5_8,mml_wdth_6_8,mml_wdth_7_8,mml_wdth_8_8,mml_wdth_p_1_8,mml_wdth_p_2_8, s5,dT,fntSize,s6,MarkColor,MarkNumber, 1,0); Print("p0_4_8 = ",DoubleToStr(p0_4_8)," | p0_step = ",DoubleToStr(p0_step)); return(0); }
Для облегчения работы индикатора количество баров по истории ограничено - параметр BarsCNT.
Для изучения поведения индикатора по истории в ручном режиме введен параметр сдвига StepBack, что позволяет указанное количество показаний индикатора по истории строить не только от текущего бара (с номером 0).
Внимание! В данной версии индикатора усовершенствован отбор диапазонов для построения октав.
Индикатор по умолчанию настроен с минимальными отличиями от базового алгоритма расчета для внутридневной торговли с построением уровней по часовому диапазону, что позволяет его корректно использовать для всех внутричасовых диапазонов. При необходимости использования индикатора на старших таймфремах будет автоматически выбран таймфрейм текущего чарта или же нужно задать желаемый таймфрейм, больший, чем таймфрейм текущего графика, вручную.
Изменяйте параметры, заданные по умолчанию только в том случае, если Вы уверены в своих действиях. Для большинства торговых стратегий параметры, установленные по умолчанию, будут оптимальными.