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

mt4 elliot wave.mq5

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

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

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

О программе

Программный продукт представляет собой торговый советник для платформы MetaTrader 4, написанный на языке MQL4. Основное назначение — визуальный анализ ценовых данных с использованием концепций эллиптических волн: продукт строит на графике волновые структуры покупок и продаж, уровни целей, фибоначчи-зоны и мини-тренды.

Советник работает в рамках обработчика start(), перебирая бары и обновляя графические объекты на каждом новом баре. Он поддерживает несколько режимов отрисовки, управляемых настройками, включая отображение фибоначчи-уровней волн, целевых уровней и мини-трендов. Внутренние параметры позволяют задавать глубину анализа, начальные точки отрисовки и секторные границы.

Продукт не выполняет автоматических торговых операций и не отправляет ордера. Он предназначен исключительно для аналитической визуализации на графике. При деинициализации советник удаляет все созданные графические объекты и сбрасывает служебные глобальные переменные.

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

НастройкаОписание
Block_1 Блок 1 — Текстовый параметр-группировка для настроек первого блока.
History Глубина истории — Задаёт глубину истории (количество баров) для анализа. По умолчанию — 1000.
Block_2 Блок 2 — Текстовый параметр-группировка для настроек второго блока.
Begin_draw_down Начало отрисовки вниз — Задаёт начальную глубину отрисовки нисходящих волновых структур (минимальное значение — 2).
Begin_draw_up Начало отрисовки вверх — Задаёт начальную глубину отрисовки восходящих волновых структур (минимальное значение — 2).
Sektor_bar Бар сектора — Задаёт границу сектора для анализа. Если значение меньше минимального порога, оно корректируется автоматически.
f_period_draw Период отрисовки — Задаёт период отрисовки (от 0 до 13). При некорректных значениях используется значение по умолчанию.
clear_opposite Очистка противоположных — Параметр, управляющий очисткой противоположных волновых структур. При значении 0 очистка отключена.
Block_3 Блок 3 — Текстовый параметр-группировка для настроек третьего блока.
Wawe_bar Бар волны — Задаёт длину бара для волнового анализа. Минимальное допустимое значение — 9, нечётные значения корректируются до чётных.
f_draw_wawe_fibo Отрисовка фибоначчи волн — Переключатель (true/false) для отображения фибоначчи-уровней волн.
f_draw_target_level Отрисовка целевых уровней — Переключатель (true/false) для отображения целевых уровней волн.
Block_4 Блок 4 — Текстовый параметр-группировка для настроек четвёртого блока.
DM_sdvig Сдвиг DM — Параметр сдвига для анализа DM-структур (наборов и хвостов).
DM_xvost DM хвост — Параметр, определяющий количество шагов для анализа DM-хвостов.
Block_5 Блок 5 — Текстовый параметр-группировка для настроек пятого блока.
f_draw_mini_trend Отрисовка мини-тренда — Переключатель (true/false) для отображения мини-трендов на графике.
Получить полный код

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

/*
   Generated by EX4-TO-MQ4 decompiler ONE FILE V4.0.217.1
   EX4 ID : 838AF1728B9FEA5CA5528DAD081CBC9E
   Website: 
   E-mail : p******m*@gmail.com
*/

extern string Block_1 = "????? ?????? ??? ???????";
extern int History = 1000;
extern string Block_2 = "?????? ?? ???????";
extern int Begin_draw_down = 5;
extern int Begin_draw_up = 5;
extern int Sektor_bar = 13;
extern int f_period_draw = 1;
extern int clear_opposite = 4;
extern string Block_3 = "?????? ?? ????? ?????";
extern int Wawe_bar = 21;
extern bool f_draw_wawe_fibo = TRUE;
extern bool f_draw_target_level = TRUE;
extern string Block_4 = "?????? ?? ???????????? ?????";
extern int DM_sdvig = 7;
extern int DM_xvost = 10;
extern string Block_5 = "?????? ?? ???????? ???";
extern bool f_draw_mini_trend = false;

int MA_Per = 55;

