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

divergence petr 1.mq5

Похожие материалы по тегам

pro +.pineTradingView · 3 общих теговofada_gold_trader_v230.mq5MQL5 / MetaTrader 5 · 3 общих теговmulti strategy algo combined by enigma mode.pineTradingView · 3 общих теговmelona ob strategy 6th update (by 3dots).pineTradingView · 3 общих теговsmc+ict+indicators+scalping master.pineTradingView · 3 общих теговpremium_super_scalping killer algo.pineTradingView · 3 общих тегов
Вы автор или правообладатель?

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

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

О программе

Данный продукт представляет собой пользовательский индикатор для платформы MetaTrader 4, который рассчитывает выбранный технический осциллятор (RSI, MACD, Stochastic, CCI и другие), применяет к нему сглаживание T3 и анализирует дивергенции и конвергенции между ценовыми экстремумами и экстремумами осциллятора. На индикаторном подокне отрисовываются линии трендов, каналы (регрессионные или на основе стандартного отклонения), а также уровни поддержки и сопротивления. Входной параметр Oscillator позволяет выбрать из более чем 30 встроенных осцилляторов или пользовательских индикаторов для анализа.

Индикатор поддерживает многоступенчатый анализ (до 3 шагов), настраиваемую глубину поиска экстремумов слева и справа, а также параметры отображения линий и каналов. Встроенные функции рисования MetaTrader 4 (OBJ_TREND, OBJ_REGRESSION, OBJ_STDDEVCHANNEL) используются для визуализации найденных паттернов. Все настройки доступны через диалог параметров индикатора в терминале.

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

НастройкаОписание
Osc Выбор осциллятора — Номер выбранного осциллятора для анализа (RSI, MACD, Stochastic и др.)
TH Линии тренда верхних значений — Включение построения линий тренда для верхних значений осциллятора
TL Линии тренда нижних значений — Включение построения линий тренда для нижних значений осциллятора
trend Тренд — Отображение основных линий тренда
convergen Конвергенция — Отображение линий конвергенции
Complect Комплекс — Номер комплекса (уровня) для группового отображения объектов
?????????? ????? ????? h (BackSteph) Шаг возврата для максимумов — Количество баров назад для поиска экстремумов в верхней части
?????????? ????? ????? l (BackStepl) Шаг возврата для минимумов — Количество баров назад для поиска экстремумов в нижней части
?????????? ????? ????? (BackStep) Общий шаг возврата — Общий параметр возврата при поиске экстремумов осциллятора
?????????? ???????????? ?????, ?? ????? 3? (qSteps) Количество шагов — Количество шагов анализа (максимум 3)
??????? ????? ???????; 2 = ??????????? ??? ????? ????(????) 2? ????? ????? (LevDPl) Глубина поиска слева — Глубина поиска экстремумов слева
??????? ????? ???????; 2 = ??????????? ??? ????? ????(????) 2? ????? ?????? (LevDPr) Глубина поиска справа — Глубина поиска экстремумов справа
period Период осциллятора — Период расчёта выбранного осциллятора
ma_method Метод усреднения — Метод усреднения для расчёта осциллятора
ma_shift Сдвиг скользящей — Сдвиг скользящей средней
applied_price Применяемая цена — Применяемая цена для расчёта осциллятора
mode Режим расчёта — Режим расчёта осциллятора
fast_ema_period Период быстрой EMA — Период быстрой экспоненциальной скользящей средней
slow_ema_period Период медленной EMA — Период медленной экспоненциальной скользящей средней
signal_period Период сигнальной линии — Период сигнальной линии MACD
Kperiod Период K стохастика — Период K стохастика
Dperiod Период D стохастика — Период сигнальной линии стохастика (D)
slowing Замедление стохастика — Параметр замедления стохастика
price_field Поле цены стохастика — Поле цены для расчёта стохастика
T3_Period Период T3 — Период сглаживания T3 для осциллятора
b Коэффициент T3 — Коэффициент сглаживания T3
???? = 0, ?? ????? ???????????? ??? ????? ??????? (showBars) Отображаемые бары — Количество баров, отображаемых на графике индикатора
LeftStrong Строгость слева — Строгий режим проверки условий слева при поиске экстремумов
RightStrong Строгость справа — Строгий режим проверки условий справа при поиске экстремумов
Anti Антифильтр — Активация антифильтра для уточнения обнаруженных паттернов
Trend_Down Нисходящий тренд — Отображение линий нисходящего тренда
Trend_Up Восходящий тренд — Отображение линий восходящего тренда
false = ????? ?????? ?? ????? (TrendLine) Линии тренда — Включение или отключение построения линий тренда и дивергенций
HandyColour Удобный выбор цветов — Автоматический выбор цветов линий вместо заданных вручную
Highline Цвет верхних линий — Цвет верхних линий тренда
Lowline Цвет нижних линий — Цвет нижних линий тренда
true = ??????? ?????????? ?????? ?????? ?????? (ChannelLine) Линии канала — Отображение линий границ канала
1 = ?????? ??? UpTrendLines, -1 = ?????? ??? DownTrendLines, 0 = ??? ???? TrendLines (Trend) Направление тренда — Направление тренда для построения линий (1 — восходящий, -1 — нисходящий, 0 — оба)
Channel Канал — Включение или отключение отображения канала
Regression Регрессия — Тип канала: регрессия или стандартное отклонение
RayH Луч верхней линии — Отображение луча для верхней линии канала
RayL Луч нижней линии — Отображение луча для нижней линии канала
ChannelH Цвет верхней линии канала — Цвет верхней границы канала
ChannelL Цвет нижней линии канала — Цвет нижней границы канала
Back Сдвиг назад — Смещение назад при анализе исторических данных
code Код стрелки — Код символа стрелки для маркировки точек на графике
ColorChanell Цвет линий тренда — Цвет основных линий тренда
Получить полный код

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

