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

#4X 2010 Semafor

#4x 2010 semafor.mq4
Вы автор или правообладатель?

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

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

О программе

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

Продукт поддерживает три уровня уведомлений, которые могут быть отправлены через всплывающие окна, электронную почту или звуковые сигналы. Уровни уведомлений можно включать и отключать независимо друг от друга.

Индикатор работает на платформе MetaTrader 4 и обновляет расчёты при изменении количества баров на графике.

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

НастройкаОписание
Period1 Период 1 — Множитель первого периода расчёта индикатора, масштабируемый по текущему таймфрейму.
Period2 Период 2 — Множитель второго периода расчёта индикатора, масштабируемый по текущему таймфрейму.
Period3 Период 3 — Множитель третьего периода расчёта индикатора, масштабируемый по текущему таймфрейму.
_____ _____ — Разделитель-параметр без функционального назначения.
Получить полный код

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

#property indicator_chart_window 
#property indicator_buffers 6
#property indicator_color1 Lime 
#property indicator_color2 Red
#property indicator_color3 Yellow
#property indicator_color4 Yellow
#property indicator_color5 White
#property indicator_color6 White

#property indicator_width1 7
#property indicator_width2 7
#property indicator_width3 7
#property indicator_width4 7
#property indicator_width5 7
#property indicator_width6 7

extern double Period1=36; 
extern double Period2=60; 
extern double Period3=156; 
string   Dev_Step_1="2,5";
string   Dev_Step_2="2,5";
string   Dev_Step_3="2,5";
int Symbol_1_Kod=159;
int Symbol_2_Kod=82;
int Symbol_3_Kod=82;

extern string _____           ="";
extern bool   Box.Alerts      = false ;
extern bool   Email.Alerts    = false ;
extern bool   Sound.Alerts    = false ;

extern bool   Alert.Lv1    = false ;
extern bool   Alert.Lv2    = true ;
extern bool   Alert.Lv3    = true ;

string Alert.Lv1.High.SoundFile       =  "good-bad-ugly.wav";
string Alert.Lv1.Low.SoundFile        =  "good-bad-ugly.wav";
string Alert.Lv2.High.SoundFile       =  "good-bad-ugly.wav";
string Alert.Lv2.Low.SoundFile        =  "good-bad-ugly.wav";
string Alert.Lv3.High.SoundFile       =  "good-bad-ugly.wav";
string Alert.Lv3.Low.SoundFile        =  "good-bad-ugly.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); 
                                   }

        if( NP_BuferDn[0] != 0 ) { 

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

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

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

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

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

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

Стоимость полного кода
689,40₽ ≈ $8.43