trendvalue.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «trendvalue.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
TrendValue — пользовательский индикатор для MetaTrader 5, отображающий трендовые уровни на ценовом графике. Индикатор рассчитывает верхнюю и нижнюю линии на основе линий взвешенного скользящего среднего (по максимумам и минимумам цен) с добавлением или вычитанием смещения, рассчитанного на основе индикатора ATR.
Индикатор отображает четыре графика: две линии (верхняя и нижняя трендовые) и два набора стрелок, обозначающих точки смены тренда. Направление тренда определяется по соотношению цены закрытия с рассчитанными уровнями: при росте цены выше верхнего уровня индикатор показывает бычий тренд, при падении ниже нижнего — медвежий.
Параметры настройки включают период скользящих средних, чувствительность ATR-смещения, процентное горизонтальное смещение индикатора и смещение в барах. Индикатор рассчитывает данные с использованием встроенных функций MetaTrader 5 для ATR и скользящих средних.
Настройки программы
| Настройка | Описание |
|---|---|
| period | Период скользящих средних, используемых для расчёта верхней и нижней трендовых линий. |
| shiftPercent | Процентное горизонтальное смещение индикатора, применяемое при расчёте верхнего и нижнего уровней тренда. |
| ATRPeriod | Период индикатора ATR, используемого для определения волатильности и расчёта смещения уровней. |
| ATRSensitivity | Чувствительность смещения уровней, задаваемая множителем для значения ATR при расчёте верхнего и нижнего уровней. |
| Shift | Горизонтальное смещение индикатора в барах для всех отображаемых линий и стрелок. |
Поиск по коду файла
#property version "1.00"
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_plots 4
#property indicator_type1 DRAW_LINE
#property indicator_color1 Blue
#property indicator_style1 STYLE_DASHDOTDOT
#property indicator_width1 2
#property indicator_label1 "Upper TrendValue"
#property indicator_type2 DRAW_LINE
#property indicator_color2 MediumVioletRed
#property indicator_style2 STYLE_DASHDOTDOT
#property indicator_width2 2
#property indicator_label2 "Lower TrendValue"
#property indicator_type3 DRAW_ARROW
#property indicator_color3 DeepSkyBlue
#property indicator_width3 4
#property indicator_label3 "Buy TrendValue"
#property indicator_type4 DRAW_ARROW
#property indicator_color4 Red
#property indicator_width4 4
#property indicator_label4 "Sell TrendValue"
input int period=13; // Moving averages period
input double shiftPercent=0; // Horizontal shift of the indicator in percents
input int ATRPeriod=15; // ATR indicator period
input double ATRSensitivity=1.5; // ATR shift sensitivity
input int Shift=0; // Horizontal shift of the indicator in bars
double ExtMapBufferUp[];
double ExtMapBufferDown[];
double ExtMapBufferUp1[];
double ExtMapBufferDown1[];
int ATR_Handle,HMA_Handle,LMA_Handle;
int min_rates_total;
int OnInit()
{
// код доступен только после оплаты
}
ATR_Handle=iATR(NULL,0,ATRPeriod);
if(ATR_Handle==INVALID_HANDLE)
{
Print(" Failed to get handle of the ATR indicator");
return(1);
}
HMA_Handle=iMA(NULL,0,period,0,MODE_LWMA,PRICE_HIGH);
if(HMA_Handle==INVALID_HANDLE)
{
Print(" Failed to get handle of the HMA indicator");
return(1);
}
LMA_Handle=iMA(NULL,0,period,0,MODE_LWMA,PRICE_LOW);
if(LMA_Handle==INVALID_HANDLE)
{
Print(" Failed to get handle of the LMA indicator");
return(1);
}
min_rates_total=ATRPeriod+period;
SetIndexBuffer(0,ExtMapBufferUp,INDICATOR_DATA);
PlotIndexSetInteger(0,PLOT_SHIFT,Shift);
PlotIndexSetInteger(0,PLOT_DRAW_BEGIN,min_rates_total);
ArraySetAsSeries(ExtMapBufferUp,true);
PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,EMPTY_VALUE);
SetIndexBuffer(1,ExtMapBufferDown,INDICATOR_DATA);
PlotIndexSetInteger(1,PLOT_SHIFT,Shift);
PlotIndexSetInteger(1,PLOT_DRAW_BEGIN,min_rates_total);
ArraySetAsSeries(ExtMapBufferDown,true);
PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,EMPTY_VALUE);
SetIndexBuffer(2,ExtMapBufferUp1,INDICATOR_DATA);
PlotIndexSetInteger(2,PLOT_SHIFT,Shift);
PlotIndexSetInteger(2,PLOT_DRAW_BEGIN,min_rates_total);
ArraySetAsSeries(ExtMapBufferUp1,true);
PlotIndexSetDouble(2,PLOT_EMPTY_VALUE,EMPTY_VALUE);
PlotIndexSetInteger(2,PLOT_ARROW,117);
SetIndexBuffer(3,ExtMapBufferDown1,INDICATOR_DATA);
PlotIndexSetInteger(3,PLOT_SHIFT,Shift);
PlotIndexSetInteger(3,PLOT_DRAW_BEGIN,min_rates_total);
ArraySetAsSeries(ExtMapBufferDown1,true);
PlotIndexSetDouble(3,PLOT_EMPTY_VALUE,EMPTY_VALUE);
PlotIndexSetInteger(3,PLOT_ARROW,117);
string shortname;
StringConcatenate(shortname,"TrendValue(",period,", ",shiftPercent,", ",ATRPeriod,", ",ATRSensiПоказано первые 50% кода (символов: 5038)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.