#property stacksize 16384
#property indicator_separate_window 
#property indicator_level1 75
#property indicator_level2 50
#property indicator_level3 25
#property indicator_level4 0
#property indicator_levelstyle STYLE_SOLID
#property indicator_levelcolor DimGray
#property indicator_buffers 3
#property indicator_color1 RoyalBlue
#property indicator_color2 OrangeRed 
#property indicator_color3 Lime
#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 2

extern int Osc=29;              /*1=Accelerator/Decelerator, 2=Accumulation/Distribution,
                                 3=Average Directional Movement Index, 4=Average True Range,
                                 5=Awesome oscillator, 6=Bears Power, 7=Bulls Power,
                                 8=Commodity Channel Index, 9=DeMarker, 10=Force Index,
                                 11=Momentum, 12=Money Flow Index, 13=Moving Averages Convergence/Divergence (MACD),
                                 14=Moving Average of Oscillator, 15=On Balance Volume,
                                 16=Relative Vigor Index, 17=Standard Deviation,
                                 18=Stochastic Oscillator, 19=Volume,
                                 20=Close, 21=Open, 22=High, 23=Low,
                                 24=(H+L)/2, 25=(H+L+C)/3, 26=(H+L+C+C)/4, 27=(O+C+H+L)/4, 28=(O+C)/2,
                                 29=Relative Strength Index, 30=RBCI, 31=FTLM, 32=STLM, 33=JRSX,34=Relative Strength Index,

                                 35=Williams' Percent Range,
                                 other=RBCI;*/ 

extern bool TH=true;
extern bool TL=true;

extern bool trend=true; 
extern bool convergen=true;       
extern int Complect=1;
int Complect10=10;
int Complect20=20;  
int Complect30=30;
int Complect40=40;  
int Complect50=50;
int Complect60=60; 
int Complect70=70;
int Complect80=80;

extern int BackSteph=0; // ?????????? ????? ????? h
extern int BackStepl=0; // ?????????? ????? ????? l
extern int BackStep=0; // ?????????? ????? ?????                       
extern int qSteps=1; // ?????????? ???????????? ?????, ?? ????? 3?

extern int LevDPl=5; // ??????? ????? ???????; 2 = ??????????? ??? ????? ????(????) 2? ????? ?????
extern int LevDPr=1; // ??????? ????? ???????; 2 = ??????????? ??? ????? ????(????) 2? ????? ??????
extern int period=8;
extern int ma_method=0;
extern int ma_shift=0;
extern int applied_price=4;
extern int mode=0;
extern int fast_ema_period=12;
extern int slow_ema_period=26;
extern int signal_period=9;
extern int Kperiod=13;
extern int Dperiod=5;
extern int slowing=3;
extern int price_field=0;
extern int  T3_Period = 1;  
extern double b = 0.7;
extern int showBars=1000; // ???? = 0, ?? ????? ???????????? ??? ????? ???????