int gia_184[10];
int gia_188[10];
int gi_192;
int gi_196;
int gi_200;
int gi_204;
int gi_208;
int gi_212;
int gia_216[10];
int gia_220[10];
int gia_224[10];
int gia_228[10];
int gia_232[10];
int gia_236[10];
int gia_240[7];
double gda_244[7];
int gia_248[7];
double gda_252[7];
int gia_256[10][5];
int gia_260[10][30];
double gda_264[10][30];
double gda_268[10][30];
double gda_272[10][30];
int gia_276[10][30];
int gia_280[10][5];
int gia_284[10][30];
double gda_288[10][30];
double gda_292[10][30];
double gda_296[10][30];
int gia_300[10][30];
int gia_304[10];
int gia_308[10];
int gia_312[10];
int gia_316[10];
int gi_320;
int g_count_324 = 0;
double gda_unused_328[10];
int gi_332 = 0;
int gi_336 = 0;
double gd_340;
double gd_348;
int gi_unused_356 = 0;
int g_time_360 = 0;
int gi_364 = 3;
int gi_368 = 3;
int gi_372 = 3;
int gi_376 = 3;
int gia_380[10];
string gs_384;
string gs_392;
int gi_400 = 0;
int gi_404;
int gi_408;
int gi_412 = 0;
int gi_unused_416 = 0;
int gi_420 = 0;
int gi_424 = 0;
double gd_428;
int gi_436 = 0;
int gi_440 = 0;
int gi_444 = 0;
int gi_448 = 0;
int gi_unused_452 = 0;
int gi_unused_456;
int gi_460;
int gi_unused_464;
int gi_468;
int gi_472;
int gi_476;
int gi_480;
int gi_unused_484;
bool gi_488;
int gia_492[10];
int gia_496[10];
int gia_500[10];
int g_count_504;
datetime gt_unused_508;
int gi_unused_512;
int gi_unused_516;
int gia_520[5];
int gia_524[5];

int gi_532 = 0;
int gi_536;
int gi_540;
int gi_544;
int gi_548 = 0;
int gia_552[10];
int gia_556[10];
int gia_560[10];
int gia_564[10];
int gi_568 = 0;
string gs_572 = "";
string gs_580 = "";
string gs_unused_588 = "";
string gs_unused_596 = "";
string gs_unused_604 = "";
string gs_unused_612 = "";
int gi_76 = 5;
int gi_80 = 0;
int g_error_84;
string g_name_88;
color g_color_96;
int gi_100 = 1;
int gi_104 = 1;
int gi_108;
int gi_112 = 1;
int gi_116 = 254;
int g_x_120;
int gi_124 = 1;

int      var_76 = 0;
int      var_80 = 0;
int      var_84 = 0;
int      var_88 = 0;
int      var_92 = 0;
int      var_96 = 0;
int      var_100 = 0;
int      var_104 = 0;
int      var_108 = 0;
int      var_112 = 0;
int      var_116 = 0;
int      var_120 = 0;
int      var_124;
int      var_128;
int      var_132;
int      var_136;
int      var_140;
int      var_144;
int      var_148 = 0;
double   var_152 = 1.618;
double   var_160 = 2;
double   var_168 = 2.618;
double   var_176 = 4.235;
int      var_184 = 1;
int      var_188 = 0;
int      var_192 = 0;
int      var_196;
int      var_200;
int      var_204;
int      var_208;
int      var_212;
int      var_216;
int      var_220 = 0;
double   var_224 = 1.618;
double   var_232 = 2;
double   var_240 = 2.618;
double   var_248 = 4.235;
int      var_256 = 1;
int      var_260 = 0;
int      var_264 = 0;
int      I;
int      var_272;
int      arr_276[9];
int      var_280 = Aqua;
double   var_284;
double   var_292;
double   var_300;
int      var_308;
int      var_312;
int      var_316 = 0;
int      var_320 = 0;
int      J;
int      var_328;
int      arr_332[9];
int      var_336 = Aqua;
double   var_340;
double   var_348;
double   var_356;
int      var_364;
int      var_368;
int      var_372 = 0;
int      var_376 = 0;
int      var_380;
int      var_384;
int      var_388;
int      var_392;
int      arr_396[3,4];
double   arr_400[3,4];
double   arr_404[3,4];
int      var_408;
int      var_412;
int      var_416;
int      var_420;
int      arr_424[3,4];
double   arr_428[3,4];
double   arr_432[3,4];
string   var_436;
string   var_444;
string   var_452;
string   var_460;
double   var_468;
double   var_476;
double   var_484;
double   var_492;
double   var_500;
double   var_508;
double   var_516;
double   var_524;
int      var_532;
int      var_536;
int      var_540;
int      var_544;
int      var_548;
int      var_552;
int      var_556;
int      var_560;
int      var_564;
int      var_568;

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

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

