#semaforalert - h1.mq5
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «#semaforalert - h1.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Индикатор для MetaTrader 5, отображаемый в окне графика. Он рассчитывает три независимых аналитических построения на основе поиска локальных экстремумов цены и выводит их в виде стрелок на графике. Каждое из трёх построений имеет собственные настройки периода, отклонения и шага, а также собственный код символа стрелки.
Индикатор поддерживает оповещения о появлении новых сигналов на каждом из трёх уровней. Для каждого уровня можно отдельно включить или отключить уведомления. Доступны три канала оповещений: всплывающее окно, push-уведомление и звуковой сигнал.
Настройки позволяют задавать параметры для каждого из трёх построений и управлять поведением уведомлений. Индикатор не выполняет торговых операций и предназначен только для визуального анализа графика и информирования пользователя.
Настройки программы
| Настройка | Описание |
|---|---|
| Period1 | Задаёт период расчёта для первого построения. При значении больше нуля построение рассчитывается и отображается. |
| Period2 | Задаёт период расчёта для второго построения. При значении больше нуля построение рассчитывается и отображается. |
| Period3 | Задаёт период расчёта для третьего построения. При значении больше нуля построение рассчитывается и отображается. |
| Dev_Step_1 | Задаёт параметры отклонения и шага для первого построения в виде строки с двумя числами через запятую. |
| Dev_Step_2 | Задаёт параметры отклонения и шага для второго построения в виде строки с двумя числами через запятую. |
| Dev_Step_3 | Задаёт параметры отклонения и шага для третьего построения в виде строки с двумя числами через запятую. |
| Symbol_1_Kod | Задаёт код символа стрелки для первого построения. |
| Symbol_2_Kod | Задаёт код символа стрелки для второго построения. |
| Symbol_3_Kod | Задаёт код символа стрелки для третьего построения. |
| _____ | Разделитель в списке настроек, не влияет на работу индикатора. |
| BoxAlerts | Включает или отключает вывод всплывающего окна с сообщением о сигнале. |
| EmailAlerts | Включает или отключает отправку push-уведомлений о сигналах. |
| SoundAlerts | Включает или отключает воспроизведение звукового сигнала при появлении сигнала. |
| AlertLv1 | Включает или отключает оповещения для первого уровня построения. |
| AlertLv2 | Включает или отключает оповещения для второго уровня построения. |
| AlertLv3 | Включает или отключает оповещения для третьего уровня построения. |
Поиск по коду файла
#property indicator_chart_window
#property indicator_buffers 6
#property indicator_color1 clrLimeGreen
#property indicator_color2 clrLimeGreen
#property indicator_color3 clrLime
#property indicator_color4 clrLime
#property indicator_color5 clrLime
#property indicator_color6 clrLime
#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 3
#property indicator_width4 3
#property indicator_width5 3
#property indicator_width6 3
extern double Period1=15;
extern double Period2=30;
extern double Period3=60;
extern string Dev_Step_1="5,3";
extern string Dev_Step_2="10,6";
extern string Dev_Step_3="20,12";
extern int Symbol_1_Kod=119;//159 small round
extern int Symbol_2_Kod=159;
extern int Symbol_3_Kod=82;
extern string _____ ="";
extern bool BoxAlerts = False ;
extern bool EmailAlerts = True ;
extern bool SoundAlerts = False ;
extern bool AlertLv1 = True ;
extern bool AlertLv2 = True ;
extern bool AlertLv3 = True ;
string AlertLv1HighSoundFile = "stage one level high.wav"; //any soundfile
string AlertLv1LowSoundFile = "stage one level low.wav";
string AlertLv2HighSoundFile = "stage two level high.wav";
string AlertLv2LowSoundFile = "stage two level low.wav";
string AlertLv3HighSoundFile = "stage three level high.wav";
string AlertLv3LowSoundFile = "stage three level low.wav";
double FP_BuferUp[];
double FP_BuferDn[];
double NP_BuferUp[];
double NP_BuferDn[];
double HP_BuferUp[];
double HP_BuferDn[];
int F_Period;
int N_Period;
int H_Period;
int Dev1;
int Stp1;
int Dev2;
int Stp2;
int Dev3;
int Stp3;
string symbol, tChartPeriod, tShortName ;
int digits, period ;
bool Trigger1, Trigger2, Trigger3 ;
int OldBars = -1 ;
color tColor = Yellow ;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
return(0);
}
int start()
{
// код доступен только после оплаты
}
if( Bars != OldBars ) { Trigger1 = True ; Trigger2 = True ; Trigger3 = True ;}
if (Period1>0) CountZZ(FP_BuferUp,FP_BuferDn,Period1,Dev1,Stp1);
if (Period2>0) CountZZ(NP_BuferUp,NP_BuferDn,Period2,Dev2,Stp2);
if (Period3>0) CountZZ(HP_BuferUp,HP_BuferDn,Period3,Dev3,Stp3);
string alertlevel; string alertmessage;
alertmessage = symbol+" "+ tChartPeriod+ " at "+ DoubleToStr(Close[0] ,digits);
if ( Trigger1 && AlertLv1 )
{
if( FP_BuferUp[0] != 0 ) { Trigger1 = False ; alertlevel ="H1 ZZS: Level 1 Low; ";
if(BoxAlerts) Alert(alertlevel,alertmessage);
if(EmailAlerts) SendNotification(alertlevel + alertmessage);
if(SoundAlerts) PlaySound(AlertLv1LowSoundFile);
}
if( FP_BuferDn[0] != 0 ) { Trigger1 = False ; alertlevel ="H1 ZZS: Level 1 High; ";
if(BoxAlerts) Alert(alertlevel,alertmessage);
if(EmailAlerts) SendNotification(alertlevel + alertmessage);
if(SoundAlerts) PlaySound(AlertLv1HighSoundFile);
}
}
if ( Trigger2 && AlertLv2 )
{
if( NP_BuferUp[0] != 0 ) { Trigger2 = False ; alertlevel ="H1 ZZS: Level 2 Low; ";
if(BoxAlerts) Alert(alertlevel,alertmessage);
if(EmailAlerts) SendNotification(alertlevel + alertmessage);
if(SoundAlerts) PlaySound(AlertLv2LoПоказано первые 50% кода (символов: 6992)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.