#4x 3 semafor alert - repaired.mq5
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «#4x 3 semafor alert - repaired.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Этот пользовательский индикатор для MetaTrader 5 отображает на графике ценовые метки, рассчитанные по трём независимым наборам параметров. Каждый набор формирует собственные уровни, которые выводятся в виде стрелок на свечах. Индикатор предназначен для визуального анализа рыночных движений и привлечения внимания трейдера к моментам смены локальных экстремумов.
Индикатор поддерживает гибкую настройку: для каждого из трёх уровней можно задать период расчёта, параметры отклонения и шага, а также выбрать код символа для отображения стрелок. Дополнительно можно включить или отключить уведомления для каждого уровня отдельно.
При появлении новых сигналов на текущей свече индикатор может подавать звуковой сигнал, выводить всплывающее окно и отправлять электронное письмо. Все типы оповещений управляются независимыми переключателями. Индикатор не выполняет торговых операций и предназначен только для информирования пользователя.
Настройки программы
| Настройка | Описание |
|---|---|
| Period1 | Период расчёта для первого уровня индикатора. Если значение больше нуля, первый уровень отображается на графике. |
| Period2 | Период расчёта для второго уровня индикатора. Если значение больше нуля, второй уровень отображается на графике. |
| Period3 | Период расчёта для третьего уровня индикатора. Если значение больше нуля, третий уровень отображается на графике. |
| Dev_Step_1 | Строка с двумя числами через запятую, задающая параметры отклонения и шага для расчёта первого уровня индикатора. Первое число — отклонение, второе — шаг. |
| Dev_Step_2 | Строка с двумя числами через запятую, задающая параметры отклонения и шага для расчёта второго уровня индикатора. Первое число — отклонение, второе — шаг. |
| Dev_Step_3 | Строка с двумя числами через запятую, задающая параметры отклонения и шага для расчёта третьего уровня индикатора. Первое число — отклонение, второе — шаг. |
| Symbol_1_Kod | Числовой код символа (стрелки) для отображения сигналов первого уровня индикатора. |
| Symbol_2_Kod | Числовой код символа (стрелки) для отображения сигналов второго уровня индикатора. |
| Symbol_3_Kod | Числовой код символа (стрелки) для отображения сигналов третьего уровня индикатора. |
| _____ | Пустой строковый параметр, используемый как разделитель в списке входных параметров. Не влияет на работу индикатора. |
| BoxAlerts | Включает или отключает вывод всплывающего окна с предупреждением при появлении нового сигнала индикатора. |
| EmailAlerts | Включает или отключает отправку электронного письма при появлении нового сигнала индикатора. |
| SoundAlerts | Включает или отключает воспроизведение звукового файла при появлении нового сигнала индикатора. |
| AlertLv1 | Включает или отключает уведомления для первого уровня индикатора. При значении true и появлении нового сигнала на первом уровне будут срабатывать выбранные типы оповещений. |
| AlertLv2 | Включает или отключает уведомления для второго уровня индикатора. При значении true и появлении нового сигнала на втором уровне будут срабатывать выбранные типы оповещений. |
| AlertLv3 | Включает или отключает уведомления для третьего уровня индикатора. При значении true и появлении нового сигнала на третьем уровне будут срабатывать выбранные типы оповещений. |
Поиск по коду файла
#property indicator_chart_window
#property indicator_buffers 6
#property indicator_color1 Lime
#property indicator_color2 OrangeRed
#property indicator_color3 Yellow
#property indicator_color4 Yellow
#property indicator_color5 White
#property indicator_color6 Red
#property indicator_width1 6
#property indicator_width2 6
#property indicator_width3 7
#property indicator_width4 7
#property indicator_width5 7
#property indicator_width6 7
extern double Period1=5;
extern double Period2=12;
extern double Period3=35;
extern string Dev_Step_1="5,3"; //1,3
extern string Dev_Step_2="5,3"; //8,5
extern string Dev_Step_3="5,3";//13,8
extern int Symbol_1_Kod=159;
extern int Symbol_2_Kod=159;
extern int Symbol_3_Kod=82;
extern string _____ ="";
extern bool BoxAlerts = false ;
extern bool EmailAlerts = false ;
extern bool SoundAlerts = true ;
extern bool AlertLv1 = false ;
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 =" ZZS: Level 1 Low; ";
if(BoxAlerts) Alert(alertlevel,alertmessage);
if(EmailAlerts) SendMail(alertlevel,alertmessage);
if(SoundAlerts) PlaySound(AlertLv1LowSoundFile);
}
if( FP_BuferDn[0] != 0 ) { Trigger1 = False ; alertlevel =" ZZS: Level 1 High; ";
if(BoxAlerts) Alert(alertlevel,alertmessage);
if(EmailAlerts) SendMail(alertlevel,alertmessage);
if(SoundAlerts) PlaySound(AlertLv1HighSoundFile);
}
}
if ( Trigger2 && AlertLv2 )
{
if( NP_BuferUp[0] != 0 ) { Trigger2 = False ; alertlevel =" ZZS: Level 2 Low; ";
if(BoxAlerts) Alert(alertlevel,alertmessage);
if(EmailAlerts) SendMail(alertlevel,alertmessage);
if(SoundAlerts) PlaySound(AlertLv2LowSoundFile);
Показано первые 50% кода (символов: 6901)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.