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

VQ

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

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

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

О программе

VQ — индикатор для MetaTrader 5, рассчитывающий метрику волатильности на основе скользящих средних ценовых данных. Он отображает кумулятивное значение индикатора в отдельном окне с возможностью цветового выделения направления движения и стрелками смены тренда.

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

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

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

НастройкаОписание
Crash Переключатель режима «крэш», при котором количество рассчитываемых баров дополнительно уменьшается на 10.
TimeFrame Таймфрейм, на котором выполняется расчёт индикатора. Значение 0 означает текущий таймфрейм графика.
Length Период скользящей средней, используемой в расчётах индикатора.
Method Метод расчёта скользящей средней (доступны различные типы сглаживания).
Smoothing Параметр сглаживания, используемый при расчёте текущего значения индикатора.
Filter Порог фильтра минимального изменения значения индикатора для его отображения.
RealTime Включает или отключает пересчёт индикатора на каждом тике в реальном времени.
Steady При активации используется медианная цена вместо цены закрытия в расчётах индикатора.
Color Включает или отключает цветовое отображение линий индикатора в зависимости от направления движения.
Alerts Включает или отключает всплывающие уведомления при смене направления индикатора.
EmailON Включает или отключает отправку уведомлений по электронной почте при смене направления индикатора.
SignalPrice Включает или отключает отображение графических стрелок сигналов на графике цены.
SignalPriceBUY Цвет стрелки сигнала покупки, отображаемой на графике цены.
SignalPriceSELL Цвет стрелки сигнала продажи, отображаемой на графике цены.
CountBars Максимальное количество баров, используемых для расчёта индикатора.
Получить полный код

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

#property  indicator_separate_window
#property  indicator_buffers 5
#property  indicator_color1  Yellow
#property  indicator_color2  Green
#property  indicator_color3  Red
#property  indicator_color4  Yellow
#property  indicator_color5  Cyan
#property  indicator_width1  2
#property  indicator_width2  2
#property  indicator_width3  2

extern   bool     Crash = false;

extern   int      TimeFrame = 0;
extern   int      Length = 8;
extern   int      Method = 3;
extern   int      Smoothing = 1;
extern   int      Filter = 5;

extern   bool     RealTime = false;
extern   bool     Steady  = false;
extern   bool     Color = true;
extern   bool     Alerts = true;
extern   bool     EmailON = false;
extern   bool     SignalPrice = true;
extern   color    SignalPriceBUY = Yellow;
extern   color    SignalPriceSELL = Aqua;
extern   int      CountBars = 10000;

double   VQ[];
double   SumVQ[];
double   SumVQ_MTF[];
double   DIR[];
double   UpBuffer[];
double   DnBuffer[];
double   UpArrow[];
double   DnArrow[];

bool     TurnedUp = false;
bool     TurnedDn = false;
datetime timeprev1=0;
datetime timeprev2=0;
int p=0;

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

int start()
{
      // код доступен только после оплаты
   }
if (Bars < 100) {IndicatorShortName("Bars less than 100"); return(0);}

if(timeprev1<iTime(NULL,TimeFrame,0)) {TurnedDn = false; TurnedUp = false; timeprev1=iTime(NULL,TimeFrame,0);}

if (!RealTime)
{
   if(timeprev2==iTime(NULL,TimeFrame,0)) return(0);
   timeprev2=iTime(NULL,TimeFrame,0);
   p=TimeFrame/Period()+1; if (p==0) p=1;
}

double TR = 0, MH = 0, ML = 0, MO = 0, MC = 0, MC1 = 0;

if (CountBars>iBars(NULL,TimeFrame) || CountBars>Bars-Length-1) CountBars=MathMin(Bars-Length-1,iBars(NULL,TimeFrame)-Length-1);
if (Crash && CountBars>0){CountBars=CountBars-10; IndicatorShortName("Crash: "+CountBars+"     ");}
if (Crash && CountBars<0) IndicatorShortName("Crash");

int i = CountBars;
SumVQ[i + 1] = Close[i + 1];
SumVQ_MTF[i + 1] = Close[i + 1];
whi

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

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

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

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

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

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

Стоимость полного кода
504,50₽ ≈ $6.17