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

stepma pdf nmc 3.142 + arrows.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 общих тегов
Вы автор или правообладатель?

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

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

О программе

Это пользовательский индикатор для MetaTrader 4, рассчитывающий скользящую среднюю со ступенчатым изменением и весовой функцией на основе нормального распределения. Индикатор отображает результат расчёта в виде линии на графике и может показывать стрелки при смене направления тренда. Поддерживается выбор нескольких вариантов ценовых источников, масштабирование по ATR, а также настройка уведомлений через всплывающие окна, push-уведомления, электронную почту и звуковые сигналы.

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

НастройкаОписание
First or second price list (below) (PriceFirstList) Первая или вторая ценовая группа — Переключатель между использованием первой ценовой группы (High/Low) или второй (задаётся через MaPriceSecondList).
MaPriceFirstList Режим цены первой группы — Выбор варианта расчётной цены для первой группы: High/Low, Low/High, Close/Open и другие варианты, включая цены Хайкин Аши.
MaPriceSecondList Режим цены второй группы — Выбор варианта расчётной цены для второй группы: Close, Open, High, Low, Median, Typical, Weighted и другие.
Pdfma Length (PdfMaLength) Длина PDF-МА — Длина периода сглаживания, используемая при расчёте взвешенного среднего с весами на основе нормального распределения.
Sensivity Factor (Sensitivity) Чувствительность — Множитель чувствительности, влияющий на размер шага ступенчатой линии.
Constant Step Size (StepSize) Размер шага — Базовый размер постоянного шага ступенчатой линии.
Pdfma variance (Variance) Дисперсия PDF — Параметр дисперсии нормального распределения, задающий форму весовой функции.
Pdfma mean (Mean) Среднее PDF — Параметр среднего значения нормального распределения, используемый при расчёте весов.
StepMaPrice Цена для StepMA — Выбор ценового источника, на основе которого рассчитывается ступенчатая линия.
ATRScaling Масштабирование по ATR — Включает динамическое масштабирование размера шага на основе среднего истинного диапазона.
LineWidth Ширина линии — Толщина линии индикатора на графике.
Shift Сдвиг — Горизонтальный сдвиг отображения индикатора в барах.
alertsOn Включить оповещения — Общий переключатель для отправки уведомлений при смене тренда.
alertsOnCurrent Оповещения по текущему бару — Определяет, проверять смену тренда на текущем баре (true) или на предыдущем (false).
alertsMessage Оповещение в окне — Включает вывод текстового сообщения в окно алертов при смене тренда.
alertsNotification Push-уведомление — Включает отправку push-уведомления на мобильное устройство при смене тренда.
alertsSound Звуковой сигнал — Включает воспроизведение звукового файла при смене тренда.
alertsEmail Email-уведомление — Включает отправку электронного письма при смене тренда.
ShowArrows Показать стрелки — Включает отображение стрелок вверх и вниз при смене направления тренда.
arrowSize Размер стрелок — Размер отображаемых стрелок на графике.
uparrowCode Код стрелки вверх — Код символа стрелки вверх из библиотеки символов MetaTrader.
dnarrowCode Код стрелки вниз — Код символа стрелки вниз из библиотеки символов MetaTrader.
uparrowGap Отступ стрелки вверх — Вертикальный отступ стрелки вверх от линии индикатора в пунктах.
dnarrowGap Отступ стрелки вниз — Вертикальный отступ стрелки вниз от линии индикатора в пунктах.
Получить полный код

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

#property indicator_chart_window
#property indicator_buffers 5
#property indicator_color1  LimeGreen
#property indicator_color2  Orange
#property indicator_color3  Orange
#property indicator_color4  DodgerBlue
#property indicator_color5  Magenta

enum enPModes
{
   pr_hl,      // High/low
   pr_lh,      // Low/high
   pr_co,      // Close/open
   pr_oc,      // Open/close
   pr_hahl,    // Heiken ashi high/low
   pr_halh,    // Heiken ashi low/high
   pr_haco,    // Heiken ashi close/open
   pr_haoc     // Heiken ashi open/close
};

enum enPrices
{
   pr_close,      // Close
   pr_open,       // Open
   pr_high,       // High
   pr_low,        // Low
   pr_median,     // Median
   pr_typical,    // Typical
   pr_weighted,   // Weighted
   pr_average,    // Average (high+low+open+close)/4
   pr_medianb,    // Average median body (open+close)/2
   pr_tbiased,    // Trend biased price
   pr_tbiased2,   // Trend biased (extreme) price
   pr_haclose,    // Heiken ashi close
   pr_haopen,     // Heiken ashi open
   pr_hahigh,     // Heiken ashi high
   pr_halow,      // Heiken ashi low
   pr_hamedian,   // Heiken ashi median
   pr_hatypical,  // Heiken ashi typical
   pr_haweighted, // Heiken ashi weighted
   pr_haaverage,  // Heiken ashi average
   pr_hamedianb,  // Heiken ashi median body
   pr_hatbiased,  // Heiken ashi trend biased price
   pr_hatbiased2  // Heiken ashi trend biased (extreme) price
};