int deinit() {
   if (gi_420 == FALSE) {

      ObjectsDeleteAll(0, OBJ_TRIANGLE);
      ObjectsDeleteAll(0, OBJ_TREND);
      ObjectsDeleteAll(0, OBJ_ARROW);
      ObjectsDeleteAll(0, OBJ_LABEL);
      if (f_draw_wawe_fibo == TRUE) {
         ObjectDelete("MyFibo_sell-" + DoubleToStr(0, 0));
         ObjectDelete("MyFibo_buy-" + DoubleToStr(0, 0));
      }
      if (f_draw_target_level) {
         ObjectDelete("Target_up_" + DoubleToStr(3, 0));
         ObjectDelete("Target_up_" + DoubleToStr(4, 0));
         ObjectDelete("Target_down_" + DoubleToStr(3, 0));
         ObjectDelete("Target_down_" + DoubleToStr(4, 0));
      }
   } else //Comment("???????????????. ???????? ?????. ??????? ??????? ?? ????????????.");
   GlobalVariableSet("MT4_Ekspert_load_" + gs_392 + gs_384, 0);
   GlobalVariableSet("MT4_Ekspert_start_" + gs_392 + gs_384, 0);
   GlobalVariableSet("MT4_Ekspert_work_" + gs_392 + gs_384, 0);
   return (0);
}

int gt_color_user(int &aia_0[], int &aia_4[], int ai_unused_8, int ai_unused_12, int ai_unused_16, int ai_unused_20, int ai_unused_24, int ai_unused_28, int &aia_32[], int &aia_36[], int &aia_40[], int &aia_44[], int &aia_48[], int &aia_52[]) {
   aia_0[0] = 16776960;
   aia_0[1] = 16776960;
   aia_0[2] = 16776960;
   aia_0[3] = 16776960;
   aia_0[4] = 8388352;
   aia_0[5] = 65535;
   aia_0[6] = 16436871;
   aia_0[7] = 14524637;
   aia_0[8] = 9639167;
   aia_0[9] = 6908265;
   aia_4[0] = RGB(40, 40, 40);
   aia_4[1] = RGB(40, 40, 40);
   aia_4[2] = RGB(60, 60, 60);
   aia_4[3] = RGB(80, 80, 80);
   aia_4[4] = RGB(0, 83, 16);
   aia_4[5] = RGB(94, 94, 0);
   aia_4[6] = RGB(0, 70, 90);
   aia_4[7] = RGB(81, 0, 81);
   aia_4[8] = RGB(70, 20, 0);
   aia_4[9] = 6908265;
   ai_unused_8 = 13353215;
   ai_unused_12 = 8388352;
   ai_unused_16 = 13353215;
   ai_unused_20 = 8388352;
   ai_unused_24 = 16776960;
   ai_unused_28 = RGB(255, 255, 128);
   aia_32[0] = 3329330;
   aia_32[1] = 3329330;
   aia_32[2] = 32768;
   aia_32[3] = 25600;
   aia_36[0] = 16748574;
   aia_36[1] = 16748574;
   aia_36[2] = 13434880;
   aia_36[3] = 9109504;
   aia_40[0] = 15631086;
   aia_40[1] = 15631086;
   aia_40[2] = 14822282;
   aia_40[3] = 13828244;
   aia_44[0] = 3937500;
   aia_44[1] = 17919;
   aia_44[2] = 3937500;
   aia_44[3] = 2237106;
   aia_48[0] = 16748574;
   aia_48[1] = 16748574;
   aia_48[2] = 13434880;
   aia_48[3] = 9109504;
   aia_52[0] = 15631086;
   aia_52[1] = 15631086;
   aia_52[2] = 14822282;
   aia_52[3] = 13828244;
   return (0);
}

int RGB(int red_value,int green_value,int blue_value)
  {

   if(red_value<0)     red_value=0;
   if(red_value>255)   red_value=255;
   if(green_value<0)   green_value=0;
   if(green_value>255) green_value=255;
   if(blue_value<0)    blue_value=0;
   if(blue_value>255)  blue_value=255;

   green_value<<=8;
   blue_value<<=16;
   return(red_value+green_value+blue_value);
  }

