← К каталогу
Исходный код · ID 4618

#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 и перейдите к оплате.

Стоимость полного кода
699,20₽ ≈ $8.69