extern bool LeftStrong=false;
extern bool RightStrong=true;
extern bool Anti=true;
extern bool Trend_Down=true;
extern bool Trend_Up=true;

extern bool TrendLine=true; // false = ????? ?????? ?? ?????
extern bool HandyColour=true;
extern color Highline=Red;
extern color Lowline=DeepSkyBlue;
extern bool ChannelLine=false; // true = ??????? ?????????? ?????? ?????? ??????
extern int Trend=0; // 1 = ?????? ??? UpTrendLines, -1 = ?????? ??? DownTrendLines, 0 = ??? ???? TrendLines 
extern bool Channel=false;
extern bool Regression=true;
extern bool RayH=true;
extern bool RayL=true;
extern color ChannelH=Red;
extern color ChannelL=DeepSkyBlue;
extern double STD.widthH=1.0;
extern double STD.widthL=1.0;
extern int Back=0;
bool comment=false;
extern int code=159;

extern color ColorChanell = Chartreuse;

double e1, e2, e3, e4, e5, e6;
double n, c1, c2, c3, c4, w1, w2, b2, b3;

int time2; double E1, E2, E3, E4, E5, E6;

double Oscil[], t3_Oscil[];
double Buf1[]; 
double Buf2[];

string Col[]={"???????","?????","???????","???????","??????????","????????"};
int ColNum[]={Red,DeepSkyBlue,Coral,Aqua,SaddleBrown,MediumSeaGreen};
int qPoint=0; // ?????????? ??? ???????????? ????

int qBars; double qTime=0; // ?????????? ??? ?????????? ?????? ??? ????????

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

int deinit() 
{
   if(comment) Comment("");

   for(int i=1;i<=qSteps;i++)
    {
      ObjectDelete("HL("+Complect+")_"+i+'_'+Osc);ObjectDelete("LL("+Complect+")_"+i+'_'+Osc);
      ObjectDelete("HCL("+Complect+")_"+i+'_'+Osc);ObjectDelete("LCL("+Complect+")_"+i+'_'+Osc);
      ObjectDelete("CHAh("+Complect+")_"+i+'_'+Osc);ObjectDelete("CHAl("+Complect+")_"+i+'_'+Osc);
    }
}

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