int gt_dm_xvost_sell(int inp_gtdmxs_0, int clr, int inp_gtdmxs_8, int inp_gtdmxs_12, int shift, double inp_gtdmxs_20, int& array[])
{
int    i;
int    j;
double close;
double high;
double low;
double open;
int    time;

close = Close[shift + 1];
time = Time[shift + 1];
high = High[shift + 1];
low = Low[shift + 1];
open = Open[shift + 1];

if (array[2] == 0) array[1] = 0;
array[2]++;
i = shift + 2;
var_80 = array[0] + array[2];
j = iLowest(NULL,0,MODE_LOW,var_80 - 1,i);

if (close < Low[j])
   {

   for (i = array[3]; i > 0; i--)
      {
      ObjectDelete("DM-xvost-sell-" + DoubleToStr(i,0) + DoubleToStr(array[4],0));
      }
   array[0] = 0;
   array[1] = 0;
   array[2] = 0;
   array[3] = 0;
   return(0);
   }

if (array[1] == 0)
   {
   for (j = inp_gtdmxs_8; j <= var_80; j++)
      {
      if (close <= Low[shift + j]) break;
      }
   if (j <= var_80)
      {

      array[1] = 1;
      }
   }

if (array[1] == 0) return(1);

if (close > High[shift + inp_gtdmxs_8 - 1])
   {
   array[3]++;
   if (array[3] < inp_gtdmxs_12)
      {

      }
   }

if (array[3] == inp_gtdmxs_12)
   {
   gt_move_simvol(0,"DM-xvost-sell-end-",array[4],clr,202,2,time,high + inp_gtdmxs_20 * 4.5);
   gt_move_text(0,"DM-xvost-sell-p-end-",array[4],clr,DoubleToStr(close,Digits),10,"Verdana",time,high + inp_gtdmxs_20 * 8.0);
   array[0] = 0;
   array[1] = 0;
   array[2] = 0;
   array[3] = 0;
   array[4]++;
   return(2);
   }
return(1);
}

int gt_dm_xvost_buy(int inp_gtdmxb_0, int clr, int inp_gtdmxb_8, int inp_gtdmxb_12, int shift, double inp_gtdmxb_20, int& array[])
{
int    i;
int    j;
double close;
double high;
double low;
double open;
int    time;

close = Close[shift + 1];
time = Time[shift + 1];
high = High[shift + 1];
low = Low[shift + 1];
open = Open[shift + 1];

if (array[2] == 0) array[1] = 0;
array[2]++;
i = shift + 2;
var_96 = array[0] + array[2];
j = iHighest(NULL,0,MODE_HIGH,var_96 - 1,i);

if (close > High[j])
   {

   for (i = array[3]; i > 0; i--)
      {
      ObjectDelete("DM-xvost-buy-" + DoubleToStr(i,0) + DoubleToStr(array[4],0));
      }
   array[0] = 0;
   array[1] = 0;
   array[2] = 0;
   array[3] = 0;
   return(0);
   }

if (array[1] == 0)
   {
   for (j = inp_gtdmxb_8; j <= var_96; j++)
      {
      if (close >= High[shift + j]) break;
      }
   if (j <= var_96)
      {

      array[1] = 1;
      }
   }

if (array[1] == 0) return(1);

if (close < Low[shift + inp_gtdmxb_8 - 1])
   {
   array[3]++;
   if (array[3] < inp_gtdmxb_12)
      {

      }
   }

if (array[3] == inp_gtdmxb_12)
   {
   gt_move_simvol(0,"DM-xvost-buy-end-",array[4],clr,200,2,time,low - inp_gtdmxb_20 * 4.0);
   gt_move_text(0,"DM-xvost-buy-p-end-",array[4],clr,DoubleToStr(close,Digits),10,"Verdana",time,low - inp_gtdmxb_20 * 7.0);
   array[0] = 0;
   array[1] = 0;
   array[2] = 0;
   array[3] = 0;
   array[4]++;
   return(2);
   }
return(1);
}

