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

Cumulative Volume MTF TT™

cumulative volume mtf tt™.mq5
Вы автор или правообладатель?

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

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

О программе

Cumulative Volume MTF TT™ — это пользовательский индикатор для MetaTrader 5, рассчитывающий кумулятивный объём на множественных таймфреймах. Он использует данные объёма и скользящую среднюю для разделения положительного и отрицательного объёма с возможностью отображения в объединённом или раздельном режиме.

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

Индикатор отображается в отдельном подокне терминала MetaTrader 5 и работает на основе стандартных функций MQL5 для работы с ценовыми и объёмными данными.

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

НастройкаОписание
History Количество свечей в истории для расчёта и отрисовки индикатора (глубина истории).
TimeFrame Таймфрейм, на котором выполняется расчёт индикатора.
Length Период скользящей средней, используемой в расчёте кумулятивного объёма.
Combined Режим отображения: при включённом режиме отображается суммарный кумулятивный объём, при выключенном — раздельные положительный и отрицательный объёмы.
Relative Режим нормализации значений: при включённом режиме результаты выражаются относительно общего объёма, при выключенном — в абсолютных значениях.
DrawHISTO Стиль отрисовки гистограммы: Standart — стандартная, CrossZero — пересекает ноль, MoreLess — больше/меньше.
Получить полный код

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

#property description "Оригинальный расчёт  —  Gehtsoft USA LLC,    © 2013"
#property description " "
#property description "Ограничение истории, MTF, Раскраска гистограммы."
#property description " "
#property description "Почта:  t*******e*@mail.ru." 

#property indicator_separate_window
#property indicator_buffers 6

#property indicator_color1  clrGreen
#property indicator_color2  clrRed
#property indicator_color3  clrGreen
#property indicator_color4  clrRed

#property indicator_color5  clrCornflowerBlue   //Green
#property indicator_color6  clrMediumOrchid  //Red

#property indicator_width1  2
#property indicator_width2  2
#property indicator_width3  2
#property indicator_width4  2

#property indicator_width5  2
#property indicator_width6  2

#property indicator_level1  0
#property indicator_levelstyle  2
#property indicator_levelcolor  clrSilver   //DarkSlateGray   ///DarkGreen   ///SlateBlue  ///MediumOrchid

enum histo
{
   Standart,   // Стандартная
   CrossZero,  // Пересекает ZERO
   MoreLess    // Больше/Меньше
};

extern int                History  =  1440;  ///4320;      // How bars for calculation   ///288; //576 //864 = M5 * 2Days   //Сколько свечей в Истории (глубина Истории для расчёта/отрисовки Индекса)
extern ENUM_TIMEFRAMES  TimeFrame  =  PERIOD_CURRENT;   // ТаймФрейм
extern int                 Length  =  15;
extern bool              Combined  =  true;
extern bool              Relative  =  false;
extern histo            DrawHISTO  =  MoreLess;

double CumUP[], CumDN[], PosUP[], PosDN[], NegUP[], NegDN[];   int CLT, MNT;
double Cumulative[], Positive[], Negative[];   double APos[], ANeg[];

int init()
{
      // код доступен только после оплаты
   }
   TimeFrame = MathMax(TimeFrame,Period());  /// <<== это одно и тоже ==>> ///if (MTF1<Period())  MTF1 = PERIOD_CURRENT;

   IndicatorBuffers(8);   IndicatorDigits(Digits);   //if (Digits==3 || Digits==5) IndicatorDigits(Digits-1);

if (Combined) {
    SetIndexBuffer(0,CumUP);
    SetIndexBuffer(1,CumDN);

    SetIndexBuffer(2,Cumulative);
    SetIndexBuffer(3,APos);
    SetIndexBuffer(4,ANeg); 

    CLT=DRAW_NONE;   if (DrawHISTO!=Standart) CLT=DRAW_HISTOGRAM; 
    SetIndexStyle(0,CLT,EMPTY,EMPTY,indicator_color1);
    SetIndexStyle(1,CLT,EMPTY,EMPTY,indicator_color2);
    MNT=DRAW_NONE;   if (DrawHISTO==Standart) MNT=DRAW_HISTOGRAM; 
    SetIndexStyle(2,MNT,EMPTY,EMPTY,indicator_color5);
    SetIndexStyle(3,DRAW_NONE);
    SetIndexStyle(4,DRAW_NONE);

    SetIndexLabel(0,"Cumulative UP");
    SetIndexLabel(1,"Cumulative DN");
    SetIndexLabel(2,"Cumulative"); }

if (!Combined) {
    SetIndexBuffer(0,PosUP);
    SetIndexBuffer(1,PosDN);
    SetIndexBuffer(2,NegUP);
    SetIndexBuffer(3,NegDN);

    SetIndexBuffer(4,Positive);
    SetIndexBuffer(5,Negative);
    SetIndexBuffer(6,APos);
    SetIndexBuffer(7,ANeg); 

    CLT=DRAW_NONE;   if (DrawHISTO!=Standart) CLT=DRAW_HISTOGRAM; 
    SetIndexStyle(0,CLT,EMPTY,EMPTY,indicator_color1);
    SetIndexStyle(1,CLT,EMPTY,EMPTY,indicator_color2);
    SetIndexStyle(2,CLT,EMPTY,EMPTY,indicator_color3);
    SetIndexStyle(3,CLT,EMPTY,EMPTY,indicator_color4);
    MNT=DRAW_NONE;   if (DrawHISTO==Standart) MNT=DRAW_HISTOGRAM; 
    SetIndexStyle(4,MNT,EMPTY,EMPTY,indicator_color5);
    SetIndexStyle(5,MNT,EMPTY,EMPTY,indicator_color6);
    SetIndexStyle(6,DRAW_NONE);
    SetIndexStyle(7,DRAW_NONE);

    SetIndexLabel(0,"Positive UP");
    SetIndexLabel(1,"Positive DN");
    SetIndexLabel(2,"Negative UP");
    SetIndexLabel(3,"Negative DN");
    SetIndexLabel(4,"Positive"); 
    SetIndexLabel(5,"Negative"); }

  	SetIndexEmptyValue(0,0.0);
  	SetIndexEmptyValue(1,0.0);
   SetIndexEmptyValue(2,0.0);
  	SetIndexEmptyValue(3,0.0);
  	SetIndexEmptyValue

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

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

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

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

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

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

Стоимость полного кода
562,10₽ ≈ $6.87