extern bool             PriceFirstList      = true;        // First or second price list (below)
extern enPModes         MaPriceFirstList    = pr_hl;
extern enPrices         MaPriceSecondList   = pr_close;

extern int    PdfMaLength         = 10;      // Pdfma Length
extern double Sensitivity         = 5.0;     // Sensivity Factor
extern double StepSize            = 2.0;     // Constant Step Size
extern double Variance            = 1.0;     // Pdfma variance
extern double Mean                = 0.0;     // Pdfma mean
extern enPrices         StepMaPrice         = pr_close;
extern bool             ATRScaling          = false;

extern int              LineWidth           = 3;
extern int              Shift               = 0;

extern bool             alertsOn            = false;
extern bool             alertsOnCurrent     = true;
extern bool             alertsMessage       = true;
extern bool             alertsNotification  = false;
extern bool             alertsSound         = false;
extern bool             alertsEmail         = false;

extern bool             ShowArrows          = true;
extern int              arrowSize           = 2;
extern int              uparrowCode         = 233;
extern int              dnarrowCode         = 234;
extern double           uparrowGap          = 0.5;
extern double           dnarrowGap          = 0.5;

double LineBuffer[];
double DnBuffera[];
double DnBufferb[];
double arrowUp[];
double arrowDn[];
double smin[];
double smax[];
double trend[];
double _coeffs[];

#define maxx 3.5
int init()
{
      // код доступен только после оплаты
   }
int deinit() { return(0); }     

int start()
{
      // код доступен только после оплаты
   }
   int i, counted_bars=IndicatorCounted();
      if(counted_bars<0) return(-1);
      if(counted_bars>0) counted_bars--;
         int limit = MathMin(Bars-counted_bars,Bars-1);

      double useSize = Point*MathPow(10,MathMod(Digits,2));
      if (trend[limit]==-1) CleanPoint(limit,DnBuffera,DnBufferb);
      for(i=limit; i>=0; i--)
      {
         double thigh;
         double tlow;

         if(PriceFirstList==true){

            if (MaPriceFirstList == pr_hl)    { thigh=iPdfma(getPrice(pr_high,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
                                               tlow =iPdfma(getPrice(pr_low,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1); }

            if (MaPriceFirstList == pr_lh)    { thigh=iPdfma(getPrice(pr_low,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
                                               tlow =iPdfma(getPrice(pr_high,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1); }

            if (MaPriceFirstList == pr_co)    { thigh=iPdfma(getPrice(pr_close,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
                                               tlow =iPdfma(getPrice(pr_open,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1); }

            if (MaPriceFirstList == pr_oc)    { thigh=iPdfma(getPrice(pr_open,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
                                               tlow =iPdfma(getPrice(pr_close,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1); }

            if (MaPriceFirstList == pr_hahl)  { thigh=iPdfma(getPrice(pr_hahigh,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
                                               tlow =iPdfma(getPrice(pr_halow,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1); }

            if (MaPriceFirstList == pr_halh)  { thigh=iPdfma(getPrice(pr_halow,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
                                               tlow =iPdfma(getPrice(pr_hahigh,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1); }

            if (MaPriceFirstList == pr_haco)  { thigh=iPdfma(getPrice(pr_haclose,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
                                               tlow =iPdfma(getPrice(pr_haopen,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1); }

            if (MaPriceFirstList == pr_haoc)  { thigh=iPdfma(getPrice(pr_haopen,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
                                               tlow =iPdfma(getPrice(pr_haclose,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1); }

        }  else  {

/*
           double maprmode = getPrice(MaPriceSecondList,Open,Close,High,Low,i,0);
           thigh=iPdfma(maprmode,PdfMaLength,_coeffs,i,0);
           tlow =iPdfma(maprmode,PdfMaLength,_coeffs,i,1);
*/

           thigh=iPdfma(getPrice(MaPriceSecondList,Open,Close,High,Low,i,0),PdfMaLength,_coeffs,i,0);
           tlow =iPdfma(getPrice(MaPriceSecondList,Open,Close,High,Low,i,1),PdfMaLength,_coeffs,i,1);

        }

           double smprice = getPrice(StepMaPrice,Open,Close,High,Low,i,2);

       if (ATRScaling == false)    
           { LineBuffer[i] = iStepMa(Sensitivity,StepSize,useSize,thigh,tlow,smprice,i); }
           else
           { int ATRPeriod = NormalizeDouble(MathRound(10.0*StepSize),0);  double SensitScal = 0.1*Sensitivity;      
             Li

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

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

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

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

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

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

Стоимость полного кода
1 081₽ ≈ $13.21