int gt_dm_nabor_buy(int inp_gtdmnb_0, int inp_gtdmnb_4, int inp_gtdmnb_8, int inp_gtdmnb_12, int shift, double inp_gtdmnb_20, int& sarray[], int& barray[])
{
int    var_gtdmnb_36;
int    i;
int    var_gtdmnb_44;
int    time;
double close;
double low;
double high;

time = Time[shift + 1];
close = Close[shift + 1];
low = Low[shift + 1];
high = High[shift + 1];

if ((inp_gtdmnb_0 == 0) && (var_108 != 0))
   {
   if (var_108 >= inp_gtdmnb_12)
      {
      for (i = 1; i <= var_108; i++)
         {
         ObjectDelete("DM-buy_temp-" + DoubleToStr(i,0));
         }
      }
   var_108 = 0;
   }
      else
   {
   if ((close >= High[iHighest(NULL,0,MODE_HIGH,var_108,shift + var_108)]) && (var_108 > 1))
      {
      if (var_108 >= inp_gtdmnb_12)
         {
         for (i = 1; i <= var_108; i++)
            {
            ObjectDelete("DM-buy_temp-" + DoubleToStr(i,0));
            }
         }
      var_108 = 0;
      return(0);
      }
   }

if (Close[shift + inp_gtdmnb_12 + 1] > close)
   {
   if ((var_108 == 0) && (Close[shift + 2 + inp_gtdmnb_12] > Close[shift + 2])) return(0);
   var_108++;
   if (var_108 == inp_gtdmnb_12)
      {
      for (i = var_108; i >= 1; i--)
         {

         }
      }
   if (var_108 > inp_gtdmnb_12)
      {
      var_gtdmnb_36 = var_108 / 10;
      var_gtdmnb_44 = var_108 - var_gtdmnb_36 * 10;

      }
   return(1);
   }

if (var_108 >= inp_gtdmnb_12)
   {
   for (i = 1; i <= var_108; i++)
      {
      ObjectDelete("DM-buy_temp-" + DoubleToStr(i,0));
      }
   }

if (var_108 < inp_gtdmnb_12 + 5)
   {
   var_108 = 0;
   return(0);
   }

var_gtdmnb_36 = 1;
for (i = var_108; i >= 1; i--)
   {
   if (var_gtdmnb_36 == 10) var_gtdmnb_36 = 0;

   var_gtdmnb_36++;
   }

for (i = barray[3]; i > 0; i--)
   {
   ObjectDelete("DM-xvost-buy-" + DoubleToStr(i,0) + DoubleToStr(barray[4],0));
   }

for (i = sarray[3]; i > 0; i--)
   {
   ObjectDelete("DM-xvost-sell-" + DoubleToStr(i,0) + DoubleToStr(sarray[4],0));
   }

barray[0] = var_108;
barray[1] = 0;
barray[2] = 0;
barray[3] = 0;
sarray[0] = 0;
sarray[1] = 0;
sarray[2] = 0;
sarray[3] = 0;
var_108 = 0;
var_112++;
return(2);
}