string TDMain(int Step)
{
   int H1,H2,H3,H4,H5,H6,H7,H8,H9,H10,H11,H12,H13,H14,Hb, L1,L2,L3,L4,L5,L6,L7,L8,L9,L10,L11,L12,L13,L14,Ls, qExt,i,col;
   double qTL,qLevel;
   string Comm="????? ??? "+Step+" ?? "+qSteps+" (BackStep "+BackStep+")\n",Text,Rem,Rem1,Rem2,Rem3,Rem4,Rem5,Rem6,Rem7,Rem8,qp;
   string Short_name; 
   switch(Osc)
     {
      case  1 : Short_name="AC";  break;
      case  2 : Short_name="A/D"; break;
      case  3 : Short_name="ADX"; break;
      case  4 : Short_name="ATR";  break;
      case  5 : Short_name="AO"; break;
      case  6 : Short_name="Bears"; break;
      case  7 : Short_name="Bulls";  break;
      case  8 : Short_name="CCI"; break;
      case  9 : Short_name="DeM"; break;
      case 10 : Short_name="Force";  break;
      case 11 : Short_name="Momentum"; break;
      case 12 : Short_name="MFI"; break;
      case 13 : Short_name="MACD";  break;
      case 14 : Short_name="OsMA"; break;
      case 15 : Short_name="OBV"; break;
      case 16 : Short_name="RVI"; break;
      case 17 : Short_name="StdDev"; break;
      case 18 : Short_name="Stoch";  break;
      case 19 : Short_name="Volume"; break;
      case 20 : Short_name="Close";  break;
      case 21 : Short_name="Open";  break;
      case 22 : Short_name="High"; break;
      case 23 : Short_name="Low"; break;
      case 24 : Short_name="Median Price";  break;
      case 25 : Short_name="Typical Price"; break;
      case 26 : Short_name="Weighted Close Price"; break;
      case 27 : Short_name="(O+C+H+L)/4";  break;
      case 29 : Short_name="RSI"; break;
      case 30 : Short_name="RBCI"; break;
      case 31 : Short_name="FTLM"; break;
      case 32 : Short_name="STLM"; break;
      case 33 : Short_name="JRSX Diver"; break;
      case 34 : Short_name="RSI"; break;

      case 35 : Short_name="WPR"; break;
      default : Short_name="RBCI";
     }

   if (Trend<=0)
    {
      Comm=Comm+"? "+Col[Step*2-2]+" DownTrendLine ";
      if(HandyColour) col=Highline; else col=ColNum[Step*2-2];
      H1=GetTD(Step+BackSteph,Buf1);
      H2=GetNextHighTD(H1);
      H3=GetNextHighTD(H2);
      H4=GetNextHighTD(H3);
      H5=GetNextHighTD(H4);
      H6=GetNextHighTD(H5);
      H7=GetNextHighTD(H6);
      H8=GetNextHighTD(H7);
      H9=GetNextHighTD(H8);
      H10=GetNextHighTD(H9);
      H11=GetNextHighTD(H10);
      H12=GetNextHighTD(H11);
      H13=GetNextHighTD(H12);
      H14=GetNextHighTD(H13);

      qTL=(t3_Oscil[H2]-t3_Oscil[H1])/(H2-H1);
      int n, sn, r, result;
      for(n=1, r=H1+1; n<H2-H1-1; n++)
       {
        sn=H1+1+n;
        if(t3_Oscil[r]<t3_Oscil[sn]) result=r;
        else result=sn;
        r=result;
       }
      double Complect1, Complect2,Complect3, Complect4, Complect5,Complect6, Complect7, Complect8, buy,sell, buy1,sell1; 
       if (Complect>0)
       {Complect1=Complect+Complect10;
       Complect2=Complect+Complect20;
       Complect3=Complect+Complect30;
       Complect4=Complect+Complect40;
       Complect5=Complect+Complect50;
       Complect6=Complect+Complect60;
       Complect7=Complect+Complect70;
       Complect8=Complect+Complect80;
       }

      qExt=r; // ????????? ??????? ????? ???????

      Comm=Comm+"\n";
         int indicatorWindow = WindowFind(Short_name);
         Rem="HL("+Complect+")_"+Step +'_'+Osc; 
         Rem1="HL("+Complect8+")_"+Step +'_'+Osc; 
         Rem2="HL("+Complect1+")_"+Step +'_'+Osc;
         Rem3="HL("+Complect2+")_"+Step +'_'+Osc;
         Rem4="HL("+Complect3+")_"+Step +'_'+Osc;
         Rem5="HL("+Complect4+")_"+Step +'_'+Osc;
         Rem6="HL("+Complect5+")_"+Step +'_'+Osc;
         Rem7="HL("+Complect6+")_"+Step +'_'+Osc;
         Rem8="HL("+Complect7+")_"+Step +'_'+Osc;

        if (trend==true && Oscil[H2] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H2]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H2]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          }

         else if (trend==true && Oscil[H3] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H3]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H3]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

        else if (trend==true && Oscil[H4] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H4]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H4]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

        else if (trend==true && Oscil[H5] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H5]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H5]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          }

         else if (trend==true && Oscil[H6] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H6]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H6]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

         else if (trend==true && Oscil[H7] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H7]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H7]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

         else if (trend==true && Oscil[H8] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H8]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H8]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

          else if (trend==true && Oscil[H9] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H9]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H9]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

          else if (trend==true && Oscil[H10] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H10]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H10]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

          else if (trend==true && Oscil[H11] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H11]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H11]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

          else if (trend==true && Oscil[H12] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H12]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H12]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          }

          else if (trend==true && Oscil[H13] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H13]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H13]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 

          else if (trend==true && Oscil[H14] > Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H14]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H14]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 
          else if (trend==true && Oscil[H2] < Oscil[H1] && Oscil[H3] < Oscil[H1] && Oscil[H4] < Oscil[H1] && Oscil[H5] < Oscil[H1] && 
          Oscil[H6] < Oscil[H1] && Oscil[H7] < Oscil[H1] && Oscil[H8] < Oscil[H1] && Oscil[H9] < Oscil[H1] && Oscil[H10] < Oscil[H1] && 
          Oscil[H11] < Oscil[H1] && Oscil[H12] < Oscil[H1] && Oscil[H13] < Oscil[H1] && Oscil[H14] < Oscil[H1]) // ?????????? ????? ??????
          {
            ObjectCreate(Rem,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem,OBJPROP_TIME1,Time[H1]);ObjectSet(Rem,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem,OBJPROP_PRICE1,t3_Oscil[H1]);ObjectSet(Rem,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem,OBJPROP_COLOR,ColorChanell);
            ObjectSet(Rem,OBJPROP_WIDTH,3-MathMax(4,Step));
          } 
           else    ObjectDelete(Rem);      

        if (TrendLine && Oscil[H2] > Oscil[H1] && High[H2] < High[H1])// ?????????? diver
          { 
            ObjectCreate(Rem1,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem1,OBJPROP_TIME1,Time[H2]);
            ObjectSet(Rem1,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem1,OBJPROP_PRICE1,t3_Oscil[H2]);
            ObjectSet(Rem1,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem1,OBJPROP_COLOR,Red);
            ObjectSet(Rem1,OBJPROP_WIDTH,2);
            ObjectSet(Rem1,OBJPROP_RAY,false);
            sell = true;  
          }          

        else if (convergen==true && TrendLine && Oscil[H2] < Oscil[H1] && High[H2] > High[H1] )
          {
            ObjectCreate(Rem1,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem1,OBJPROP_TIME1,Time[H2]);ObjectSet(Rem1,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem1,OBJPROP_PRICE1,t3_Oscil[H2]);ObjectSet(Rem1,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem1,OBJPROP_COLOR,Gold);
            ObjectSet(Rem1,OBJPROP_WIDTH,2);
            ObjectSet(Rem1,OBJPROP_RAY,false); 
            sell = true;
          }
         else    ObjectDelete(Rem1);        

 if (TrendLine && TH==true  &&  Oscil[H2] < Oscil[H1] && High[H2] < High[H1] &&  
                              Oscil[H3] > Oscil[H1] && High[H3] < High[H1]&& High[H3] > High[H2])
          {
            ObjectCreate(Rem2,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem2,OBJPROP_TIME1,Time[H3]);ObjectSet(Rem2,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem2,OBJPROP_PRICE1,t3_Oscil[H3]);ObjectSet(Rem2,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem2,OBJPROP_COLOR,Red);
            ObjectSet(Rem2,OBJPROP_WIDTH,2);
            ObjectSet(Rem2,OBJPROP_RAY,false);

           } 
 else if (convergen==true && TrendLine && TH==true  &&  Oscil[H2] < Oscil[H1] && High[H2] < High[H1] &&  
                              Oscil[H3] < Oscil[H1] && High[H3] > High[H1]&& High[H3] > High[H2] &&  Oscil[H3] > Oscil[H2])
          {
            ObjectCreate(Rem2,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem2,OBJPROP_TIME1,Time[H3]);ObjectSet(Rem2,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem2,OBJPROP_PRICE1,t3_Oscil[H3]);ObjectSet(Rem2,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem2,OBJPROP_COLOR,Gold);
            ObjectSet(Rem2,OBJPROP_WIDTH,2);
            ObjectSet(Rem2,OBJPROP_RAY,false); 

           }           

        else    ObjectDelete(Rem2);

 if (TrendLine && TH==true  &&  Oscil[H2] < Oscil[H1] && High[H2] < High[H1] &&  Oscil[H3] < Oscil[H1] && 
                                 High[H3] < High[H1] &&  Oscil[H4] > Oscil[H1] && 
                                 High[H4] < High[H1] && High[H4] > High[H3] && High[H4] > High[H2])
          {
            ObjectCreate(Rem3,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem3,OBJPROP_TIME1,Time[H4]);ObjectSet(Rem3,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem3,OBJPROP_PRICE1,t3_Oscil[H4]);ObjectSet(Rem3,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem3,OBJPROP_COLOR,Red);
            ObjectSet(Rem3,OBJPROP_WIDTH,2);
            ObjectSet(Rem3,OBJPROP_RAY,false); 
           }
