Vertex
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «vertex_mod_3.01_alerts__arrows.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор Vertex для MetaTrader 5, рассчитывающий пользовательский осциллятор на основе соотношения ценовых экстремумов и отображающий его в отдельном окне. Включает сигнальную линию и полосы, а также визуальные маркеры для фиксации разворотов.
Поддерживает настраиваемые уровни перекупленности и перепроданности, включая экстремальные. При пересечении этих уровней индикатор может запускать уведомления различных типов.
Предусмотрены визуальные стрелки на графике цены для обозначения потенциальных точек разворота с настраиваемыми цветами, размерами и типами маркеров. Система оповещений поддерживает всплывающие окна, звуковые сигналы, электронную почту и push-уведомления.
Настройки программы
| Настройка | Описание |
|---|---|
| Processed | Количество обрабатываемых баров — Количество последних баров, обрабатываемых при каждом пересчёте. |
| Control_Period | Период контроля — Период контроля для расчёта базового значения индикатора. |
| Signal_Period | Период сигнальной линии — Период сглаживания сигнальной линии индикатора. |
| Signal_Method | Метод сглаживания сигнала — Метод сглаживания сигнальной линии индикатора. |
| BB_Up_Period | Период верхней полосы — Период расчёта верхней полосы расчётного диапазона значений индикатора. |
| BB_Up_Deviation | Отклонение верхней полосы — Отклонение верхней полосы расчётного диапазона значений индикатора. |
| BB_Dn_Period | Период нижней полосы — Период расчёта нижней полосы расчётного диапазона значений индикатора. |
| BB_Dn_Deviation | Отклонение нижней полосы — Отклонение нижней полосы расчётного диапазона значений индикатора. |
| levelOb | Уровень перекупленности — Уровень перекупленности индикатора. |
| levelOs | Уровень перепроданности — Уровень перепроданности индикатора. |
| extremelevelOb | Экстремальный уровень перекупленности — Уровень экстремальной перекупленности индикатора. |
| extremelevelOs | Экстремальный уровень перепроданности — Уровень экстремальной перепроданности индикатора. |
| alertsOn | Включить оповещения — Общий переключатель включения системы оповещений индикатора. |
| alertsOnObOs | Оповещения при обычных уровнях — Включить оповещения при пересечении обычных уровней перекупленности/перепроданности. |
| alertsOnExtremeObOs | Оповещения при экстремальных уровнях — Включить оповещения при пересечении экстремальных уровней перекупленности/перепроданности. |
| alertsOnCurrent | Проверять текущий бар — Параметр выбора бара для проверки текущих условий оповещения. |
| alertsMessage | Всплывающие сообщения — Включить всплывающие сообщения на графике при срабатывании условий. |
| alertsSound | Звуковые оповещения — Включить звуковой сигнал при срабатывании условий. |
| alertsEmail | Email-уведомления — Включить отправку уведомлений по электронной почте при срабатывании условий. |
| alertsNotify | Push-уведомления — Включить push-уведомления при срабатывании условий. |
| soundfile | Звуковой файл оповещения — Путь к звуковому файлу для воспроизведения при оповещении. |
| arrowsVisible | Отображать стрелки — Общий переключатель отображения стрелок на графике. |
| arrowsIdentifier | Идентификатор стрелок — Идентификатор объектов стрелок на графике для их уникального распознавания. |
| arrowsUpperGap | Отступ вверх стрелки — Отступ вверх от цены для размещения восходящей стрелки. |
| arrowsLowerGap | Отступ вниз стрелки — Отступ вниз от цены для размещения нисходящей стрелки. |
| arrowsOnObOs | Стрелки при обычных уровнях — Отображать стрелки при пересечении обычных уровней перекупленности/перепроданности. |
| arrowsObOsUpColor | Цвет восходящей стрелки обычных уровней — Цвет восходящего маркера при обычных уровнях. |
| arrowsObOsDnColor | Цвет нисходящей стрелки обычных уровней — Цвет нисходящего маркера при обычных уровнях. |
| arrowsObOsUpCode | Код восходящей стрелки обычных уровней — Код стрелки для восходящего маркера при обычных уровнях. |
| arrowsObOsDnCode | Код нисходящей стрелки обычных уровней — Код стрелки для нисходящего маркера при обычных уровнях. |
| arrowsObOsUpSize | Размер восходящей стрелки обычных уровней — Размер восходящего маркера при обычных уровнях. |
| arrowsObOsDnSize | Размер нисходящей стрелки обычных уровней — Размер нисходящего маркера при обычных уровнях. |
| arrowsOnExtremeObOs | Стрелки при экстремальных уровнях — Отображать стрелки при пересечении экстремальных уровней перекупленности/перепроданности. |
| arrowsExtremeObOsUpColor | Цвет восходящей стрелки экстремумов — Цвет восходящего маркера при экстремальных уровнях. |
| arrowsExtremeObOsDnColor | Цвет нисходящей стрелки экстремумов — Цвет нисходящего маркера при экстремальных уровнях. |
| arrowsExtremeObOsUpCode | Код восходящей стрелки экстремумов — Код стрелки для восходящего маркера при экстремальных уровнях. |
| arrowsExtremeObOsDnCode | Код нисходящей стрелки экстремумов — Код стрелки для нисходящего маркера при экстремальных уровнях. |
| arrowsExtremeObOsUpSize | Размер восходящей стрелки экстремумов — Размер восходящего маркера при экстремальных уровнях. |
| arrowsExtremeObOsDnSize | Размер нисходящей стрелки экстремумов — Размер нисходящего маркера при экстремальных уровнях. |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_color1 Red
#property indicator_color2 Blue
#property indicator_color3 Gray
#property indicator_color4 Gray
#property indicator_levelcolor MediumOrchid
extern int Processed = 2000;
extern int Control_Period = 14;
extern int Signal_Period = 5;
extern int Signal_Method = MODE_SMA;
extern int BB_Up_Period = 12;
extern int BB_Up_Deviation = 2;
extern int BB_Dn_Period = 12;
extern int BB_Dn_Deviation = 2;
extern double levelOb = 6;
extern double levelOs = -6;
extern double extremelevelOb = 10;
extern double extremelevelOs = -10;
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 bool arrowsVisible = true;
extern string arrowsIdentifier = "vertex arrows1";
extern double arrowsUpperGap = 1.0;
extern double arrowsLowerGap = 1.0;
extern bool arrowsOnObOs = true;
extern color arrowsObOsUpColor = LimeGreen;
extern color arrowsObOsDnColor = Red;
extern int arrowsObOsUpCode = 241;
extern int arrowsObOsDnCode = 242;
extern int arrowsObOsUpSize = 1;
extern int arrowsObOsDnSize = 1;
extern bool arrowsOnExtremeObOs = true;
extern color arrowsExtremeObOsUpColor = DeepSkyBlue;
extern color arrowsExtremeObOsDnColor = PaleVioletRed;
extern int arrowsExtremeObOsUpCode = 159;
extern int arrowsExtremeObOsDnCode = 159;
extern int arrowsExtremeObOsUpSize = 5;
extern int arrowsExtremeObOsDnSize = 5;
double values[];
double signal[];
double band_up[];
double band_dn[];
double trend1[];
double trend2[];
int init()
{
// код доступен только после оплаты
}
int deinit()
{
deleteArrows();
return(0);
}
int start()
{
// код доступен только после оплаты
}
datetime bar_time;
int idx, counter, offset, bar_shft, bar_cont;
double price_high, price_close, price_low, trigger_high, trigger_low;
double sum_up, sum_dn, complex_up, complex_dn;
int counted = IndicatorCounted();
if (counted < 0) return (-1);
if (counted > 0) counted--;
int limit = Bars - counted;
if (limit > Processed) limit = Processed;
for (idx = limit; idx >= 0; idx--) {
counter = 0;
complex_up = 0; complex_dn = 0;
trigger_high = -999999; trigger_low = 999999;
while (counter < Control_Period) {
sum_up = 0; sum_dn = 0;
offset = idx + counter;
bar_time = iTime(Symbol(), 0, offset);
bar_shft = iBarShift(Symbol(), 0, bar_time, FALSE);
bar_cont = bar_shft - Period(); if (bar_cont < 0) bar_cont = 0;
for (int jdx = bar_shft; jdx >= bar_cont; jdx--) {
price_high = iHigh(Symbol(), 0, jdx);
price_close = iClose(Symbol(), 0, jdx);
price_low = iLow(Symbol(), 0, jdx);
if (price_high > trigger_high) {trigger_high = price_high; sum_up += price_close;}
if (price_low < trigger_low ) {trigger_low = price_low; sum_dn += price_close;}
}
counter++;
complex_up += sum_up; complex_dn += sum_dn;
}
if (complex_dn != 0.0 && complex_up != 0.0)
Показано первые 50% кода (символов: 5853)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.