int gt_dm_nabor_sell(int inp_gtdmns_0, int inp_gtdmns_4, int inp_gtdmns_8, int inp_gtdmns_12, int shift, double inp_gtdmns_20, int& sarray[], int& barray[])
{
int    var_gtdmns_36;
int    i;
int    var_gtdmns_44;
int    time;
double close;
double low;
double high;

time = Time[shift + 1];
close = Close[shift + 1];
low = Low[shift + 1];
high = High[shift + 1];

if ((inp_gtdmns_0 == 0) && (var_116 != 0))
   {
   if (var_116 >= inp_gtdmns_12)
      {
      for (i = 1; i <= var_116; i++)
         {
         ObjectDelete("DM-sell_temp-" + DoubleToStr(i,0));
         }
      }
   var_116 = 0;
   }
      else
   {
   if ((close <= Low[iLowest(NULL,0,MODE_LOW,var_116,shift + var_116)]) && (var_116 > 1))
      {
      if (var_116 >= inp_gtdmns_12)
         {
         for (i = 1; i <= var_116; i++)
            {
            ObjectDelete("DM-sell_temp-" + DoubleToStr(i,0));
            }
         }
      var_116 = 0;
      return(0);
      }
   }

if (Close[shift + inp_gtdmns_12 + 1] < close)
   {
   if ((var_116 == 0) && (Close[shift + inp_gtdmns_12 + 2] < Close[shift + 2])) return(0);
   var_116++;
   if (var_116 == inp_gtdmns_12)
      {
      for (i = var_116; i >= 1; i--)
         {

         }
      }
   if (var_116 > inp_gtdmns_12)
      {
      var_gtdmns_36 = var_116 / 10;
      var_gtdmns_44 = var_116 - var_gtdmns_36 * 10;

      }
   return(1);
   }

if (var_116 >= inp_gtdmns_12)
   {
   for (i = 1; i <= var_116; i++)
      {
      ObjectDelete("DM-sell_temp-" + DoubleToStr(i,0));
      }
   }

if (var_116 < inp_gtdmns_12 + 5)
   {
   var_116 = 0;
   return(0);
   }

var_gtdmns_36 = 1;
for (i = var_116; i >= 1; i--)
   {
   if (var_gtdmns_36 == 10) var_gtdmns_36 = 0;

   var_gtdmns_36++;
   }

for (i = barray[3]; i > 0; i--)
   {

   }

for (i = sarray[3]; i > 0; i--)
   {
   ObjectDelete("DM-xvost-sell-" + DoubleToStr(i,0) + DoubleToStr(sarray[4],0));
   }

sarray[0] = var_116;
sarray[1] = 0;
sarray[2] = 0;
sarray[3] = 0;
barray[0] = 0;
barray[1] = 0;
barray[2] = 0;
barray[3] = 0;
var_116 = 0;
var_120++;
return(2);
}

