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

semaforalert.mq5

Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Индикатор для MetaTrader 4, рассчитывающий три уровня анализа по модифицированному алгоритму ZigZag и отображающий результаты в виде стрелок на графике. Для каждого уровня используются собственные периоды, отклонения и шаги отката, что позволяет визуально выделять ключевые точки разворота на разных временных масштабах. Индикатор поддерживает три уровня оповещений (низкий и высокий для каждого уровня) с выводом в окно алертов, отправкой email и воспроизведением звуковых файлов.

Настройки программы

НастройкаОписание
Period1 Период 1 — Множитель базового периода для расчёта первого уровня индикатора
Period2 Период 2 — Множитель базового периода для расчёта второго уровня индикатора
Period3 Период 3 — Множитель базового периода для расчёта третьего уровня индикатора
1,3 (Dev_Step_1) Отклонение и шаг 1 — Два числовых значения через запятую, задающих отклонение и шаг отката для первого уровня
8,5 (Dev_Step_2) Отклонение и шаг 2 — Два числовых значения через запятую, задающих отклонение и шаг отката для второго уровня
13,8 (Dev_Step_3) Отклонение и шаг 3 — Два числовых значения через запятую, задающих отклонение и шаг отката для третьего уровня
Symbol_1_Kod Код символа 1 — Код символа стрелки для отображения сигналов первого уровня
Symbol_2_Kod Код символа 2 — Код символа стрелки для отображения сигналов второго уровня
Symbol_3_Kod Код символа 3 — Код символа стрелки для отображения сигналов третьего уровня
_____ Разделитель — Служебный текстовый параметр-разделитель в панели настроек
Получить полный код

Поиск по коду файла

#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   Box.Alerts      = false ;
extern bool   Email.Alerts    = false ;
extern bool   Sound.Alerts    = true ;

extern bool   Alert.Lv1    = false ;
extern bool   Alert.Lv2    = true ;
extern bool   Alert.Lv3    = true ;
string Alert.Lv1.High.SoundFile       =  "stage one level high.wav";  //any soundfile
string Alert.Lv1.Low.SoundFile        =  "stage one level low.wav";
string Alert.Lv2.High.SoundFile       =  "stage two level high.wav";
string Alert.Lv2.Low.SoundFile        =  "stage two level low.wav";
string Alert.Lv3.High.SoundFile       =  "stage three level high.wav";
string Alert.Lv3.Low.SoundFile        =  "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 alert.level;   string alert.message;

   alert.message = symbol+"  "+ tChartPeriod+ " at "+ DoubleToStr(Close[0] ,digits);

      if ( Trigger1 &&  Alert.Lv1 ) 
      {
        if( FP_BuferUp[0] != 0 ) {  Trigger1 = False ; alert.level =" ZZS: Level 1 Low;  "; 
                                    if(Box.Alerts)    Alert(alert.level,alert.message); 
                                    if(Email.Alerts)  SendMail(alert.level,alert.message);
                                    if(Sound.Alerts)  PlaySound(Alert.Lv1.Low.SoundFile); 
                                   }
        if( FP_BuferDn[0] != 0 ) {  Trigger1 = False ; alert.level =" ZZS: Level 1 High; ";
                                    if(Box.Alerts)    Alert(alert.level,alert.message); 
                                    if(Email.Alerts)  SendMail(alert.level,alert.message);
                                    if(Sound.Alerts)  PlaySound(Alert.Lv1.High.SoundFile);
                                   }
      }

      if ( Trigger2 &&  Alert.Lv2 ) 
      {
        if( NP_BuferUp[0] != 0 ) {  Trigger2 = False ; alert.level =" ZZS: Level 2 Low;  "; 
                                    if(Box.Alerts)    Alert(alert.level,alert.message); 
                                    if(Email.Alerts)  SendMail(alert.level,alert.message);
                                    if(Sound.Alerts)  PlaySound(Alert.Lv2.Low.SoundFile); 
             

Показано первые 50% кода (символов: 6987)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
698,70₽ ≈ $8.54