wpr alerts.mq5
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «wpr alerts.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный продукт представляет собой индикатор для MetaTrader 4, отображающий аналитический осциллятор в отдельном подокне графика. Индикатор рассчитывает значения на основе максимумов и минимумов ценовых баров заданного периода и отображает их в виде линии с уровнями перекупленности и перепроданности. При достижении значений за установленными границами рисуются маркеры-стрелки.
Встроенная кнопка позволяет включать и отключать отображение данных индикатора на графике без его полной перезагрузки. При переключении состояния происходит полная перерисовка буферов и обновление уровней.
Индикатор поддерживает систему уведомлений с несколькими типами оповещений: всплывающие сообщения, звуковые сигналы, push-уведомления и электронная почта. Срабатывание уведомлений привязано к смене направления движения индикатора между зонами перекупленности и перепроданности.
Поддерживается работа с несколькими таймфреймами, включая текущий и более высокие периоды, что позволяет анализировать сигналы на разных временных масштабах.
Настройки программы
| Настройка | Описание |
|---|---|
| WPRPeriod | Период индикатора — Период расчёта индикатора, определяющий количество баров для анализа |
| OversoldLevel | Уровень перепроданности — Уровень, ниже которого индикатор считается в зоне перепроданности |
| OverboughtLevel | Уровень перекупленности — Уровень, выше которого индикатор считается в зоне перекупленности |
| alertsOn | Уведомления включены — Главный переключатель, активирующий систему уведомлений индикатора |
| alertsOnCurrent | Проверка на текущем баре — Определяет, на каком баре проверять условия: на текущем или на предыдущем |
| alertsMessage | Всплывающие сообщения — Включает всплывающие сообщения-оповещения при срабатывании условий |
| alertsSound | Звуковые уведомления — Включает воспроизведение звукового сигнала при срабатывании условий |
| alertsNotify | Push-уведомления — Включает push-уведомления на мобильное устройство при срабатывании условий |
| alertsEmail | Email-уведомления — Включает отправку уведомлений по электронной почте при срабатывании условий |
| soundFile | Звуковой файл — Путь к звуковому файлу, воспроизводимому при срабатывании звукового уведомления |
| DrawDottedLine | Рисовать пунктирную линию — Включает или отключает отображение пунктирной линии и стрелок-маркеров зон перекупленности и перепроданности |
| RegularWingdingsDotCode | Код обычных маркеров — Код символа Wingdings для отображения обычных точек индикатора |
| OversoldWingdingsDotCode | Код маркера перепроданности — Код символа Wingdings для отображения маркера в зоне перепроданности |
| OverboughtWingdingsDotCode | Код маркера перекупленности — Код символа Wingdings для отображения маркера в зоне перекупленности |
| button_note1_ | Заметка кнопки 1 — Текстовая заметка, отображаемая над кнопкой |
| What window to put the button on. If <0, the button will use the same sub-window as the indicator. (btn_Subwindow) | Подокно кнопки — Подокно графика, в котором размещается кнопка; если значение меньше нуля, кнопка использует тот же подокно, что и индикатор |
| button corner on chart for anchoring (btn_corner) | Угол привязки кнопки — Угол графика, в котором привязывается кнопка |
| a button name (btn_text) | Текст кнопки — Текст, отображаемый на кнопке переключения |
| button font name (btn_Font) | Шрифт кнопки — Шрифт текста кнопки переключения |
| button font size (btn_FontSize) | Размер шрифта кнопки — Размер шрифта текста кнопки |
| ON color when the button is turned on (btn_text_ON_color) | Цвет текста кнопки (вкл) — Цвет текста кнопки при включённом состоянии индикатора |
| OFF color when the button is turned off (btn_text_OFF_color) | Цвет текста кнопки (выкл) — Цвет текста кнопки при выключенном состоянии индикатора |
| background color of the button (btn_background_color) | Фон кнопки — Цвет фона кнопки переключения |
| border color the button (btn_border_color) | Цвет рамки кнопки — Цвет рамки кнопки переключения |
| x coordinate of the button (button_x) | Координата X кнопки — Горизонтальная координата кнопки на графике |
| y coordinate of the button (button_y) | Координата Y кнопки — Вертикальная координата кнопки на графике |
| button width (btn_Width) | Ширина кнопки — Ширина кнопки переключения в пикселях |
| button height (btn_Height) | Высота кнопки — Высота кнопки переключения в пикселях |
| Unique ID for each button (UniqueButtonID) | Уникальный ID кнопки — Уникальный идентификатор кнопки для различения нескольких экземпляров индикатора на графике |
| button_note2 | Заметка кнопки 2 — Текстовая заметка, отображаемая под кнопкой |
Поиск по коду файла
#property indicator_separate_window
#property indicator_buffers 5
#property indicator_minimum -100
#property indicator_maximum 0
#property indicator_color1 clrAqua // line color
#property indicator_color2 clrNONE // trend; don't need color
#property indicator_color3 clrGray // regular dots color
#property indicator_color4 clrLime // overbought dots color
#property indicator_color5 clrRed // oversold dots color
#property indicator_width1 1
#property indicator_levelcolor clrGray
#property indicator_levelstyle STYLE_DOT
enum enTimeFrames
{
tf_cu = PERIOD_CURRENT, // Current time frame
tf_m1 = PERIOD_M1, // 1 minute
tf_m5 = PERIOD_M5, // 5 minutes
tf_m15 = PERIOD_M15, // 15 minutes
tf_m30 = PERIOD_M30, // 30 minutes
tf_h1 = PERIOD_H1, // 1 hour
tf_h4 = PERIOD_H4, // 4 hours
tf_d1 = PERIOD_D1, // Daily
tf_w1 = PERIOD_W1, // Weekly
tf_mn1 = PERIOD_MN1, // Monthly
tf_n1 = -1, // First higher time frame
tf_n2 = -2, // Second higher time frame
tf_n3 = -3, // Third higher time frame
tf_n4 = -4 // Fourth higher time frame
};
enTimeFrames TimeFrame = tf_cu; // Time frame to use
extern int WPRPeriod = 110;
extern int OversoldLevel = -95;
extern int OverboughtLevel = -5;
extern bool alertsOn = false;
extern bool alertsOnCurrent = false;
extern bool alertsMessage = false;
extern bool alertsSound = false;
extern bool alertsNotify = false;
extern bool alertsEmail = false;
extern string soundFile = "alert2.wav";
extern bool DrawDottedLine = true;
extern int RegularWingdingsDotCode = 159;
extern int OversoldWingdingsDotCode = 164;
extern int OverboughtWingdingsDotCode = 162;
extern string button_note1_ = "------------------------------";
extern int btn_Subwindow = 0; // What window to put the button on. If <0, the button will use the same sub-window as the indicator.
extern ENUM_BASE_CORNER btn_corner = CORNER_LEFT_UPPER; // button corner on chart for anchoring
extern string btn_text = "WPR"; // a button name
extern string btn_Font = "Arial"; // button font name
extern int btn_FontSize = 9; // button font size
extern color btn_text_ON_color = clrLime; // ON color when the button is turned on
extern color btn_text_OFF_color = clrRed; // OFF color when the button is turned off
extern color btn_background_color = clrDimGray; // background color of the button
extern color btn_border_color = clrBlack; // border color the button
extern int button_x = 20; // x coordinate of the button
extern int button_y = 25; // y coordinate of the button
extern int btn_Width = 80; // button width
extern int btn_Height = 20; // button height
extern string UniqueButtonID = "WPRobos"; // Unique ID for each button
extern string button_note2 = "------------------------------";
bool show_data, recalc=false;
string IndicatorObjPrefix, buttonId;
double WPR[], trend[], DottedLineWPR[], OverboughtWPR[], OversoldWPR[];
string indicatorFileName;
bool returnBars, calculateValue;
int timeFrame;
int OnInit()
{
// код доступен только после оплаты
}
void createButton(string buttonID,string buttonText,int width2,int height,string font,int fontSize,color bgColor,color borderColor,color txtColor)
{
ObjectDelete (0,buttonID);
ObjectCreate (0,buttonID,OBJ_BUTTON,btn_Subwindow,0,0);
ObjectSetInteger(0,buttonID,OBJPROP_COLOR,txtColor);
ObjectSetInteger(0,buttonID,OBJPROP_BGCOLOR,bgColor);
ObjectSetInteger(0,buttonID,OBJPROP_BORDER_COLOR,borderColor);
ObjectSetInteger(0,buttonID,OBJPROP_BORDER_TYPE,BORDER_RAISED);
ObjectSetInteger(0,buttonID,OBJPROP_XSIZE,width2);
ObjectSetInteger(0,buttonID,OBJPROP_YSIZE,height);
ObjectSetString (0,buttonID,OBJPROP_FONT,font);
ObjectSetString (0,buttonID,OBJPROP_TEXT,buttonText);
ObjectSetInteger(0,buttonID,OBJPROP_FONTSIZE,fontSize);
ObjectSetInteger(0,buttonID,OBJPROP_SELECTABLE,0);
ObjectSetInteger(0,buttonID,OBJPROP_CORNER,btn_corner);
ObjectSetInteger(0,buttonID,OBJPROP_HIDDEN,1);
ObjectSetInteger(0,buttonID,OBJPROP_XDISTANCE,9999);
ObjectSetInteger(0,buttonID,OBJPROP_YDISTANCE,9999);
ObjectSetInteger(0, buttonId, OBJPROP_STATE, true);
}
void OnDeinit(const int reason)
{
if(reason != REASON_CHARTCHANGE) ObjectDelete(buttonId);
}
void OnChartEvent(const int id, //don't change anything here
const long &lparam,
Показано первые 50% кода (символов: 8938)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.