int gt_d_wawe_sell(int& tarray[], double& parray[], int clr, int shift, double inp_gtdws_16, int inp_gtdws_24, int mode, bool inp_gtdws_32, bool inp_gtdws_36)
{
int    i;
int    var_gtdws_44;
int    var_gtdws_48;
int    var_gtdws_52;
int    var_gtdws_56;
int    var_gtdws_60;
double var_gtdws_64;
double var_gtdws_72;
double var_gtdws_80;
double var_gtdws_88;
double low;
double high;
double close;
int    time;

low = Low[shift + 1];
close = Close[shift + 1];
time = Time[shift + 1];
high = High[shift + 1];

while (var_184 == 1)
   {
   switch (mode)
      {
      case 0:
         var_188 = 0;
         var_gtdws_48 = MathCeil(inp_gtdws_24 * 0.618);
         i = MathMod(var_gtdws_48 - 1,2);
         if (i != 0) var_124 = var_gtdws_48 + 1; else var_124 = var_gtdws_48;
         var_gtdws_48 = MathCeil(var_124 * 0.618);
         i = MathMod(var_gtdws_48 - 1,2);
         if (i != 0) var_128 = var_gtdws_48 + 1; else var_128 = var_gtdws_48;
         var_132 = inp_gtdws_24;
         var_136 = var_124;
         var_gtdws_48 = MathCeil(inp_gtdws_24 * 1.618);
         i = MathMod(var_gtdws_48 - 1,2);
         if (i != 0) var_140 = var_gtdws_48 + 1; else var_140 = var_gtdws_48;
         var_144 = inp_gtdws_24;
         var_gtdws_48 = (inp_gtdws_24 - 1) / 2 + 1 + shift;
         var_gtdws_52 = iHighest(NULL,0,MODE_HIGH,inp_gtdws_24,shift);
         if (var_gtdws_52 == var_gtdws_48)
            {
            tarray[0] = Time[var_gtdws_52];
            parray[0] = High[var_gtdws_52];
            gt_move_simvol(0,"T-0 (sell)-",var_192,clr,139,2,tarray[0],parray[0] + inp_gtdws_16 * 6.0);
            return(1);
            }
         if (parray[0] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
         return(0);
         break;
      case 1:
         if ((close > parray[0]) || (var_188 == 1))
            {
            if (parray[1] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            var_188 = 1;
            mode = 0;
            break;
            }
         var_188 = 0;
         for (i = 2; i <= var_124 + 2; i++)
            {
            if (close > Low[shift + i]) break;
            }
         if (i <= var_124 + 2) return(1);
         if ((close < parray[1]) || (parray[1] == 0))
            {
            tarray[1] = time;
            parray[1] = low;
            gt_move_simvol(0,"T-1 (sell)-",var_192,clr,140,2,tarray[1],parray[1] - inp_gtdws_16 * 5.0);
            var_gtdws_80 = parray[0] - (parray[0] - low) * 0.5;
            gt_move_text(0,"Target-3 T2 (sell)-",var_192,clr,"T2-" + DoubleToStr(var_gtdws_80,Digits),9,"Verdana",time,var_gtdws_80);
            var_gtdws_72 = parray[0] - (parray[0] - low) * 0.382;
            gt_move_text(0,"Target-2 T2 (sell)-",var_192,clr,"T2-" + DoubleToStr(var_gtdws_72,Digits),9,"Verdana",time,var_gtdws_72);
            var_gtdws_64 = parray[0] - (parray[0] - low) * 0.236;
            gt_move_text(0,"Target-1 T2 (sell)-",var_192,clr,"T2-" + DoubleToStr(var_gtdws_64,Digits),9,"Verdana",time,var_gtdws_64);
            return(2);
            }
         return(1);
         break;
      case 2:
         if ((close > parray[0]) || (var_188 == 1))
            {
            if (parray[2] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 1;
            var_188 = 1;
            break;
            }
         var_188 = 0;
         if ((close < parray[1]) && (parray[2] == 0))
            {
            if (parray[2] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 1;
            break;
            }
         if ((close < parray[1]) && (parray[2] != 0))
            {
            mode = 3;
            return(3);
            }
         for (i = 2; i <= var_128 + 2; i++)
            {
            if (close < Close[shift + i]) break;
            }
         if (i <= var_128 + 2) return(2);
         if (close > parray[2])
            {
            tarray[2] = time;
            parray[2] = high;
            gt_move_simvol(0,"T-2 (sell)-",var_192,clr,141,2,tarray[2],parray[2] + inp_gtdws_16 * 6.0);
            var_gtdws_64 = parray[0] - (parray[0] - parray[1]) * var_152;
            gt_move_text(0,"Target-1 T3-5 (sell)-",var_192,clr,"Target-1 T3-5 :" + DoubleToStr(var_gtdws_64,Digits),9,"Verdana",tarray[1],var_gtdws_64);
            var_gtdws_72 = parray[0] - (parray[0] - parray[1]) * var_160;
            gt_move_text(0,"Target-2 T3-5 (sell)-",var_192,clr,"Target-2 T3-5 :" + DoubleToStr(var_gtdws_72,Digits),9,"Verdana",tarray[1],var_gtdws_72);
            var_gtdws_80 = parray[0] - (parray[0] - parray[1]) * var_168;
            gt_move_text(0,"Target-3 T3-5 (sell)-",var_192,clr,"Target-3 T3-5 :" + DoubleToStr(var_gtdws_80,Digits),9,"Verdana",tarray[1],var_gtdws_80);
            var_gtdws_88 = parray[0] - (parray[0] - parray[1]) * var_176;
            gt_move_text(0,"Target-4 T3-5 (sell)-",var_192,clr,"Target-4 T3-5 :" + DoubleToStr(var_gtdws_88,Digits),9,"Verdana",tarray[1],var_gtdws_88);
            if (inp_gtdws_32)
               {
               gt_move_fibo_level(0,"MyFibo_sell-",0,clr,2,1,tarray[0],parray[0],tarray[2],var_gtdws_80,Red);
               }
            if (inp_gtdws_36)
               {
               gt_move_line_goriz(0,"Target_down_",3,clr,2,1,tarray[1],var_gtdws_80);
               gt_move_line_goriz(0,"Target_down_",4,clr,2,1,tarray[1],var_gtdws_88);
               }
            }
         return(2);
         break;
      case 3:
         if ((close > parray[0]) || (var_188 == 1))
            {
            if (parray[3] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 2;
            var_188 = 1;
            break;
            }
         var_188 = 0;
         if (close > parray[2])
            {
            if (parray[3] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 2;
            break;
            }
         if ((close > parray[3]) && (parray[3] != 0))
            {
            mode = 4;
            return(4);
            }
         for (i = 2; i <= var_132 + 2; i++)
            {
            if (close > Close[shift + i]) break;
            }
         if (i <= var_132 + 2) return(3);
         if ((close < parray[3]) || (parray[3] == 0))
            {
            tarray[3] = time;
            parray[3] = low;
            gt_move_simvol(0,"T-3 (sell)-",var_192,clr,142,2,tarray[3],parray[3] - inp_gtdws_16 * 5.0);
            return(4);
            }
         return(3);
         break;
      case 4:
         if ((close > parray[0]) || (var_188 == 1))
            {
            if (parray[4] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 3;
            var_188 = 1;
            break;
            }
         var_188 = 0;
         if (close < parray[3])
            {
            if (parray[4] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 3;
            break;
            }
         if ((close < parray[4]) && (parray[4] != 0))
            {
            mode = 5;
            return(5);
            }
         if (high >= parray[2])
            {
            if (parray[4] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 2;
            gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 3;
            gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            var_gtdws_44 = 0;
            i = 1;
            while (Time[shift + i] != tarray[0])
               {
               var_gtdws_44++;
               i++;
               }
            i = iLowest(NULL,0,MODE_LOW,var_gtdws_44,shift);
            tarray[1] = Time[i];
            parray[1] = Low[i];
            gt_move_simvol(0,"T-1 (sell)-",var_192,clr,140,2,tarray[1],parray[1] - inp_gtdws_16 * 5.0);
            var_gtdws_80 = parray[0] - (parray[0] - parray[1]) * 0.5;
            gt_move_text(0,"Target-3 T2 (sell)-",var_192,clr,"T2-" + DoubleToStr(var_gtdws_80,Digits),9,"Verdana",tarray[1],var_gtdws_80);
            var_gtdws_72 = parray[0] - (parray[0] - parray[1]) * 0.382;
            gt_move_text(0,"Target-2 T2 (sell)-",var_192,clr,"T2-" + DoubleToStr(var_gtdws_72,Digits),9,"Verdana",tarray[1],var_gtdws_72);
            var_gtdws_64 = parray[0] - (parray[0] - parray[1]) * 0.236;
            gt_move_text(0,"Target-1 T2 (sell)-",var_192,clr,"T2-" + DoubleToStr(var_gtdws_64,Digits),9,"Verdana",tarray[1],var_gtdws_64);
            mode = 2;
            break;
            }
         for (i = 2; i <= var_136 + 2; i++)
            {
            if (close < Close[shift + i]) break;
            }
         if (i <= var_136 + 2) return(4);
         if (close > parray[4])
            {
            tarray[4] = time;
            parray[4] = high;
            gt_move_simvol(0,"T-4 (sell)-",var_192,clr,143,2,tarray[4],parray[4] + inp_gtdws_16 * 6.0);
            return(5);
            }
         return(4);
         break;
      case 5:
         if ((close > parray[0]) || (var_188 == 1))
            {
            if (parray[5] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 4;
            var_188 = 1;
            break;
            }
         var_188 = 0;
         if (close > parray[4])
            {
            if (parray[5] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 4;
            break;
            }
         if ((close > parray[5]) && (parray[5] != 0))
            {
            mode = 6;
            break;
            }
         for (i = 2; i <= var_140 + 2; i++)
            {
            if (low > Low[shift + i]) break;
            }
         if (i <= var_140 + 2) return(5);
         if ((low < parray[5]) || (parray[5] == 0))
            {
            tarray[5] = time;
            parray[5] = low;
            gt_move_simvol(0,"T-5 (sell)-",var_192,clr,144,2,tarray[5],parray[5] - inp_gtdws_16 * 5.0);
            return(6);
            }
         return(5);
         break;
      case 6:
         if (close > parray[0])
            {
            if (parray[6] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 5;
            var_188 = 1;
            break;
            }
         var_188 = 0;
         if (close < parray[5])
            {
            if (parray[6] != 0.0) gt_d_wawe_sell_clear(mode,var_192,parray,inp_gtdws_32,inp_gtdws_36);
            mode = 5;
            break;
            }
         for (i = 2; i <= var_144 + 2; i++)
            {
            if (high < High[shift + i]) break;
            }
         if (i <= var_144 + 2) return(6);
         if ((high > parray[6]) || (parray[6] == 0))
            {
            tarray[6] = time;
            parray[6] = high;
            mode = 8;
            break;
            }
         return(6);
         break;
      case 8:
         for (i = 0; i <= 6; i++)
            {
            tarray[i] = 0;
            parray[i] = 0;
            }
         var_192++;
  

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

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

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

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

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

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

Стоимость полного кода
5 884,50₽ ≈ $71.92