else if (convergen==true && TrendLine && TH==true  &&  Oscil[H2] < Oscil[H1] && High[H2] < High[H1] &&  Oscil[H3] < Oscil[H1] && 
                                 High[H3] < High[H1] &&  Oscil[H4] < Oscil[H1] && 
                                 High[H4] > High[H1] && High[H4] > High[H3] && High[H4] > High[H2] &&  Oscil[H4] > Oscil[H2] &&  Oscil[H4] > Oscil[H3])
          {
            ObjectCreate(Rem3,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem3,OBJPROP_TIME1,Time[H4]);ObjectSet(Rem3,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem3,OBJPROP_PRICE1,t3_Oscil[H4]);ObjectSet(Rem3,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem3,OBJPROP_COLOR,Gold);
            ObjectSet(Rem3,OBJPROP_WIDTH,2);
            ObjectSet(Rem3,OBJPROP_RAY,false); 
           }          

        else    ObjectDelete(Rem3);      

if (TrendLine && TH==true  &&  Oscil[H2] < Oscil[H1] && High[H2] < High[H1] &&  Oscil[H3] < Oscil[H1] && 
                              High[H3] < High[H1]&& 
                              Oscil[H4] < Oscil[H1] && High[H4] < High[H1] && 
                              Oscil[H5] > Oscil[H1] && High[H5] < High[H1] && High[H5] > High[H4] && High[H5] > High[H3] && High[H5] > High[H2])
          {
            ObjectCreate(Rem4,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem4,OBJPROP_TIME1,Time[H5]);ObjectSet(Rem4,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem4,OBJPROP_PRICE1,t3_Oscil[H5]);ObjectSet(Rem4,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem4,OBJPROP_COLOR,Red);
            ObjectSet(Rem4,OBJPROP_WIDTH,2);
            ObjectSet(Rem4,OBJPROP_RAY,false);
           }  
