← К каталогу
Исходный код · ID 1329

supertrend nrp mtf (new format).mq5

Похожие материалы по тегам

#__slope direction line.mq5MQL5 / MetaTrader 5 · 1 общих теговrange breakout @meowforex1.pineTradingView · 1 общих тегов#1.mtf_collider_h4_close_13_v18bar.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit3.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit2.mq4MQL4 / MetaTrader 4 · 1 общих тегов!mth_fasttmaline_edit.mq4MQL4 / MetaTrader 4 · 1 общих тегов
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Данный индикатор реализует алгоритм SuperTrend для платформы MetaTrader 5. Он рассчитывает направление тренда на основе средней истинной амплитуды (ATR) и отображает линию тренда вместе с точками разворота на графике цен.

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

Визуально трендовая линия отрисовывается одним цветом, а точки разворотов — двумя дополнительными линиями-маркерами. Индикатор использует три отображаемых буфера и дополнительные внутренние буферы для расчётов.

Настройки программы

НастройкаОписание
TimeFrame Выбирает таймфрейм для расчёта SuperTrend в мультитайм-режиме. По умолчанию используется текущий таймфрейм графика.
period Период расчёта средней истинной амплитуды (ATR), используемой в формуле SuperTrend.
multiplier Множитель, определяющий ширину канала SuperTrend. Умножается на значение ATR для расчёта верхней и нижней границ трендового канала.
Interpolate Включает или отключает интерполяцию значений при работе в мультитайм-режиме. При активном значении промежуточные бары заполняются между барами указанного таймфрейма для сглаживания отображения тренда.
Получить полный код

Поиск по коду файла

#property version   "1.00"

#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 clrLimeGreen
#property indicator_color2 clrOrange
#property indicator_color3 clrOrange
#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 2
#property strict

extern ENUM_TIMEFRAMES TimeFrame   = PERIOD_CURRENT;  // Time frame
extern int             period      = 10;              // Super trend period
extern double          multiplier  = 4.0;             // Super trend multiplier
extern bool            Interpolate = true;            // Interpolate in multi time frame mode?

double Trend[],TrendDoA[],TrendDoB[],Direction[],Up[],Dn[],count[];
string indicatorFileName;
#define _mtfCall(_buff,_y) iCustom(NULL,TimeFrame,indicatorFileName,PERIOD_CURRENT,period,multiplier,_buff,_y)

int OnInit()
{
      // код доступен только после оплаты
   }
void OnDeinit(const int reason) { }

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double   &open[],
                const double   &high[],
                const double   &low[],
                const double   &close[],
                const long     &tick_volume[],
                const long     &volume[],
                const int &spread[])
{
      // код доступен только после оплаты
   }
   int i,counted_bars = prev_calculated;
      if(counted_bars < 0) return(-1);
      if(counted_bars > 0) counted_bars--;
         int limit=fmin(rates_total-counted_bars,rates_total-1); count[0] = limit;
         if (TimeFrame!=_Period)
         {
            limit = (int)MathMax(limit,MathMin(rates_total-1,_mtfCall(6,0)*TimeFrame/_Period));
            if (Direction[limit] == -1) CleanPoint(limit,TrendDoA,TrendDoB);
            for (i=limit;i>=0 && !_StopFlag; i--)
            {
               int y = iBarShift(NULL,TimeFrame,Time[i]);
                  Trend[i]     = _mtfCall(0,y);
                  Direction[i] = _mtfCall(3,y);
                  Up[i]        = _mtfCall(4,y);
                  Dn[i]        = _mtfCall(5,y);
                  TrendDoA[i]  = EMPTY_VALUE;
                  TrendDoB[i]

Показано первые 50% кода (символов: 3682)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
368,20₽ ≈ $4.50