qqe-new.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «qqe-new.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный файл представляет собой пользовательский индикатор для MetaTrader 5, отображаемый в отдельном окне. Он рассчитывает и визуализирует аналитические линии и гистограмму, связанные с динамикой цены и осциллятором RSI. Индикатор строит несколько буферов: гистограмму с цветовыми зонами (верхняя, средняя, нижняя), линию RSI и линию тренда. Уровни верхней и нижней границ задаются пользователем и отображаются на графике.
Индикатор поддерживает настройку уведомлений о пересечении нулевой линии и о пересечении сигнальной линии. Уведомления могут выводиться в виде всплывающих сообщений, звукового сигнала, push-уведомлений и электронной почты. Также предусмотрена возможность отображения стрелок на графике при возникновении соответствующих событий. Стрелки настраиваются по цвету, коду и размеру, а также имеют параметр смещения относительно экстремумов цены.
Все входные параметры вынесены в настройки, что позволяет адаптировать индикатор под различные торговые предпочтения. Индикатор не является торговым советником и не выполняет автоматических торговых операций.
Настройки программы
| Настройка | Описание |
|---|---|
| SF | Фактор сглаживания — Параметр сглаживания, влияющий на скорость реакции индикатора. |
| RSIPeriod | Период RSI — Период расчёта осциллятора RSI. |
| WP | Множитель — Множитель, используемый при расчёте динамического диапазона. |
| UpperBound | Верхняя граница — Верхняя граница для выделения зоны гистограммы. |
| LowerBound | Нижняя граница — Нижняя граница для выделения зоны гистограммы. |
| _ | Заголовок группы уведомлений — Текстовый разделитель для группировки настроек уведомлений. |
| alertsOn | Включить уведомления — Включает или отключает все уведомления. |
| alertsOnZeroCross | Уведомления при пересечении нуля — Включает уведомления при пересечении нулевой линии. |
| alertsOnSignalCross | Уведомления при пересечении сигнала — Включает уведомления при пересечении сигнальной линии. |
| alertsOnCurrent | Уведомления на текущем баре — Определяет, проверять ли уведомления на текущем баре. |
| alertsMessage | Всплывающие сообщения — Включает вывод всплывающих сообщений. |
| alertsSound | Звуковые уведомления — Включает звуковое сопровождение уведомлений. |
| alertsNotify | Push-уведомления — Включает отправку push-уведомлений. |
| alertsEmail | Уведомления по email — Включает отправку уведомлений по электронной почте. |
| soundFile | Звуковой файл — Имя звукового файла для звуковых уведомлений. |
| arrowsVisible | Показывать стрелки — Включает или отключает отображение стрелок на графике. |
| arrowsIdentifier | Идентификатор стрелок — Префикс имени для объектов стрелок. |
| arrowsDisplacement | Смещение стрелок — Смещение стрелок относительно экстремумов цены. |
| arrowsOnZeroCross | Стрелки при пересечении нуля — Включает отображение стрелок при пересечении нулевой линии. |
| arrowsUpZeroCrossColor | Цвет стрелки вверх (ноль) — Цвет стрелки вверх при пересечении нуля. |
| arrowsDnZeroCrossColor | Цвет стрелки вниз (ноль) — Цвет стрелки вниз при пересечении нуля. |
| arrowsUpZeroCrossCode | Код стрелки вверх (ноль) — Код символа для стрелки вверх при пересечении нуля. |
| arrowsDnZeroCrossCode | Код стрелки вниз (ноль) — Код символа для стрелки вниз при пересечении нуля. |
| arrowsUpZeroCrossSize | Размер стрелки вверх (ноль) — Размер стрелки вверх при пересечении нуля. |
| arrowsDnZeroCrossSize | Размер стрелки вниз (ноль) — Размер стрелки вниз при пересечении нуля. |
| arrowsOnSignalCross | Стрелки при пересечении сигнала — Включает отображение стрелок при пересечении сигнальной линии. |
| arrowsUpSignalColor | Цвет стрелки вверх (сигнал) — Цвет стрелки вверх при пересечении сигнала. |
| arrowsDnSignalColor | Цвет стрелки вниз (сигнал) — Цвет стрелки вниз при пересечении сигнала. |
| arrowsUpSignalCode | Код стрелки вверх (сигнал) — Код символа для стрелки вверх при пересечении сигнала. |
| arrowsDnSignalCode | Код стрелки вниз (сигнал) — Код символа для стрелки вниз при пересечении сигнала. |
| arrowsUpSignalSize | Размер стрелки вверх (сигнал) — Размер стрелки вверх при пересечении сигнала. |
| arrowsDnSignalSize | Размер стрелки вниз (сигнал) — Размер стрелки вниз при пересечении сигнала. |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 5
#property indicator_color1 Green
#property indicator_color2 Aqua
#property indicator_color3 Yellow
#property indicator_color4 Lime
#property indicator_color5 Red
#property indicator_width1 1
#property indicator_width2 1
#property indicator_width3 1
#property indicator_width4 2
#property indicator_width5 2
#property indicator_levelcolor DimGray
extern int SF = 5;
extern int RSIPeriod = 6;
extern double WP = 4.236;
extern double UpperBound = 60;
extern double LowerBound = 40;
extern string _ = "Alerts Settings";
extern bool alertsOn = true;
extern bool alertsOnZeroCross = false;
extern bool alertsOnSignalCross = true;
extern bool alertsOnCurrent = false;
extern bool alertsMessage = true;
extern bool alertsSound = true;
extern bool alertsNotify = false;
extern bool alertsEmail = false;
extern string soundFile = "alert2.wav";
extern bool arrowsVisible = true;
extern string arrowsIdentifier = "qqe Arrows1";
extern double arrowsDisplacement = 1.0;
extern bool arrowsOnZeroCross = false;
extern color arrowsUpZeroCrossColor = DeepSkyBlue;
extern color arrowsDnZeroCrossColor = Red;
extern int arrowsUpZeroCrossCode = 233;
extern int arrowsDnZeroCrossCode = 234;
extern int arrowsUpZeroCrossSize = 1;
extern int arrowsDnZeroCrossSize = 1;
extern bool arrowsOnSignalCross = true;
extern color arrowsUpSignalColor = Lime;
extern color arrowsDnSignalColor = Red;
extern int arrowsUpSignalCode = 241;
extern int arrowsDnSignalCode = 242;
extern int arrowsUpSignalSize = 3;
extern int arrowsDnSignalSize = 3;
double RsiMa[];
double Trend[];
double HistoU[];
double HistoM[];
double HistoD[];
double trend1[];
double trend2[];
double work[][4];
int init()
{
// код доступен только после оплаты
}
int deinit()
{
deleteArrows();
return(0);
}
#define iEma 0
#define iEmm 1
#define iQqe 2
#define iRsi 3
int start()
{
// код доступен только после оплаты
}
int counted_bars=IndicatorCounted();
int i,r,limit;
if(counted_bars < 0) return(-1);
if(counted_bars > 0) counted_bars--;
limit = MathMin(Bars-counted_bars,Bars-1);
if (ArrayRange(work,0) != Bars) ArrayResize(work,Bars);
double alpha1 = 2.0/(SF+1.0);
double alpha2 = 2.0/(RSIPeriod*2.0);
for (i=limit, r=Bars-i-1; i>=0; i--,r++)
{
work[r][iRsi] = work[r-1][iRsi] + alpha1*(iRSI(NULL,0,RSIPeriod,PRICE_CLOSE,i) - work[r-1][iRsi]);
work[r][iEma] = work[r-1][iEma] + alpha2*(MathAbs(work[r-1][iRsi]-work[r][iRsi]) - work[r-1][iEma]);
work[r][iEmm] = work[r-1][iEmm] + alpha2*(work[r][iEma] - work[r-1][iEmm]);
double rsi0 = work[r ][iRsi];
double rsi1 = work[r-1][iRsi];
double dar = work[r ][iEmm]*WP;
double tr = work[r-1][iQqe];
double dv = tr;
if (rsi0 < tr) { tr = rsi0 + dar; if ((rsi1 < dv) && (tr > dv)) tr = dv; }
if (rsi0 > tr) { tr = rsi0 - dar; if ((rsi1 > dv) && (tr < dv)) tr = dv; }
work[r][iQqe] = tr;
trend1[i] = trend1[i+1];
trend2[i] = trПоказано первые 50% кода (символов: 5668)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.