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

OBOS ZZ

digital obos zz.mq4
Вы автор или правообладатель?

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

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

О программе

Индикатор для MetaTrader 4, выполняющий аналитический расчёт на основе разворотов ценовых свингей. Отображает сигналы в виде стрелок и линий на графике, а также выводит текстовые метки направления тренда и уровни.

Встроенная система звуковых уведомлений срабатывает при появлении новых сигналов. На графике отрисовываются горизонтальные уровни — стартовая цена, стоп и несколько целевых уровней, обновляемые при каждом новом свинге.

Индикатор использует несколько буферов для отрисовки различных элементов: стрелки разворотов, линии трендов и вспомогательные расчётные линии. Параметры полностью настраиваются через входные параметры.

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

НастройкаОписание
barn barn — Количество баров, используемых для начального анализа
LengthB LengthB — Длина внутреннего периода для определения локальных экстремумов ценовых свингей
LengthK LengthK — Длина периода для определения краткосрочных разворотов
SoundAlertMode SoundAlertMode — Включает или отключает звуковые уведомления о сигналах
Soundonly Soundonly — Режим ограничения звуковых уведомлений
period period — Период для расчёта максимумов и минимумов вспомогательных линий
shifts shifts — Горизонтальный сдвиг отрисовки индикатора
bar bar — Максимальное количество баров, участвующих в расчёте
Получить полный код

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

#property indicator_chart_window
#property indicator_buffers 8
#property indicator_color1 Blue
#property indicator_width1 1
#property indicator_color2 DarkOrange
#property indicator_width2 2
#property indicator_color3 DeepPink
#property indicator_width3 0
#property indicator_color4 DeepSkyBlue
#property indicator_width4 0
#property indicator_color5 SlateGray
#property indicator_width5 0
#property indicator_color6 Lime
#property indicator_width6 0
#property indicator_color7 DeepSkyBlue
#property indicator_width7 0
#property indicator_color8 Lime
#property indicator_width8 0

extern int     barn=1000;
extern int     LengthB=60;
extern int     LengthK=12;
double prev;
double last;
double alertBar;
extern int SoundAlertMode = 1;
extern int Soundonly = 1;
extern int period = 21;
extern int shifts = 0;
extern int bar = 2000;
double u1 = 0.0;
double u2 = 0.0;
double G_ibuf_104[];
double G_ibuf_108[];
double G_ibuf_112[];
double G_ibuf_116[];
double G_ibuf_120[];
double G_ibuf_124[];
double G_ibuf_128[];

bool targets = false;

double previ;
double lasti;
double alertBar1;
bool targetsi = false;

int sim=0;
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
int PipValue=1;

int init()
  {
      // код доступен только после оплаты
   }

int deinit()
  {

   ObjectDelete("Start line");
   ObjectDelete("Stop line");
   ObjectDelete("Target1 line");
   ObjectDelete("Target2 line");
   ObjectDelete("Target3 line");
   ObjectDelete("info0");
   ObjectDelete("info1");
   ObjectDelete("info2");
   ObjectDelete("info3");
   ObjectDelete("ss");
   ObjectDelete("bs");
   ObjectDelete("scalpss");
   ObjectDelete("scalpbs");
   ObjectDelete("Judul");
   ObjectDelete("warning");
   ObjectDelete("Spread");
   return(0);
  }

int start()
  {
      // код доступен только после оплаты
   }

   int    counted_bars=IndicatorCounted();
   int shift,Swing,Swing_n,uzl,i,zu,zd,mv;
   double PointA,PointB,PointC,Target1,Target2,Target3,Fantnsy,CrazyDream,Start,Stop;
   double LL,HH,BH,BL; 
   double Uzel[10000][3]; 

      Swing_n=0;Swing=0;uzl=0; 
      BH =High[barn];BL=Low[barn];zu=barn;zd=barn; 

for (shift=barn;shift>=0;shift--) { 
      LL=10000000;HH=-100000000; 
   for (i=shift+LengthK;i>=shift+1;i--) { 
         if (Low[i]< LL) {LL=Low[i];} 
         if (High[i]>HH) {HH=High[i];} 
   } 

   if (Low[shift]<LL && High[shift]>HH){ 
      Swing=2; 
      if (Swing_n==1) {zu=shift+1;} 
      if (Swing_n==-1) {zd=shift+1;} 
   } else { 
      if (Low[shift]<LL) {Swing=-1;} 
      if (High[shift]>HH) {Swing=1;} 
   } 

   if (Swing!=Swing_n && Swing_n!=0) { 
   if (Swing==2) {
      Swing=-Swing_n;BH = High[shift];BL = Low[shift]; 
   } 
      uzl=uzl+1; 
   if (Swing==1) {
      Uzel[uzl][1]=zd;
      Uzel[uzl][2]=BL;
   } 
   if (Swing==-1) {
      Uzel[uzl][1]=zu;
      Uzel[uzl][2]=BH; 
   } 
      BH = High[shift];
      BL = Low[shift]; 
   } 

   if (Swing==1) { 
      if (High[shift]>=BH) {BH=High[shift];zu=shift;}} 
      if (Swing==-1) {
          if (Low[shift]<=BL) {BL=Low[shift]; zd=shift;}} 
      Swing_n=Swing; 
   } 
   for (i=1;i<=uzl;i++) { 

         mv=StrToInteger(DoubleToStr(Uzel[i][1],0));

      if(prev > Uzel[i][2] && ExtMapBuffer1[mv]!=Uzel[i][2] && SoundAlertMode > 0 && Bars>alertBar) {sim=3;Alert("BUY Signal on ",Symbol()," Period ",Period());alertBar = Bars;}
      if(prev < Uzel[i][2] && ExtMapBuffer1[mv]!=Uzel[i][2] && SoundAlertMode > 0 && Bars>alertBar) {sim=4;Alert("SELL Signal on ",Symbol()," Period ",Period());alertBar = Bars;}

      ExtMapBuffer1[mv]=Uzel[i][2];
      prev=Uzel[i][2];

   } 

PointA = Uzel[uzl-2][2];
PointB = Uzel[uzl-1][2];
PointC = Uzel[uzl][2];

Target1=NormalizeDouble((PointB-PointA)*0.618+PointC,4);
Target2=PointB-PointA+PointC;
Target3=NormalizeDouble((PointB-PointA)*1.618+PointC,4);
Fantnsy=NormalizeDouble((PointB-PointA)*2.618+PointC,4);
CrazyDream=NormalizeDouble((PointB-PointA)*4.618+PointC,4);
if (PointB<PointC)
{
Start= NormalizeDouble((PointB-PointA)*0.118+PointC,4)-(Ask-Bid);
Stop=PointC+2*(Ask-Bid);
}
if (PointB>PointC)
{
Start= NormalizeDouble((PointB-PointA)*0.118+PointC,4)+(Ask-Bid);
Stop=PointC-2*(Ask-Bid);
}

   if (ObjectFind("Start Line") != 0 && targets == true) 
     {
      ObjectCreate("Start line",OBJ_HLINE,0,Time[0],Start);
      ObjectSet("Start line",OBJPROP_COLOR,Bisque);
      ObjectSet("Start line",OB

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

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

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

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

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

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

Стоимость полного кода
889₽ ≈ $10.87