else if (convergen==true && TrendLine && TH==true  &&  Oscil[H2] < Oscil[H1] && High[H2] < High[H1] &&  Oscil[H3] < Oscil[H1] && 
                              High[H3] < High[H1]&& 
                              Oscil[H4] < Oscil[H1] && High[H4] < High[H1] && 
                              Oscil[H5] < Oscil[H1] && High[H5] > High[H1] && High[H5] > High[H4] && High[H5] > High[H3] && High[H5] > High[H2] &&  
                              Oscil[H5] > Oscil[H2] && Oscil[H5] > Oscil[H3] && Oscil[H5] > Oscil[H4])
          {
            ObjectCreate(Rem4,OBJ_TREND,indicatorWindow,0,0,0,0);
            ObjectSet(Rem4,OBJPROP_TIME1,Time[H5]);ObjectSet(Rem4,OBJPROP_TIME2,Time[H1]);
            ObjectSet(Rem4,OBJPROP_PRICE1,t3_Oscil[H5]);ObjectSet(Rem4,OBJPROP_PRICE2,t3_Oscil[H1]);
            ObjectSet(Rem4,OBJPROP_COLOR,Gold);
            ObjectSet(Rem4,OBJPROP_WIDTH,2);
            ObjectSet(Rem4,OBJPROP_RAY,false); 
           }                  

        else    ObjectDelete(Rem4);    

if (TrendLine && TH==true  &&  Oscil[H2] < Oscil[H1] && High[H2] < High[H1] &&  Oscil[H3] < Oscil[H1] && High[H3] < High[H1]&& 
                  Oscil[H4] < Oscil[H1] && High[H4] < High[H1]&& Oscil[H5] < Oscil[H1] && High[H5] < High[H1]&& 
                  Oscil[H6] > Oscil[H1]  && High[H6] < High[H1]  && High[H6] > High[H5] && High[H6] > High[H4] && High[H6] > High[H3] && High[H6] > High[H2])
          {
            ObjectCreate(Rem5,OBJ_TREND,indicatorWindow,0,0,0,0);
 

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

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

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

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

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

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

Стоимость полного кода
4 544,90₽ ≈ $55.55