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

dynamic cycle explorer.mq5

Вы автор или правообладатель?

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

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

О программе

Индикатор «Dynamic Cycle Explorer» рассчитывает аналитическую линию DCE на основе взвешенной скользящей средней, используя шесть настраиваемых периодов. Для формирования сигнальной линии применяется сглаживание, а полосы Боллинджера рассчитываются либо по линии DCE, либо по сглаженному сигналу.

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

Доступен режим расчёта цены на основе Super Trend с использованием CCI и ATR. Индикатор позволяет настраивать глубину истории, визуальное оформление стрелок и параметры уведомлений.

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

НастройкаОписание
a01 Группа параметров DCE (разделитель).
Period1 Первый период для расчёта взвешенной скользящей средней в формуле DCE.
Period2 Второй период для расчёта взвешенной скользящей средней в формуле DCE.
Period3 Третий период для расчёта взвешенной скользящей средней в формуле DCE.
Period4 Четвёртый период для расчёта взвешенной скользящей средней в формуле DCE.
Period5 Пятый период для расчёта взвешенной скользящей средней в формуле DCE.
Period6 Шестой период для расчёта взвешенной скользящей средней в формуле DCE.
Price Тип цены, используемый при расчёте DCE в режиме текущей цены.
Signal_Period Период сглаживания сигнальной линии.
Signal_Method Метод сглаживания для построения сигнальной линии на основе массива DCE.
DCE_Pr Выбор базы для расчёта DCE: текущая цена или цена по Super Trend.
a02 Группа параметров Super Trend (разделитель).
CCIperiod Период индикатора CCI, используемый в режиме Super Trend.
ATRperiod Период расчёта индикатора ATR для режима Super Trend.
applied_price Тип цены, используемый при расчёте Super Trend.
a03 Группа параметров полос Боллинджера (разделитель).
BB_on_DCE_MA Определяет, по какой линии рассчитываются полосы Боллинджера: по линии DCE или по сглаженному сигналу.
BB_Period Период расчёта полос Боллинджера.
BB_Deviation Допустимое отклонение полос Боллинджера от средней линии.
History Максимальная глубина обрабатываемой истории в бараках.
a04 Группа параметров уровней (разделитель).
levelOb Верхний уровень для определения зоны перекупленности.
levelOs Нижний уровень для определения зоны перепроданности.
extremelevelOb Верхний экстремальный уровень для определения перекупленности.
extremelevelOs Нижний экстремальный уровень для определения перепроданности.
a05 Группа параметров оповещений (разделитель).
alertsOn Главный переключатель, включающий или отключающий все оповещения.
alertsOnObOs Включает оповещения при пересечении стандартных уровней перепроданности и перекупленности.
alertsOnExtremeObOs Включает оповещения при пересечении экстремальных уровней перепроданности и перекупленности.
alertsOnCurrent При включении оповещения формируются по текущему бару, иначе — по предыдущему завершённому бару.
alertsMessage Включает отправку оповещений в виде всплывающих сообщений на графике.
alertsSound Включает звуковое оповещение при срабатывании условий.
alertsEmail Включает отправку оповещений по электронной почте.
alertsNotify Включает отправку push-уведомлений на мобильные устройства.
soundfile Имя звукового файла для воспроизведения при оповещении.
a06 Группа параметров стрелок (разделитель).
arrowsVisible Включает или отключает отображение стрелок на графике.
arrowsIdentifier Идентификатор объектов стрелок на графике для их последующего удаления.
arrowsUpperGap Отступ вверх от цены для размещения стрелок.
arrowsLowerGap Отступ вниз от цены для размещения стрелок.
arrowsOnObOs Включает отображение стрелок при пересечении стандартных уровней перепроданности и перекупленности.
arrowsObOsUpColor Цвет восходящих стрелок на стандартных уровнях.
arrowsObOsDnColor Цвет нисходящих стрелок на стандартных уровнях.
arrowsObOsUpCode Код стрелки для восходящего сигнала на стандартных уровнях.
arrowsObOsDnCode Код стрелки для нисходящего сигнала на стандартных уровнях.
arrowsObOsUpSize Размер восходящих стрелок на стандартных уровнях.
arrowsObOsDnSize Размер нисходящих стрелок на стандартных уровнях.
arrowsOnExtremeObOs Включает отображение стрелок при пересечении экстремальных уровней.
arrowsExtremeObOsUpColor Цвет восходящих стрелок на экстремальных уровнях.
arrowsExtremeObOsDnColor Цвет нисходящих стрелок на экстремальных уровнях.
arrowsExtremeObOsUpCode Код стрелки для восходящего сигнала на экстремальных уровнях.
arrowsExtremeObOsDnCode Код стрелки для нисходящего сигнала на экстремальных уровнях.
arrowsExtremeObOsUpSize Размер восходящих стрелок на экстремальных уровнях.
arrowsExtremeObOsDnSize Размер нисходящих стрелок на экстремальных уровнях.
Получить полный код

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

#property description ""
#property description ""
#property strict

#property indicator_separate_window

#property indicator_buffers    4
#property indicator_color1     clrGold
#property indicator_color2     clrDodgerBlue
#property indicator_color3     clrGray
#property indicator_color4     clrGray

#property indicator_width1     2
#property indicator_width2     2

#property indicator_levelcolor clrMediumOrchid

enum enum1
 {
   Prc,  // Current price
   ST    // Super Trend price
 };

enum enum2
 {
   DCE,  // DCE
   DCEs  // DCE smoothed
 };

extern string a01                      = "";           // ___ Параметры DCE _____________
extern int    Period1                  = 34;          // Период 1        
extern int    Period2                  = 22;          // Период 2
extern int    Period3                  = 18;          // Период 3
extern int    Period4                  = 33;          // Период 4
extern int    Period5                  = 29;          // Период 5
extern int    Period6                  = 14;          // Период 6
extern ENUM_APPLIED_PRICE Price        = PRICE_CLOSE;  // Тип цены
extern int    Signal_Period            = 3;            // Период сглаживания
extern ENUM_MA_METHOD Signal_Method    = MODE_SMA;     // Метод расчета для сглаживания
extern enum1  DCE_Pr                   = ST;          // Расчет DCE по:

extern string a02                      = "";           // ___ Параметры Super Trend _______
extern int    CCIperiod                = 50;           // Период CCI
extern int    ATRperiod                = 5;            // Период ATR
extern ENUM_APPLIED_PRICE applied_price= 5;            // Тип цены

extern string a03                      = "";           // ___ Параметры BB _______________
extern enum2  BB_on_DCE_MA             = DCE;          // Расчет ВВ по:
extern int    BB_Period                = 89;           // Период ВВ
extern double BB_Deviation             = 1.62;         // Девиация ВВ
extern int    History                  = 1000;        // Глубина истории

extern string a04                      = "";           // ___ Параметры уровней __________
extern double levelOb                  = 0;            //
extern double levelOs                  = 0;            //
extern double extremelevelOb           = 0;            //
extern double extremelevelOs           = 0;            //

extern string a05                      = "";           // ___ Параметры оповещения _______
extern bool   alertsOn                 = true;         //
extern bool   alertsOnObOs             = false;        //
extern bool   alertsOnExtremeObOs      = true;         //
extern bool   alertsOnCurrent          = false;        //
extern bool   alertsMessage            = true;         //
extern bool   alertsSound              = true;         //
extern bool   alertsEmail              = false;        //
extern bool   alertsNotify             = false;        //
extern string soundfile                = "alert2.wav"; //

extern string a06                      = "";           // ___ Параметры стрелок ___________
extern bool   arrowsVisible            = true;         //
extern string arrowsIdentifier         = "DCE_BB>i<";        // ID объектов индикатора
extern double arrowsUpperGap           = 0.1;          //
extern double arrowsLowerGap           = 0.1;          //

extern bool   arrowsOnObOs             = true;         //
extern color  arrowsObOsUpColor        = clrLimeGreen; //
extern color  arrowsObOsDnColor        = clrRed;       //
extern int    arrowsObOsUpCode         = 241;          //
extern int    arrowsObOsDnCode         = 242;          //
extern int    arrowsObOsUpSize         = 1;            //
extern int    arrowsObOsDnSize         = 1;            //

extern bool   arrowsOnExtremeObOs      = true;         //
extern color  arrowsExtremeObOsUpColor = clrDeepSkyBlue;   //
extern color  arrowsExtremeObOsDnColor = clrPaleVioletRed; //
extern int    arrowsExtremeObOsUpCode  = 159;          //
extern int    arrowsExtremeObOsDnCode  = 159;          //
extern int    arrowsExtremeObOsUpSize  = 5;            //
extern int    arrowsExtremeObOsDnSize  = 5;            //

double Map[];
double signal[];
double band_up[];
double band_dn[];
double trend1[];
double trend2[];
double prices[];
int    maxPeriod;

int init() 
{
      // код доступен только после оплаты
   }

int deinit()
{
  deleteArrows();
  return(0);
}

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

   if(DCE_Pr==Prc)
    {
      for (i=limit; i>=0; i--)
        prices[i] = iMA(NULL,0,1,0,MODE_SMA,Price,i)*100000;
    }else{
      for(i=limit; i>=0; i--)
       {
         double cciTrend = iCCI(NULL, 0, CCIperiod, applied_price, i);
         prices[i] = prices[i+1];

         if(cciTrend > 0) pri

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

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

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

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

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

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

Стоимость полного кода
806,40₽ ≈ $9.86