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

RTC4NNCS-TRIAL

rtc4nncs-trial~.mq4

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

!!!-mt4 x-xardg-rsi.mq5MQL5 / MetaTrader 5 · 2 общих тегов!!! rsi ma simple+arrows 1.2 (mtf).mq5MQL5 / MetaTrader 5 · 2 общих теговea robofibo source v.11.2.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedingvonepointoneone.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedging 1.10 optimized.mq4MQL4 / MetaTrader 4 · 2 общих теговsureforexhedging 1.09 a (2).mq4MQL4 / MetaTrader 4 · 2 общих тегов
Вы автор или правообладатель?

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

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

О программе

RTC4NNCS-TRIAL — торговый советник для MetaTrader 4, предназначенный для автоматической работы на валютных инструментах. Советник использует обработчик start() для анализа рыночных данных и выполнения торговых операций, а также функции инициализации и деинициализации. В коде применяются стандартные торговые функции MetaTrader 4: OrderSend, OrderClose, OrderModify, OrderDelete, а также функции получения рыночной информации. Советник поддерживает работу с отложенными и рыночными ордерами, управление позициями и сопровождение открытых сделок.

Советник включает настраиваемые параметры для управления торговлей: включение/отключение торговли, выбор направления (покупка/продажа), управление лотами, стоп-лоссами, тейк-профитами и трейлинг-стопами. Реализована поддержка автоматического определения пятизначных котировок, расчёт размера лота в зависимости от эквити, а также механизмы закрытия позиций по достижении заданного профита или убытка.

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

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

НастройкаОписание
TradeEnable Включает или отключает торговлю советника.
AutoDetect5Digits Автоматически определяет пятизначные котировки и корректирует соответствующие параметры.
MagicNumber Уникальный идентификатор ордеров советника.
UseSpesificProfitByMagicNumber Включает использование специфического профита по магическому числу.
MagicNumberTarget Магическое число для целевого ордера при использовании специфического профита.
MaxTotalOpenForEach Максимальное количество одновременно открытых ордеров в каждом направлении.
AutoOrderDistanceSize Автоматически рассчитывает размер расстояния между ордерами на основе волатильности.
OrderDistanceSize Расстояние между ордерами в пунктах.
UseTradingBuy Разрешает открытие позиций на покупку.
UseTradingSell Разрешает открытие позиций на продажу.
TechnicalAnalysis Строковый параметр для выбора комбинации технического анализа.
UseSmartSupportResitant Включает использование умных уровней поддержки и сопротивления.
UseNeuralNetwork Включает использование нейронной сети для прогнозирования.
Balance Начальный баланс счёта, используемый для расчёта целей по прибыли.
EndTarget Целевой уровень эквити, при достижении которого торговля прекращается.
UseTargetRollover Включает функцию переноса цели по прибыли.
ProfitRollover Сумма прибыли для переноса цели при использовании функции переноса.
StepGainProfitTotal Общий шаг прибыли для закрытия всех позиций.
StepGainProfitBuy Шаг прибыли для закрытия позиций на покупку.
StepGainProfitSell Шаг прибыли для закрытия позиций на продажу.
UseAutoSmartCloseProfit Включает автоматическое умное закрытие позиций по профиту.
ScaleProfitClose Масштабный коэффициент для автоматического закрытия по профиту.
MinDifferenceBuySell Минимальная разница между ценами покупки и продажи для открытия ордеров.
UseAutoLotSize Включает автоматический расчёт размера лота в зависимости от эквити.
BaseEquity Базовое значение эквити для расчёта автоматического размера лота.
TakeProfit Уровень тейк-профита в пунктах.
TPBand Ширина полосы для тейк-профита при использовании пользовательского индикатора.
UseExtraPip Включает использование дополнительных пипсов для закрытия позиций.
ExtraPipBuy Количество дополнительных пунктов для закрытия позиций на покупку при использовании функции дополнительного пипса.
ExtraPipSell Количество дополнительных пунктов для закрытия позиций на продажу при использовании функции дополнительного пипса.
StopLoss Уровень стоп-лосса в пунктах.
TrailingStopBuy Уровень трейлинг-стопа для позиций на покупку в пунктах.
TrailingStopSell Уровень трейлинг-стопа для позиций на продажу в пунктах.
Slippage Допустимое проскальзывание цены при открытии ордеров.
ConsiderSpread Учитывает спред при расчёте торговых уровней.
CloseAllManually При включении немедленно закрывает все позиции и удаляет отложенные ордера.
UseCutlossMinusBuySellProfit Включает функцию ограничения убытков по отдельным направлениям.
CutlossMinusProfitBuy Порог убытка для закрытия позиций на покупку при использовании функции ограничения убытков.
CutlossMinusProfitSell Порог убытка для закрытия позиций на продажу при использовании функции ограничения убытков.
LevelF Количество баров для определения уровней поддержки и сопротивления.
Trend Параметр для определения направления тренда.
lastBar Номер последнего бара для анализа нейронной сетью.
futBars Количество будущих баров для прогнозирования нейронной сетью.
smoothPer Период сглаживания для нейронной сети.
numLayers Количество слоёв нейронной сети.
numInputs Количество входов нейронной сети.
numNeurons1 Количество нейронов в первом слое нейронной сети.
numNeurons2 Количество нейронов во втором слое нейронной сети.
numNeurons3 Количество нейронов в третьем слое нейронной сети.
numNeurons4 Количество нейронов в четвёртом слое нейронной сети.
numNeurons5 Количество нейронов в пятом слое нейронной сети.
ntr Количество примеров для обучения нейронной сети.
nep Количество эпох обучения нейронной сети.
maxMSEpwr Максимальная среднеквадратичная ошибка для нейронной сети.
AFT Параметр для настройки нейронной сети, влияющий на алгоритм обучения.
Получить полный код

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

/*
   Generated by EX4-TO-MQ4 decompiler V4.0.479.3 [-]
   Website: 
   E-mail : p******m*@gmail.com
*/

extern bool TradeEnable = TRUE;
extern bool AutoDetect5Digits = TRUE;
extern int MagicNumber = 888;
extern bool UseSpesificProfitByMagicNumber = FALSE;
extern int MagicNumberTarget = 888;
int gi_96;
bool gi_100 = TRUE;
bool gi_104 = FALSE;
bool gi_108 = TRUE;
bool gi_112 = FALSE;
bool gi_116 = TRUE;
bool gi_120 = FALSE;
double gd_124 = 20.0;
bool gi_132 = FALSE;
extern double MaxTotalOpenForEach = 50.0;
extern bool AutoOrderDistanceSize = FALSE;
extern double OrderDistanceSize = 10.0;
extern bool UseTradingBuy = FALSE;
extern bool UseTradingSell = FALSE;
bool gi_164 = FALSE;
extern string TechnicalAnalysis = "Choose the combination of Technical Analysis";
extern bool UseSmartSupportResitant = FALSE;
bool gi_180 = TRUE;
extern bool UseNeuralNetwork = TRUE;
string gs_unused_188 = "0:RSP, 1:RSI, 3:DontCare";
int gi_196 = 3;
int g_period_200 = 14;
int gi_unused_204 = 70;
int gi_unused_208 = 30;
string gs_unused_212 = "0: Pivot, 1:R/S Level-1, 2: R/S Level-2, 3:R/S Level-3";
int gi_220 = 2;
double g_price_224;
double g_price_232;
extern double Balance = 1000.0;
double gd_248;
extern double EndTarget = 20000.0;
extern bool UseTargetRollover = TRUE;
extern double ProfitRollover = 200.0;
double gd_276;
double gd_284;
double gd_292;
extern double StepGainProfitTotal = 40.0;
double gd_308;
double gd_316;
extern double StepGainProfitBuy = 40.0;
extern double StepGainProfitSell = 40.0;
double gd_340;
double gd_348;
double gd_356;
double gd_364;
extern bool UseAutoSmartCloseProfit = FALSE;
extern double ScaleProfitClose = 1.0;
double gd_384;
double gd_392;
double gd_400;
double gd_unused_408;
extern int MinDifferenceBuySell = 1;
extern double ?LotSize? = 0.01;
extern bool UseAutoLotSize = FALSE;
bool gi_432 = FALSE;
bool gi_unused_436 = FALSE;
double gd_440;
extern double BaseEquity = 1000.0;
double gd_456 = 2000.0;
bool gi_464 = FALSE;
extern double TakeProfit = 4000.0;
extern double TPBand = 7.0;
extern bool UseExtraPip = FALSE;
extern double ExtraPipBuy = 3.0;
extern double ExtraPipSell = 3.0;
double gd_unused_504;
double gd_unused_512;
extern double StopLoss = 0.0;
extern double TrailingStopBuy = 0.0;
double gd_unused_536;
extern double TrailingStopSell = 0.0;
double gd_unused_552;
extern double Slippage = 2.0;
extern bool ConsiderSpread = FALSE;
extern bool CloseAllManually = FALSE;
extern bool UseCutlossMinusBuySellProfit = FALSE;
extern double CutlossMinusProfitBuy = -99.0;
extern double CutlossMinusProfitSell = -99.0;
double gd_596 = 0.0;
double gd_604 = 0.0;
double gd_612 = 0.0;
bool gi_620 = TRUE;
bool gi_624 = TRUE;
bool gi_unused_628 = TRUE;
bool gi_632 = TRUE;
bool gi_unused_636 = FALSE;
bool gi_unused_640 = FALSE;
bool gi_unused_644 = TRUE;
bool gi_unused_648 = TRUE;
int g_day_652;
string g_comment_656 = "RTC4NNCS-TRIAL";
double gd_664 = 0.0;
int gi_672 = 20;
int gi_676 = 3;
bool gi_680 = TRUE;
int gi_684 = 1;
bool gi_688 = TRUE;
int gi_692 = 9221330;
int gi_696 = 8;
string gs_700;
int gi_708 = 16777215;
double gd_712;
double gd_720;
int gi_728 = 0;
int gi_732 = 0;
string gsa_736[] = {"Resetting", "Direction", " Up Trend ", " Down Trend ", "Down-Up Trend ", "Up-Down Trend"};
double gd_740;
double gd_unused_748 = 0.0;
double gd_756 = 0.0;
double gd_764;
double gd_772;
double gd_780;
double gd_788;
bool gi_796 = FALSE;
bool gi_800 = FALSE;
int gi_804;
double gd_808;
double gd_816;
double g_price_832 = 0.0;
double g_price_840 = 0.0;
double g_price_848 = 0.0;
double g_price_856 = 0.0;
double g_price_864 = 0.0;
double g_price_872 = 0.0;
double g_price_880 = 0.0;
double g_price_888 = 0.0;
double g_price_896 = 0.0;
double g_price_904 = 0.0;
double g_price_912 = 0.0;
double g_price_920 = 0.0;
double gd_928 = 0.0;
double gd_936 = 0.0;
double gd_944 = 0.0;
double gd_unused_952 = 0.0;
double gd_960 = 0.0;
double gd_unused_968 = 0.0;
double gd_unused_976 = 0.0;
double gd_unused_984 = 0.0;
double gd_unused_992 = 0.0;
double g_price_1000 = 0.0;
double gd_unused_1008 = 0.0;
double gd_unused_1016 = 0.0;
double gd_unused_1024 = 0.0;
double gd_unused_1032 = 0.0;
double gda_1040[2][6];
double gda_1044[2][6];
double gda_unused_1048[13];
double gd_unused_1052 = 0.0;
double gd_1060 = 0.0;
double gd_unused_1068 = 0.0;
double gd_unused_1076 = 0.0;
double gd_unused_1084 = 0.0;
double gd_1092 = 0.0;
double gd_1100 = 0.0;
double gd_1108 = 0.0;
double gd_1116 = 0.0;
double gda_unused_1124[2][6];
double gda_unused_1128[13];
int gi_1132 = 2;
double gd_unused_1136;
double g_irsi_1144;
double gd_1152;
double gd_1160;
int gi_unused_1168;
int gi_unused_1172;
bool gi_unused_1176;
bool gi_unused_1180;
int gi_unused_1184;
int gi_unused_1188;
double gd_unused_1192;
double gd_unused_1200;
double gd_unused_1208;
bool gi_unused_1216;
double gd_unused_1220;
double gd_unused_1228;
extern int LevelF = 2;
double gda_1240[];
double gda_1244[];
extern int Trend = 2;
double gda_1252[24];
double g_price_1256;
double g_price_1264;
double g_price_1272;
double g_price_1280;
double g_price_1440;
int gi_unused_1448 = 0;
extern int lastBar = 0;
extern int futBars = 5;
extern int smoothPer = 6;
extern int numLayers = 3;
extern int numInputs = 12;
extern int numNeurons1 = 5;
extern int numNeurons2 = 1;
extern int numNeurons3 = 0;
extern int numNeurons4 = 0;
extern int numNeurons5 = 0;
extern int ntr = 500;
extern int nep = 1000;
extern int maxMSEpwr = -20;
extern int AFT = 2;
double gd_1540;
double gd_1548;
double gd_1564 = 20.0;
int gi_1572;
string gs_dummy_1576;
string g_time2str_1584;
int gia_1592[];

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

int deinit() {
   return (0);
}

int start() {
      // код доступен только после оплаты
   }
   int li_4;
   int cmd_8;
   int ticket_12;
   int cmd_16;
   int order_total_20;
   int count_24;
   int count_28;
   double point_36;
   double ld_44;
   double price_52;
   double price_68;
   double lots_76;
   double lots_84;
   int day_of_week_100;
   string ls_108;
   int li_124;
   bool li_128;
   int li_unused_132;
   int li_136;
   int timeframe_140;
   int li_144;
   int li_148;
   double high_152;
   double high_160;
   double high_168;
   int li_176;
   int li_180;
   int li_unused_228;
   double ld_236;
   int li_244;
   double price_248;
   string time2str_92 = TimeToStr(TimeCurrent(), TIME_SECONDS);
   g_time2str_1584 = TimeToStr(TimeLocal(), TIME_MINUTES);
   if (UseNeuralNetwork) {
      day_of_week_100 = DayOfWeek();
      for (int li_104 = 4; li_104 >= 0; li_104--) {
         gda_1252[li_104] = iCustom(Symbol(), PERIOD_D1, "NN", lastBar, futBars, smoothPer, numLayers, numInputs, numNeurons1, numNeurons2, numNeurons3, numNeurons4, numNeurons5,
            ntr, nep, maxMSEpwr, AFT, 0, (-li_104) - 1);
      }
      if (day_of_week_100 == 1) {
         g_price_1440 = 1.003 * gda_1252[0];
         g_price_1256 = 1.003 * gda_1252[1];
         g_price_1264 = 1.003 * gda_1252[2];
         g_price_1272 = 1.003 * gda_1252[3];
         g_price_1280 = 1.003 * gda_1252[4];
         Comment("Prediction list for this week. Predictions are median price closed for each bars.", Time[DayOfWeek()], " ", Time[DayOfWeek() + 1], 
            "\nH0 Closed ", g_price_1440, 
            "\nH+1 Closed ", g_price_1256, 
            "\nH+2 Closed ", g_price_1264, 
            "\nH+3 Closed ", g_price_1272, 
            "\nH+4 Closed ", g_price_1280, 
         "\nAccount  :   ", AccountNumber(), "---", AccountName(), "  Waktu :", g_time2str_1584, " DayOfWeek: ", DayOfWeek(), "  Formasi: ", gi_1572, " : ", ls_108, " TempDay: ",
            g_day_652, "  Day: ", Day());
         ObjectDelete("Prediction0");
         ObjectCreate("Prediction0", OBJ_ARROW, 0, Time[DayOfWeek() - 1], g_price_1440);
         ObjectSet("Prediction0", OBJPROP_COLOR, Orange);
      }
      if (day_of_week_100 == 2) {
         if (g_price_1440 == 0.0 || g_price_1440 > 10000.0) {
            g_price_1440 = Close[1];
            g_price_1256 = 1.003 * gda_1252[1];
            g_price_1264 = 1.003 * gda_1252[2];
            g_price_1272 = 1.003 * gda_1252[3];
            g_price_1280 = 1.003 * gda_1252[4];
         }
         Comment("Prediction list for this week. Predictions are median price closed for each bars.", Time[DayOfWeek()], " ", Time[DayOfWeek() + 1], 
            "\nH0 Closed ", g_price_1440, 
            "\nH+1 Closed ", g_price_1256, 
            "\nH+2 Closed ", g_price_1264, 
            "\nH+3 Closed ", g_price_1272, 
            "\nH+4 Closed ", g_price_1280, 
         "\nAccount  :   ", AccountNumber(), "---", AccountName(), "  Waktu :", g_time2str_1584, " DayOfWeek: ", DayOfWeek(), "  Formasi: ", gi_1572, " : ", ls_108, " TempDay: ",
            g_day_652, "  Day: ", Day());
         ObjectDelete("Prediction2");
         ObjectCreate("Prediction2", OBJ_ARROW, 0, Time[DayOfWeek() - 2], g_price_1256);
         ObjectSet("Prediction2", OBJPROP_COLOR, Orange);
      }
      if (day_of_week_100 == 3) {
         if (g_price_1256 == 0.0 || g_price_1256 > 10000.0) {
            g_price_1440 = Close[2];
            g_price_1256 = Close[1];
            g_price_1264 = 1.003 * gda_1252[2];
            g_price_1272 = 1.003 * gda_1252[3];
            g_price_1280 = 1.003 * gda_1252[4];
         }
         Comment("Prediction list for this week. Predictions are median price closed for each bars.", Time[DayOfWeek()], " ", Time[DayOfWeek() + 1], 
            "\nH0 Closed ", g_price_1440, 
            "\nH+1 Closed ", g_price_1256, 
            "\nH+2 Closed ", g_price_1264, 
            "\nH+3 Closed ", g_price_1272, 
            "\nH+4 Closed ", g_price_1280, 
         "\nAccount  :   ", AccountNumber(), "---", AccountName(), "  Waktu :", g_time2str_1584, " DayOfWeek: ", DayOfWeek(), "  Formasi: ", gi_1572, " : ", ls_108, " TempDay: ",
            g_day_652, "  Day: ", Day());
         ObjectDelete("Prediction3");
         ObjectCreate("Prediction3", OBJ_ARROW, 0, Time[DayOfWeek() - 3], g_price_1264);
         ObjectSet("Prediction3", OBJPROP_COLOR, Orange);
      }
      if (day_of_week_100 == 4) {
         if (g_price_1264 == 0.0 || g_price_1264 > 10000.0) {
            g_price_1440 = Close[3];
            g_price_1256 = Close[2];
            g_price_1264 = Close[1];
            g_price_1272 = 1.003 * gda_1252[3];
            g_price_1280 = 1.003 * gda_1252[4];
         }
         Comment("Prediction list for this week. Predictions are median price closed for each bars.", Time[DayOfWeek()], " ", Time[DayOfWeek() + 1], 
            "\nH0 Closed ", g_price_1440, 
            "\nH+1 Closed ", g_price_1256, 
            "\nH+2 Closed ", g_price_1264, 
            "\nH+3 Closed ", g_price_1272, 
            "\nH+4 Closed ", g_price_1280, 
         "\nAccount  :   ", AccountNumber(), "---", AccountName(), "  Waktu :", g_time2str_1584, " DayOfWeek: ", DayOfWeek(), "  Formasi: ", gi_1572, " : ", ls_108, " TempDay: ",
            g_day_652, "  Day: ", Day());
         ObjectDelete("Prediction4");
         ObjectCreate("Prediction4", OBJ_ARROW, 0, Time[DayOfWeek() - 4], g_price_1272);
         ObjectSet("Prediction4", OBJPROP_COLOR, Orange);
      }
      if (day_of_week_100 == 5) {
         if (g_price_1264 == 0.0 || g_price_1264 > 10000.0) {
            g_price_1440 = Close[4];
            g_price_1256 = Close[3];
            g_price_1264 = Close[2];
            g_price_1272 = Close[1];
            g_price_1280 = 1.003 * gda_1252[4];
         }
         Comment("Prediction list for this week. Predictions are median price closed for each bars.", Time[DayOfWeek()], " ", Time[DayOfWeek() + 1], 
            "\nH0 Closed ", g_price_1440, 
            "\nH+1 Closed ", g_price_1256, 
            "\nH+2 Closed ", g_price_1264, 
            "\nH+3 Closed ", g_price_1272, 
            "\nH+4 Closed ", g_price_1280, 
         "\nAccount  :   ", AccountNumber(), "---", AccountName(), "  Waktu :", g_time2str_1584, " DayOfWeek: ", DayOfWeek(), "  Formasi: ", gi_1572, " : ", ls_108, " TempDay: ",
            g_day_652, "  Day: ", Day());
         ObjectDelete("Prediction5");
         ObjectCreate("Prediction5", OBJ_ARROW, 0, Time[DayOfWeek() - 5], g_price_1280);
         ObjectSet("Prediction5", OBJPROP_COLOR, Orange);
      }
   }
   string time2str_116 = TimeToStr(TimeCurrent(), TIME_SECONDS);
   Print(time2str_116 + " Formasi : " + gi_1572 + " Equity : " + AccountEquity());
   if (gi_180) {
      if (ArraySize(gia_1592) < li_124 + 1) ArrayResize(gia_1592, li_124 + 1);
      if (!li_128) li_unused_132 = 1;
      else li_unused_132 = 0;
      li_136 = gia_1592[li_124];
      timeframe_140 = 60;
      li_144 = 0;
      li_148 = 0;
      high_152 = 0;
      high_160 = 0;
      li_176 = iBars(Symbol(), timeframe_140);
      li_180 = li_176 - LevelF;
      if (li_180 > LevelF) li_180 = li_180 - LevelF - 1;
      if (li_136 == 0) {
         while (li_180 > LevelF - 1) {
            gda_1240[li_180] = 0;
            high_168 = Low[li_180];
            for (int li_184 = 1; li_184 <= LevelF; li_184++)
               if (Low[li_180 + li_184] < Low[li_180] || Low[li_180 - li_184] < Low[li_180]) high_168 = 0;
            if (high_168 > 0.0) {
               if (high_160 != 0.0) {
                  switch (Trend) {
                  case 1:
                     if (high_168 >= high_160) break;
                     gda_1240[li_144] = high_152;
                     Trend = 2;
                     break;
                  case 2:
                     if (high_168 <= high_160) break;
                     gda_1240[li_148] = high_160;
                     Trend = 1;
                     if (li_144 < li_148) break;
                     high_152 = 0;
                     li_144 = 0;
                  }
               }
               high_160 = high_168;
               li_148 = li_180;
               gda_1244[li_148] = high_160;
            }
            high_168 = High[li_180];
            for (li_184 = 1; li_184 <= LevelF; li_184++)
               if (High[li_180 + li_184] > High[li_180] || High[li_180 - li_184] > High[li_180]) high_168 = 0;
            if (high_168 > 0.0) {
               if (high_152 != 0.0) {
                  switch (Trend) {
                  case 1:
                     if (high_168 >= high_152) break;
                     gda_1240[li_144] = high_152;
                     Trend = 2;
                     if (li_148 < li_144) break;
                     high_160 = 0;
                     li_148 = 0;
                     break;
                  case 2:
                     if (high_168 <= high_152) break;
                     gda_1240[li_148] = high_160;
                     Trend = 1;
                  }
               }
               high_152 = high_168;
               li_144 = li_180;
               gda_1244[li_144] = high_152;
            }
            li_180--;
         }
      }
      if (Trend == 1) {
         gda_1240[li_144] = high_152;
         gi_728 = 2;
      } else {
         gda_1240[li_148] = high_160;
         gi_728 = 3;
      }
   }
   if (g_price_1440 > g_price_1280) gi_732 = 3;
   if (g_price_1440 < g_price_1280) gi_732 = 2;
   g_irsi_1144 = iRSI(NULL, 0, g_period_200, PRICE_CLOSE, 0);
   double icustom_196 = iCustom(NULL, 0, "SmartBB", 1, 0);
   gd_1540 = icustom_196 - TPBand * Point;
   double icustom_204 = iCustom(NULL, 0, "SmartBB", 0, 0);
   double icustom_212 = iCustom(NULL, 0, "SmartBB", 2, 0);
   gd_1548 = icustom_212 - TPBand * Point;
   gd_1160 = f0_0(gi_672);
   gd_1152 = f0_19(gi_676);
   if (AutoOrderDistanceSize) {
      OrderDistanceSize = (gd_1160 + gd_1152) / 2.0 / (gd_124 / 2.0);
      if (Digits == 5 || Digits == 3) OrderDistanceSize = 10.0 * OrderDistanceSize;
   }
   double ld_60 = Ask - Bid;
   gd_808 = 0;
   gd_816 = 0;
   if (gi_728 != 2 && gi_728 != 3) gi_728 = 1;
   if (!IsDemo()) {
      if (!f0_9()) {
         Comment("Your Trading Account No. does not match the robot data at the time of purchasing this Robot!");
         return;
      }
   }
   string name_220 = "DateOfTrade";
   ObjectDelete(name_220);
   ObjectCreate(name_220, OBJ_LABEL, 0, 0, 0);
   ObjectSetText(name_220, "" + TimeToStr(TimeCurrent()) + " Day " + DayOfWeek(), 11, "Arial Bold", Lime);
   ObjectSet(name_220, OBJPROP_CORNER, 2);
   ObjectSet(name_220, OBJPROP_XDISTANCE, 5);
   ObjectSet(name_220, OBJPROP_YDISTANCE, 5);
   ObjectDelete("R1 Label");
   ObjectDelete("R1 Line");
   ObjectDelete("R2 Label");
   ObjectDelete("R2 Line");
   ObjectDelete("R3 Label");
   ObjectDelete("R3 Line");
   ObjectDelete("S1 Label");
   ObjectDelete("S1 Line");
   ObjectDelete("S2 Label");
   ObjectDelete("S2 Line");
   ObjectDelete("S3 Label");
   ObjectDelete("S3 Line");
   ObjectDelete("P Label");
   ObjectDelete("P Line");
   ObjectDelete("M5 Label");
   ObjectDelete("M5 Line");
   ObjectDelete("M4 Label");
   ObjectDelete("M4 Line");
   ObjectDelete("M3 Label");
   ObjectDelete("M3 Line");
   ObjectDelete("M2 Label");
   ObjectDelete("M2 Line");
   ObjectDelete("M1 Label");
   ObjectDelete("M1 Line");
   ObjectDelete("M0 Label");
   if (UseSmartSupportResitant) {
      li_unused_228 = 0;
      if (Period() > PERIOD_D1) {
         Comment("Error - Chart period is greater than 1 day.");
         return (-1);
      }
      ArrayCopyRates(gda_1044, Symbol(), PERIOD_D1);
      gd_944 = gda_1044[1][3];
      gd_960 = gda_1044[1][2];
      gd_928 = gda_1044[0][3];
      gd_936 = gda_1044[0][2];
      ArrayCopyRates(gda_1040, Symbol(), PERIOD_H1);
      for (int pos_0 = 0; pos_0 <= 25; pos_0++) {
         if (TimeMinute(gda_1040[pos_0][0]) == 0 && TimeHour(gda_1040[pos_0][0]) - gi_1132 == 0) {
            gd_1060 = gda_1040[pos_0 + 1][4];
            gd_unused_1052 = gda_1040[pos_0 + 24][1];
            gd_unused_1068 = gda_1040[pos_0][1];
            break;
         }
      }
      gd_1116 = gd_928 - gd_936;
      gd_1092 = gd_944 - gd_960;
      g_price_1000 = (gd_944 + gd_960 + gd_1060) / 3.0;
      g_price_832 = g_price_1000 + (gd_944 - gd_960) / 2.0;
      g_price_904 = g_price_1000 - (gd_944 - gd_960) / 2.0;
      g_price_840 = g_price_1000 + 0.618 * (gd_944 - gd_960);
      g_price_912 = g_price_1000 - 0.618 * (gd_944 - gd_960);
      g_price_848 = g_price_1000 + 1.0 * (gd_944 - gd_960);
      g_price_920 = g_price_1000 - 1.0 * (gd_944 - gd_960);
      g_price_896 = (g_price_840 + g_price_848) / 2.0;
      g_price_888 = (g_price_832 + g_price_840) / 2.0;
      g_price_880 = (g_price_1000 + g_price_832) / 2.0;
      g_price_872 = (g_price_1000 + g_price_904) / 2.0;
      g_price_864 = (g_price_904 + g_price_912) / 2.0;
      g_price_856 = (g_price_912 + g_price_920) / 2.0;
      if (Digits == 5) {
         g_price_848 = NormalizeDouble(g_price_848, 5);
         g_price_840 = NormalizeDouble(g_price_840, 5);
         g_price_832 = NormalizeDouble(g_price_832, 5);
         g_price_1000 = NormalizeDouble(g_price_1000, 5);
         g_price_904 = NormalizeDouble(g_price_904, 5);
         g_price_912 = NormalizeDouble(g_price_912, 5);
         g_price_920 = NormalizeDouble(g_price_920, 5);
         g_price_896 = NormalizeDouble(g_price_896, 5);
         g_price_888 = NormalizeDouble(g_price_888, 5);
         g_price_880 = NormalizeDouble(g_price_880, 5);
         g_price_872 = NormalizeDouble(g_price_872, 5);
         g_price_864 = NormalizeDouble(g_price_864, 5);
         g_price_856 = NormalizeDouble(g_price_856, 5);
      } else {
         if (Digits == 3) {
            g_price_848 = NormalizeDouble(g_price_848, 3);
            g_price_840 = NormalizeDouble(g_price_840, 3);
            g_price_832 = NormalizeDouble(g_price_832, 3);
            g_price_1000 = NormalizeDouble(g_price_1000, 3);
            g_price_904 = NormalizeDouble(g_price_904, 3);
            g_price_912 = NormalizeDouble(g_price_912, 3);
            g_price_920 = NormalizeDouble(g_price_920, 3);
            g_price_896 = NormalizeDouble(g_price_896, 3);
            g_price_888 = NormalizeDouble(g_price_888, 3);
            g_price_880 = NormalizeDouble(g_price_880, 3);
            g_price_872 = NormalizeDouble(g_price_872, 3);
            g_price_864 = NormalizeDouble(g_price_864, 3);
            g_price_856 = NormalizeDouble(g_price_856, 3);
         } else {
            if (Digits == 2) {
               g_price_848 = NormalizeDouble(g_price_848, 2);
               g_price_840 = NormalizeDouble(g_price_840, 2);
               g_price_832 = NormalizeDouble(g_price_832, 2);
               g_price_1000 = NormalizeDouble(g_price_1000, 2);
               g_price_904 = NormalizeDouble(g_price_904, 2);
               g_price_912 = NormalizeDouble(g_price_912, 2);
               g_price_920 = NormalizeDouble(g_price_920, 2);
               g_price_896 = NormalizeDouble(g_price_896, 2);
               g_price_888 = NormalizeDouble(g_price_888, 2);
               g_price_880 = NormalizeDouble(g_price_880, 2);
               g_price_872 = NormalizeDouble(g_price_872, 2);
               g_price_864 = NormalizeDouble(g_price_864, 2);
               g_price_856 = NormalizeDouble(g_price_856, 2);
            } else {
               g_price_848 = NormalizeDouble(g_price_848, 4);
               g_price_840 = NormalizeDouble(g_price_840, 4);
               g_price_832 = NormalizeDouble(g_price_832, 4);
               g_price_1000 = NormalizeDouble(g_price_1000, 4);
               g_price_904 = NormalizeDouble(g_price_904, 4);
               g_price_912 = NormalizeDouble(g_price_912, 4);
               g_price_920 = NormalizeDouble(g_price_920, 4);
               g_price_896 = NormalizeDouble(g_price_896, 4);
               g_price_888 = NormalizeDouble(g_price_888, 4);
               g_price_880 = NormalizeDouble(g_price_880, 4);
               g_price_872 = NormalizeDouble(g_price_872, 4);
               g_price_864 = NormalizeDouble(g_price_864, 4);
               g_price_856 = NormalizeDouble(g_price_856, 4);
            }
         }
      }
   }
   if (gd_1092 > 5.0) gd_1100 = gd_1092;
   else gd_1100 = 10000.0 * gd_1092;
   if (gd_1116 > 5.0) gd_1108 = gd_1116;
   else gd_1108 = 10000.0 * gd_1116;
   if (gd_1092 > 5.0) gd_1100 = gd_1092;
   else gd_1100 = 10000.0 * gd_1092;
   if (gd_1116 > 5.0) gd_1108 = gd_1116;
   else gd_1108 = 10000.0 * gd_1116;
   if (ObjectFind("R1 label") != 0) {
      ObjectCreate("R1 label", OBJ_TEXT, 0, Time[20], g_price_832);
      ObjectSetText("R1 label", " R1", 8, "Arial", Yellow);
   } else ObjectMove("R1 label", 0, Time[20], g_price_832);
   if (ObjectFind("R2 label") != 0) {
      ObjectCreate("R2 label", OBJ_TEXT, 0, Time[20], g_price_840);
      ObjectSetText("R2 label", " R2", 8, "Arial", Orange);
   } else ObjectMove("R2 label", 0, Time[20], g_price_840);
   if (ObjectFind("R3 label") != 0) {
      ObjectCreate("R3 label", OBJ_TEXT, 0, Time[20], g_price_848);
      ObjectSetText("R3 label", " R3", 8, "Arial", Red);
   } else ObjectMove("R3 label", 0, Time[20], g_price_848);
   if (ObjectFind("P label") != 0) {
      ObjectCreate("P label", OBJ_TEXT, 0, Time[20], g_price_1000);
      ObjectSetText("P label", "Pivot", 8, "Arial", DeepPink);
   } else ObjectMove("P label", 0, Time[20], g_price_1000);
   if (ObjectFind("S1 label") != 0) {
      ObjectCreate("S1 label", OBJ_TEXT, 0, Time[20], g_price_904);
      ObjectSetText("S1 label", "S1", 8, "Arial", Yellow);
   } else ObjectMove("S1 label", 0, Time[20], g_price_904);
   if (ObjectFind("S2 label") != 0) {
      ObjectCreate("S2 label", OBJ_TEXT, 0, Time[20], g_price_912);
      ObjectSetText("S2 label", "S2", 8, "Arial", Orange);
   } else ObjectMove("S2 label", 0, Time[20], g_price_912);
   if (ObjectFind("S3 label") != 0) {
      ObjectCreate("S3 label", OBJ_TEXT, 0, Time[20], g_price_920);
      ObjectSetText("S3 label", "S3", 8, "Arial", Red);
   } else ObjectMove("S3 label", 0, Time[20], g_price_920);
   if (ObjectFind("M5 line") != 0) {
      ObjectCreate("M5 line", OBJ_HLINE, 0, Time[40], g_price_896);
      ObjectSet("M5 line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("M5 line", OBJPROP_COLOR, White);
   } else ObjectMove("M5 line", 0, Time[40], g_price_896);
   if (ObjectFind("M4 line") != 0) {
      ObjectCreate("M4 line", OBJ_HLINE, 0, Time[40], g_price_888);
      ObjectSet("M4 line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("M4 line", OBJPROP_COLOR, White);
   } else ObjectMove("M4 line", 0, Time[40], g_price_888);
   if (ObjectFind("M3 line") != 0) {
      ObjectCreate("M3 line", OBJ_HLINE, 0, Time[40], g_price_880);
      ObjectSet("M3 line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("M3 line", OBJPROP_COLOR, White);
   } else ObjectMove("M3 line", 0, Time[40], g_price_880);
   if (ObjectFind("M2 line") != 0) {
      ObjectCreate("M2 line", OBJ_HLINE, 0, Time[40], g_price_872);
      ObjectSet("M2 line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("M2 line", OBJPROP_COLOR, White);
   } else ObjectMove("M2 line", 0, Time[40], g_price_872);
   if (ObjectFind("M1 line") != 0) {
      ObjectCreate("M1 line", OBJ_HLINE, 0, Time[40], g_price_864);
      ObjectSet("M1 line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("M1 line", OBJPROP_COLOR, White);
   } else ObjectMove("M1 line", 0, Time[40], g_price_864);
   if (ObjectFind("M0 line") != 0) {
      ObjectCreate("M0 line", OBJ_HLINE, 0, Time[40], g_price_856);
      ObjectSet("M0 line", OBJPROP_STYLE, STYLE_DOT);
      ObjectSet("M0 line", OBJPROP_COLOR, White);
   } else ObjectMove("M0 line", 0, Time[40], g_price_856);
   if (ObjectFind("S1 line") != 0) {
      ObjectCreate("S1 line", OBJ_HLINE, 0, Time[40], g_price_904);
      ObjectSet("S1 line", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet("S1 line", OBJPROP_COLOR, Yellow);
   } else ObjectMove("S1 line", 0, Time[40], g_price_904);
   if (ObjectFind("S2 line") != 0) {
      ObjectCreate("S2 line", OBJ_HLINE, 0, Time[40], g_price_912);
      ObjectSet("S2 line", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet("S2 line", OBJPROP_COLOR, Orange);
   } else ObjectMove("S2 line", 0, Time[40], g_price_912);
   if (ObjectFind("S3 line") != 0) {
      ObjectCreate("S3 line", OBJ_HLINE, 0, Time[40], g_price_920);
      ObjectSet("S3 line", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet("S3 line", OBJPROP_COLOR, Red);
   } else ObjectMove("S3 line", 0, Time[40], g_price_920);
   if (ObjectFind("P line") != 0) {
      ObjectCreate("P line", OBJ_HLINE, 0, Time[40], g_price_1000);
      ObjectSet("P line", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet("P line", OBJPROP_COLOR, DeepPink);
   } else ObjectMove("P line", 0, Time[40], g_price_1000);
   if (ObjectFind("R1 line") != 0) {
      ObjectCreate("R1 line", OBJ_HLINE, 0, Time[40], g_price_832);
      ObjectSet("R1 line", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet("R1 line", OBJPROP_COLOR, Yellow);
   } else ObjectMove("R1 line", 0, Time[40], g_price_832);
   if (ObjectFind("R2 line") != 0) {
      ObjectCreate("R2 line", OBJ_HLINE, 0, Time[40], g_price_840);
      ObjectSet("R2 line", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet("R2 line", OBJPROP_COLOR, Orange);
   } else ObjectMove("R2 line", 0, Time[40], g_price_840);
   if (ObjectFind("R3 line") != 0) {
      ObjectCreate("R3 line", OBJ_HLINE, 0, Time[40], g_price_848);
      ObjectSet("R3 line", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSet("R3 line", OBJPROP_COLOR, Red);
   } else ObjectMove("R3 line", 0, Time[40], g_price_848);
   if (UseSmartSupportResitant) {
      if (gi_196 == 0) {
         switch (gi_220) {
         case 0:
            g_price_224 = g_price_1000;
            g_price_232 = g_price_1000;
            break;
         case 1:
            g_price_224 = g_price_832;
            g_price_232 = g_price_904;
            break;
         case 2:
            g_price_224 = g_price_840;
            g_price_232 = g_price_912;
            break;
         case 3:
            g_price_224 = g_price_848;
            g_price_232 = g_price_920;
         }
         if (gi_164 && gi_220 < 4) {
            if (Bid < g_price_232) {
               UseTradingSell = FALSE;
               UseTradingBuy = TRUE;
            }
            if (Bid > g_price_224) {
               UseTradingSell = TRUE;
               UseTradingBuy = FALSE;
            }
         }
         if (!gi_164 && gi_220 < 4) {
            if (Bid < g_price_232) {
               UseTradingSell = TRUE;
               UseTradingBuy = FALSE;
            }
            if (Bid > g_price_224) {
               UseTradingSell = FALSE;
               UseTradingBuy = TRUE;
            }
         }
      }
   }
   if (gi_196 == 3) {
      UseTradingBuy = FALSE;
      UseTradingSell = FALSE;
      if (g_day_652 != Day()) TradeEnable = TRUE;
      else TradeEnable = FALSE;
      if (gi_728 == 3 && gi_732 == 2 && TradeEnable) {
         if (Open[2] > Close[2] && Open[1] < Close[1] && Open[1] < Low[2] && Close[1] < Open[2] && Close[1] > Open[2] - (Open[2] - Close[2]) / 2.0) {
            UseTradingBuy = TRUE;
            gi_1572 = 28;
         }
         if (Open[2] > Close[2] && Open[2] == High[2] && Close[2] == Low[2] && Open[1] < Close[1] && Open[1] == Low[1] && Close[1] == High[1] && Open[1] - Open[2] > 0.0) {
            UseTradingBuy = TRUE;
            gi_1572 = 29;
         }
         if (Open[3] > Close[3] && Open[1] < Close[1] && Open[3] > Close[1] && Close[3] >= Open[1] && f0_10(2) && Low[3] - High[2] > 0.0 && Low[1] - High[2] > 0.0 && Low[1] != Low[3]) {
            UseTradingBuy = TRUE;
            gi_1572 = 30;
         }
         if (Open[3] > Close[3] && f0_10(2) && Open[1] < Close[1] && (Low[3] - High[2] > 0.0 && Low[3] >= High[2] && High[3] >= High[1]) && (High[2] - Low[1] >= 0.0 && Low[1] <= High[2] &&
            High[2] >= Low[1]) && Close[3] >= Open[1] && Open[3] > Close[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 31;
         }
         if (Open[3] > Close[3] && Open[2] > Close[2] || Open[2] < Close[2] && (Open[2] - Close[2] > 0.0 && Open[2] - Close[2] < (Open[3] - Close[3]) / 2.0 || Close[2] - Open[2] > 0.0 &&
            Close[2] - Open[2] < (Open[3] - Close[3]) / 2.0) && Open[1] < Close[1] && Low[3] - High[2] > 0.0 || Low[3] >= High[2] || High[2] >= Low[3] && Low[1] - High[2] > 0.0 ||
            Low[1] >= High[2] || High[2] >= Low[1] && Close[3] >= Open[1] && Open[3] > Close[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 34;
         }
         if (Open[3] > Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Open[3] - Close[3] > Close[2] - Open[2] && Close[1] > Close[2] && Open[1] >= Close[1] || Open[1] < Close[2] &&
            Close[1] > Open[3] && Close[1] > Close[2] && Close[3] < Open[2] && Open[3] > Close[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 37;
         }
         if (Open[3] > Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Open[3] - Close[3] < Close[2] - Open[2] && Open[1] < Close[2] && Close[3] > Open[2] && Close[2] > Open[3] &&
            Close[2] > Open[1] && Open[3] < Close[2] && Close[1] > Close[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 38;
         }
         if (Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] < Close[1] && Open[4] == High[4] && Close[4] == Low[4] && Open[3] == High[3] && Close[3] == Low[3] &&
            Open[1] == High[1] && Close[1] == Low[1] && High[2] - Open[2] > 2.0 * (Open[2] - Close[2]) && Close[3] - Open[2] > 0.0 && Open[2] < Close[3] && Open[4] > Open[3] && Close[4] > Close[3] && Close[1] < Close[2] && Open[1] > High[2] && Open[4] > Open[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 41;
         }
         if (Open[1] > Close[1] && (Open[1] - Close[1] > 0.0 && Open[1] - Close[1] < 0.2 * (High[1] - Low[1])) && (High[2] - Open[2] < 0.3 * (High[2] - Low[2]) && Close[1] - Low[1] > 0.7 * (High[1] - Low[1])) &&
            High[1] - Low[1] > 100.0 * Point) {
            UseTradingBuy = TRUE;
            gi_1572 = 42;
         }
         if (Open[1] < Close[1] && (Close[1] - Open[1] > 0.0 && Close[1] - Open[1] < 0.2 * (High[1] - Low[1])) && (High[2] - Close[2] < 0.3 * (High[2] - Low[2]) && Open[1] - Low[1] > 0.7 * (High[1] - Low[1])) &&
            High[1] - Low[1] > 100.0 * Point) {
            UseTradingBuy = TRUE;
            gi_1572 = 42;
         }
         if (Open[1] > Close[1] && (Open[1] - Close[1] > 0.0 && Open[1] - Close[1] < (High[1] - Open[1]) / 50.0) && Close[1] == Low[1] && High[1] - Close[1] > 100.0 * Point) {
            UseTradingBuy = TRUE;
            gi_1572 = 42;
         }
         if (Open[1] < Close[1] && (Close[1] - Open[1] > 0.0 && Close[1] - Open[1] < (High[1] - Close[1]) / 50.0) && Open[1] == Low[1] && High[1] - Open[1] > 100.0 * Point) {
            UseTradingBuy = TRUE;
            gi_1572 = 42;
         }
         if (Open[1] == Close[1] == Low[1] && High[1] - Close[1] > 100.0 * Point) {
            UseTradingBuy = TRUE;
            gi_1572 = 42;
         }
         if (Open[1] == Close[1] && High[1] - Close[1] > 100.0 * Point) {
            UseTradingBuy = TRUE;
            gi_1572 = 42;
         }
         if ((Open[1] - Close[1] >= 0.0 && Open[1] - Close[1] <= 10.0 * Point) || (Close[1] - Open[1] >= 0.0 && Close[1] - Open[1] <= 10.0 * Point) && Open[1] < Close[1] ||
            Open[1] < Close[1] && ((High[1] - Open[1] / Close[1] - Low[1] >= 1.0 && High[1] - Open[1] / Close[1] - Low[1] < 2.0) || High[1] - Close[1] / Open[1] - Low[1] >= 1.0 &&
            High[1] - Close[1] / Open[1] - Low[1] < 2.0)) {
            UseTradingBuy = TRUE;
            gi_1572 = 43;
         }
         if (Open[2] > Close[2] && Open[1] < Close[1] && Close[2] > Open[1] && Open[2] < Close[1] && Close[1] - Open[1] > 1.2 * (Open[2] - Close[2]) && Open[0] - Close[1] > 0.0) {
            UseTradingBuy = TRUE;
            gi_1572 = 44;
         }
         if (Open[2] > Close[2] && Open[1] > Close[1] || Open[1] < Close[1] && Open[1] > Close[1] || Open[1] < Close[1] && (Open[1] - Close[1] >= 0.0 && Open[1] - Close[1] <= 10.0 * Point) ||
            (Close[1] - Open[1] >= 0.0 && Close[1] - Open[1] <= 10.0 * Point) && Open[1] < Close[1] || Open[1] > Close[1] && (Low[1] - Close[1] / Open[1] - High[1] >= 0.0 && Low[1] - Close[1] / Open[1] - High[1] < 0.03) ||
            (Low[1] - Open[1] / Close[1] - High[1] >= 1.0 && Low[1] - Open[1] / Close[1] - High[1] < 0.03)) {
            UseTradingBuy = TRUE;
            gi_1572 = 45;
         }
         if (Open[2] > Close[2] && Open[1] > Close[1] && (Open[1] - Close[1] >= 0.0 && Open[1] - Close[1] <= 5.0 * Point) || (Close[1] - Open[1] >= 0.0 && Close[1] - Open[1] <= 5.0 * Point) &&
            Open[1] < Close[1] || Open[1] < Close[1] && (Low[1] - Close[1] / Open[1] - High[1] >= 1.0 && Low[1] - Close[1] / Open[1] - High[1] < 1.2) || (Low[1] - Open[1] / Close[1] - High[1] >= 1.0 &&
            Low[1] - Open[1] / Close[1] - High[1] < 1.2) && Open[1] < Close[1] || Open[1] > Close[1] && Close[1] - High[1] > 0.0) {
            UseTradingBuy = TRUE;
            gi_1572 = 46;
         }
         if (Open[2] > Close[2] && (Open[1] - Close[1] >= 0.0 && Open[1] - Close[1] <= 10.0 * Point) || (Close[1] - Open[1] >= 0.0 && Close[1] - Open[1] <= 10.0 * Point) &&
            Open[1] < Close[1] || Open[1] < Close[1] && (Low[1] - Close[1] / Open[1] - High[1] >= 1.0 && Low[1] - Close[1] / Open[1] - High[1] < 1.2) || (Low[1] - Open[1] / Close[1] - High[1] >= 1.0 &&
            Low[1] - Open[1] / Close[1] - High[1] < 1.2) && Open[1] < Close[1] || Open[1] > Close[1] && Open[1] < Open[2] && Close[1] > Close[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 47;
         }
         if (Open[2] > Close[2] && Open[1] > Close[1] && Open[2] > Open[1] && Close[2] < Close[1] && Open[2] - Close[2] > 2.0 * (Close[1] - Open[1])) {
            UseTradingBuy = TRUE;
            gi_1572 = 48;
         }
         if (Open[2] > Close[2] && Open[1] > Close[1] && Open[2] > Open[1] && (Close[2] <= Close[1] && Close[2] > 1.02 * Close[1]) || (Close[1] <= Close[2] && Close[1] > 1.02 * Close[2]) &&
            Open[2] - Close[2] > 1.5 * (Open[1] - Close[1])) {
            UseTradingBuy = TRUE;
            gi_1572 = 49;
         }
         if (Open[2] > Close[2] && Open[1] < Close[1] && Open[1] <= Close[2] && Open[2] - Close[2] > 50.0 * Point && Close[1] - Open[1] > 50.0 * Point && (Close[1] >= Close[2] &&
            Close[1] < 1.001 * Close[2])) {
            UseTradingBuy = TRUE;
            gi_1572 = 50;
         }
         if (Open[3] > Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[3] == Low[3] && Close[1] == Low[1] && Open[2] > Close[3] && Close[2] > Open[3] && Open[1] > Close[2] &&
            Open[1] > Open[3] && Close[3] - Close[1] < 10.0 * Point || Close[1] - Close[3] < 10.0 * Point) {
            UseTradingBuy = TRUE;
            gi_1572 = 51;
         }
         if (Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && High[3] == Open[3] && High[2] == Open[2] && High[1] == Open[1] && Low[1] == Close[1] || Close[1] - Low[1] > 0.0 * Point &&
            Open[3] > Open[2] && Open[2] > Open[1] && Close[3] > Close[2] && Close[2] > Close[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 801;
         }
         if (f0_10(3) && f0_10(2) && f0_10(1) && Low[2] < Low[3] && High[2] < High[3] && High[2] < High[1] && Low[2] < Low[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 52;
         }
         if (Open[3] > Close[3] && Open[2] > Close[2] && High[2] == Open[2] || High[2] - Open[2] > 0.0 * Point && Open[1] < Close[1] && Open[3] > Open[2] && Close[2] > Close[1] &&
            Low[2] < Close[3] && Low[2] < Open[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 527;
         }
         if (Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] || Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[5] > Close[1] && Close[1] > Open[4] &&
            Close[1] > Open[3] || Close[1] > Close[3] && Close[1] > Open[2] && Open[1] < Close[5] && Close[2] < Open[1] && Close[5] > Open[4] && Open[4] > Open[3] || Open[4] > Close[3] &&
            Open[3] > Open[2] || Close[3] > Open[2] && Close[2] < Close[3] || Close[2] < Open[3] && Close[2] < Close[4]) {
            UseTradingBuy = TRUE;
            gi_1572 = 777;
         }
         if (Open[5] > Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Close[2] == Low[2] || Close[2] - Low[2] > 0.0 * Point && Open[1] < Close[1] &&
            Open[5] > Close[1] && Open[5] > Open[4] && Open[5] > Open[3] && Open[5] > High[2] && Close[5] > Close[4] && Close[4] > Close[3] && Close[3] > Close[2] && Open[2] < Open[1] &&
            Close[2] < Open[1] && Open[5] - Close[5] > 40.0 * Point && Open[4] - Close[5] > 40.0 * Point && Open[3] - Close[5] > 40.0 * Point && Close[1] - Open[5] > 40.0 * Point) {
            UseTradingBuy = TRUE;
            gi_1572 = 888;
         }
         if (Open[5] < Close[5] && Open[4] > Close[4] && Open[3] > Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Close[5] > High[4] && Close[4] < High[3] && Close[3] < High[2] &&
            Open[1] <= Close[1] && Low[1] < Low[5]) {
            UseTradingBuy = TRUE;
            gi_1572 = 53;
         }
         if (Open[2] > Close[2] && Open[2] - Close[2] > 1.5 * (Close[1] - Open[1]) && Open[1] < Close[1] && Open[2] > Close[1] && Close[2] < Open[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 5400;
         }
         if (Open[2] > Close[2] && (Open[2] - Close[2] > 0.0 && Open[2] - Close[2] < 0.2 * (High[2] - Low[2])) && (High[2] - Open[2] < 0.6 * (High[2] - Low[2]) && Close[2] - Low[2] < 0.6 * (High[2] - Low[2])) &&
            High[2] - Low[2] > 60.0 * Point && Open[1] < Close[1] && Close[1] > Open[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 717;
         }
         if (Open[1] < Close[1] && (Close[1] - Open[1] > 0.0 && Close[1] - Open[1] < 0.2 * (High[1] - Low[1])) && (High[2] - Close[1] < 0.6 * (High[1] - Low[1]) && Open[1] - Low[1] < 0.6 * (High[1] - Low[1])) &&
            High[1] - Low[1] > 60.0 * Point && Open[1] < Close[1] && Close[1] > Open[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 717;
         }
         if (Open[2] < Close[2] && Open[1] > Close[1] && Open[2] - Open[1] >= Close[2] - Open[2] && Low[2] > High[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 56;
         }
         if (Open[4] < Close[4] && Open[3] > Close[3] && Open[3] <= Open[4] && Open[3] >= Low[4] && Low[3] < Close[4] && Low[3] > Open[4] && Open[2] - Close[2] == Open[1] - Close[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 57;
         }
         if (Open[2] < Close[2] && Open[2] - Low[2] > 4.0 * (Close[2] - Open[2]) && Open[2] - Low[2] > 4.0 * (High[2] - Close[2]) && Open[1] < Close[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 58;
         }
         if (Open[2] > Close[2] && Close[2] - Low[2] > 4.0 * (Open[2] - Close[2]) && Close[2] - Low[2] > 4.0 * (High[2] - Open[2]) && Open[1] < Close[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 58;
         }
         if (Open[2] > Close[2] && High[2] == Open[2] && Close[2] - Low[2] > 2.0 * (Open[2] - Close[2]) && Open[1] > Close[1] && Close[1] < Close[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 600;
         }
         if (Open[2] > Close[2] && Close[2] - Low[2] > 2.0 * (Open[2] - Close[2]) && (High[2] - Open[2]) / (Close[2] - Low[2]) < 0.05 && Open[1] > Close[1] && Close[1] < Close[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 600;
         }
         if (Open[2] < Close[2] && High[2] == Close[2] && Open[2] - Low[2] > 2.0 * (Close[2] - Open[2]) && Open[1] > Close[1] && Close[1] < Close[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 600;
         }
         if (Open[2] < Close[2] && Open[2] - Low[2] > 2.0 * (Close[2] - Open[2]) && (High[2] - Close[2]) / (Open[2] - Low[2]) < 0.05 && Open[1] > Close[1] && Close[1] < Close[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 600;
         }
         if (Open[2] > Close[2] > Open[2] - Close[2] && (30.0 * Point && Open[2] - Close[2] < 100.0 * Point) && High[2] - Open[2] > 2.0 * Open[2] - Close[2] && Close[2] - Low[2] > 2.0 * Open[2] - Close[2] &&
            Open[1] < Close[1] && Ask > Open[0]) {
            UseTradingBuy = TRUE;
            gi_1572 = 2226;
         }
         if (Open[2] < Close[2] > Close[2] - Open[2] && (30.0 * Point && Close[2] - Open[2] < 100.0 * Point) && High[2] - Close[2] > 2.0 * Close[2] - Open[2] && Open[2] - Low[2] > 2.0 * Close[2] - Open[2] &&
            Open[1] < Close[1] && Ask > Open[0]) {
            UseTradingBuy = TRUE;
            gi_1572 = 2226;
         }
         gd_764 += gd_756 * gd_740;
         gd_788 = gd_764 - (gd_756 + gi_804) * gd_740;
         gi_796 = TRUE;
         gi_800 = FALSE;
      }
      if (gi_728 == 2 && gi_732 == 3 && TradeEnable) {
         if (Open[2] < Close[2] && Open[1] > Close[1] && (Close[1] < Close[2] - (Close[2] - Open[2]) / 2.0 && Close[1] > Open[2]) && (Close[2] > Open[1] - (Open[1] - Close[1]) / 2.0 &&
            Close[2] < Open[1])) {
            UseTradingSell = TRUE;
            gi_1572 = 1;
         }
         if (Open[3] < Close[3] && Open[3] == Low[3] && Close[3] == High[3] && Open[2] > Close[2] && Open[2] == High[2] && Close[2] == Low[2] && Open[3] - Open[2] > 0.0 && Open[1] < Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 2;
         }
         if (Open[3] < Close[3] && Open[1] > Close[1] && Close[3] > Open[1] && Open[3] <= Close[1] && Open[2] == Close[2] == High[2] == Low[2] || High[2] - Open[2] >= Close[2] - Low[2] ||
            High[2] - Open[2] <= Close[2] - Low[2] && Low[2] - High[3] > 0.0 && Low[2] - High[1] > 0.0 && High[1] != Low[3]) {
            UseTradingSell = TRUE;
            gi_1572 = 3;
         }
         if (Open[3] < Close[3] && Open[2] == Close[2] == High[2] == Low[2] || High[2] - Open[2] >= Close[2] - Low[2] || High[2] - Open[2] <= Close[2] - Low[2] && Open[1] > Close[1] &&
            Low[2] - High[3] > 0.0 || Low[2] >= High[3] || Low[2] > High[3] && High[2] - High[1] > 0.0 || High[1] >= Low[2] || Low[2] >= High[1] && Close[3] <= Open[1] && Open[3] < Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 4;
         }
         if (Open[4] < Close[4] && Open[3] == Close[3] == High[3] == Low[3] || High[3] - Open[3] >= Close[3] - Low[3] || High[2] - Open[3] <= Close[3] - Low[3] && Open[2] == Close[2] == High[2] == Low[2] ||
            High[2] - Open[2] >= Close[2] - Low[2] || High[2] - Open[2] <= Close[2] - Low[2] && Open[1] > Close[1] && Low[3] - High[4] > 0.0 || Low[3] >= High[4] || Low[4] >= Low[3] &&
            High[3] - High[1] > 0.0 || High[1] >= Low[3] || Low[3] >= High[1] && Low[2] - High[4] > 0.0 || Low[2] >= High[4] || Low[4] >= Low[2] && High[2] - High[1] > 0.0 || High[1] >= Low[2] ||
            Low[2] >= High[1] && Close[4] <= Open[1] && Open[4] < Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 5;
         }
         if (Open[5] < Close[5] && Open[4] == Close[4] == High[4] == Low[4] || High[4] - Open[4] >= Close[4] - Low[4] || High[4] - Open[4] <= Close[4] - Low[4] && Open[3] == Close[3] == High[3] == Low[3] ||
            High[3] - Open[3] >= Close[3] - Low[3] || High[3] - Open[3] <= Close[3] - Low[3] && Open[2] == Close[2] == High[2] == Low[2] || High[2] - Open[2] >= Close[2] - Low[2] ||
            High[2] - Open[2] <= Close[2] - Low[2] && Open[1] > Close[1] && Low[4] - High[5] > 0.0 || Low[4] >= High[5] || Low[5] >= Low[4] && High[4] - High[1] > 0.0 || High[1] >= Low[4] ||
            Low[4] >= High[1] && Low[3] - High[5] > 0.0 || Low[3] >= High[5] || Low[5] >= Low[3] && High[3] - High[1] > 0.0 || High[1] >= Low[3] || Low[3] >= High[1] && Low[2] - High[5] > 0.0 ||
            Low[2] >= High[5] || Low[5] >= Low[2] && High[2] - High[1] > 0.0 || High[1] >= Low[2] || Low[2] >= High[1] && Close[5] <= Open[1] && Open[5] < Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 6;
         }
         if (Open[3] < Close[3] && Open[2] > Close[2] || Open[2] < Close[2] && (Open[2] - Close[2] > 0.0 && Open[2] - Close[2] < (Open[3] - Close[3]) / 2.0 || Close[2] - Open[2] > 0.0 &&
            Close[2] - Open[2] < (Open[3] - Close[3]) / 2.0) && Open[1] > Close[1] && Low[2] - High[3] > 0.0 || Low[2] >= High[3] || Low[2] >= High[3] && High[1] - Low[2] >= 0.0 ||
            Low[1] <= High[2] || High[2] >= High[1] && Close[3] <= Open[1] && Open[3] < Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 7;
         }
         if (Open[4] < Close[4] && Open[3] > Close[3] || Open[3] < Close[3] && (Open[3] - Close[3] > 0.0 && Open[3] - Close[3] < (Open[4] - Close[4]) / 2.0 || Close[3] - Open[3] > 0.0 &&
            Close[3] - Open[3] < (Open[4] - Close[4]) / 2.0) && Open[2] > Close[2] || Open[2] < Close[2] && (Open[2] - Close[2] > 0.0 && Open[2] - Close[2] < (Open[3] - Close[3]) / 2.0 ||
            Close[2] - Open[2] > 0.0 && Close[2] - Open[2] < (Open[4] - Close[4]) / 2.0) && Open[1] > Close[1] && Low[3] - High[4] > 0.0 || Low[3] >= High[4] || Low[3] >= High[4] &&
            High[1] - Low[3] >= 0.0 || Low[1] <= High[3] || High[3] >= High[1] && Low[2] - High[4] > 0.0 || Low[2] >= High[4] || Low[2] >= High[4] && High[1] - Low[2] >= 0.0 ||
            Low[1] <= High[2] || High[2] >= High[1] && Close[4] <= Open[1] && Open[4] < Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 8;
         }
         if (Open[5] < Close[5] && Open[4] > Close[4] || Open[4] < Close[4] && (Open[4] - Close[4] > 0.0 && Open[4] - Close[4] < (Open[5] - Close[5]) / 2.0 || Close[4] - Open[4] > 0.0 &&
            Close[4] - Open[4] < (Open[5] - Close[5]) / 2.0) && Open[2] > Close[2] || Open[2] < Close[2] && (Open[3] - Close[3] > 0.0 && Open[3] - Close[3] < (Open[5] - Close[5]) / 2.0 ||
            Close[3] - Open[3] > 0.0 && Close[3] - Open[3] < (Open[5] - Close[5]) / 2.0) && Open[2] > Close[2] || Open[2] < Close[2] && (Open[2] - Close[2] > 0.0 && Open[2] - Close[2] < (Open[5] - Close[5]) / 2.0 ||
            Close[2] - Open[2] > 0.0 && Close[2] - Open[2] < (Open[5] - Close[5]) / 2.0) && Open[1] > Close[1] && Low[4] - High[5] > 0.0 || Low[4] >= High[5] || Low[4] >= High[5] &&
            High[1] - Low[4] >= 0.0 || Low[1] <= High[4] || High[4] >= High[1] && Low[3] - High[5] > 0.0 || Low[3] >= High[5] || Low[3] >= High[5] && High[1] - Low[3] >= 0.0 ||
            Low[1] <= High[3] || High[3] >= High[1] && Low[2] - High[5] > 0.0 || Low[2] >= High[5] || Low[2] >= High[5] && High[1] - Low[2] >= 0.0 || Low[1] <= High[2] || High[2] >= High[1] &&
            Close[5] <= Open[1] && Open[5] < Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 9;
         }
         if (Open[3] < Close[3] && Open[2] > Close[2] && Open[3] - Close[3] > Close[2] - Open[2] && Close[1] < Close[2] && Open[1] < Open[2] || Open[1] > Close[2] && Close[1] < Open[3] &&
            Close[1] < Close[3] && Close[3] < Close[2] && Open[3] < Close[2]) {
            UseTradingSell = TRUE;
            gi_1572 = 10;
         }
         if (Open[3] < Close[3] && Open[2] > Close[2] && Open[1] > Close[2] && Close[3] - Open[3] < Open[2] - Close[2] && Close[3] < Open[2] && Close[2] > Close[1] && Open[3] < Close[2] &&
            Open[2] <= Open[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 11;
         }
         if (Open[3] > Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && (Open[2] >= Close[3] && Open[2] < Open[3]) && (Open[1] >= Close[2] && Open[1] < Open[2]) && Close[3] > Close[2] &&
            Close[2] > Close[1] && Open[3] > Open[2] && Open[2] > Open[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 12;
         }
         if (Open[3] < Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Close[3] - Close[2] > 0.0 && Open[1] > Open[2] && Close[1] < Close[2] && Close[1] >= Close[3] &&
            Close[2] > Close[3]) {
            UseTradingSell = TRUE;
            gi_1572 = 13;
         }
         if (Open[1] > Close[1] && (Open[1] - Close[1] > 0.0 && Open[1] - Close[1] < 0.2 * (High[1] - Low[1])) && (High[2] - Open[2] < 0.3 * (High[2] - Low[2]) && Close[1] - Low[1] > 0.7 * (High[1] - Low[1])) &&
            High[1] - Low[1] > 100.0 * Point) {
            UseTradingSell = TRUE;
            gi_1572 = 422;
         }
         if (Open[1] < Close[1] && (Close[1] - Open[1] > 0.0 && Close[1] - Open[1] < 0.2 * (High[1] - Low[1])) && (High[2] - Close[2] < 0.3 * (High[2] - Low[2]) && Open[1] - Low[1] > 0.7 * (High[1] - Low[1])) &&
            High[1] - Low[1] > 100.0 * Point) {
            UseTradingSell = TRUE;
            gi_1572 = 422;
         }
         if (Open[1] > Close[1] && (Open[1] - Close[1] > 0.0 && Open[1] - Close[1] < (High[1] - Open[1]) / 50.0) && Close[1] == Low[1] && High[1] - Close[1] > 100.0 * Point) {
            UseTradingSell = TRUE;
            gi_1572 = 422;
         }
         if (Open[1] < Close[1] && (Close[1] - Open[1] > 0.0 && Close[1] - Open[1] < (High[1] - Close[1]) / 50.0) && Open[1] == Low[1] && High[1] - Open[1] > 100.0 * Point) {
            UseTradingSell = TRUE;
            gi_1572 = 422;
         }
         if (Open[1] == Close[1] == Low[1] && High[1] - Close[1] > 100.0 * Point) {
            UseTradingSell = TRUE;
            gi_1572 = 422;
         }
         if (Open[1] == Close[1] && High[1] - Close[1] > 100.0 * Point) {
            UseTradingSell = TRUE;
            gi_1572 = 422;
         }
         if ((Open[1] - Close[1] >= 0.0 && Open[1] - Close[1] <= 10.0 * Point) || (Close[1] - Open[1] >= 0.0 && Close[1] - Open[1] <= 10.0 * Point) && Open[1] < Close[1] ||
            Open[1] < Close[1] && ((High[1] - Open[1] / Close[1] - Low[1] >= 1.0 && High[1] - Open[1] / Close[1] - Low[1] < 2.0) || High[1] - Close[1] / Open[1] - Low[1] >= 1.0 &&
            High[1] - Close[1] / Open[1] - Low[1] < 2.0)) {
            UseTradingSell = TRUE;
            gi_1572 = 4333;
         }
         if (Open[2] < Close[2] && Open[1] > Close[1] && Close[2] < Open[1] && Open[2] > Close[1] && Open[1] - Close[1] > 1.2 * (Close[2] - Open[2]) && Close[1] - Open[0] > 0.0) {
            UseTradingSell = TRUE;
            gi_1572 = 14;
         }
         if (Open[3] > Close[3] && Open[2] > Close[2] && Open[1] <= Close[1] && High[1] - Open[1] > 3.0 * (Close[1] - Low[1])) {
            UseTradingSell = TRUE;
            gi_1572 = 15;
         }
         if (Open[2] < Close[2] && Open[1] < Close[1] && (Open[1] - Close[1] >= 0.0 && Open[1] - Close[1] <= 5.0 * Point) || (Close[1] - Open[1] >= 0.0 && Close[1] - Open[1] <= 5.0 * Point) &&
            Open[1] < Close[1] || Open[1] < Close[1] && (Low[1] - Close[1] / Open[1] - High[1] >= 1.0 && Low[1] - Close[1] / Open[1] - High[1] < 1.2) || (Low[1] - Open[1] / Close[1] - High[1] >= 1.0 &&
            Low[1] - Open[1] / Close[1] - High[1] < 1.2) && Open[1] < Close[1] || Open[1] > Close[1] && Close[1] - High[1] > 0.0) {
            UseTradingSell = TRUE;
            gi_1572 = 446;
         }
         if (Open[2] < Close[2] && Open[1] == Close[1] && High[1] - Open[1] >= Open[1] - Low[1] && High[1] < High[2] && Low[1] > Low[2]) {
            UseTradingSell = TRUE;
            gi_1572 = 16;
         }
         if (Open[2] < Close[2] && Open[1] > Close[1] && Close[1] > Close[2] && Close[1] < High[2] && High[1] > High[2]) {
            UseTradingSell = TRUE;
            gi_1572 = 17;
         }
         if (Open[3] < Close[3] && Open[2] < Close[3] && Open[1] < Close[1] && Close[3] > (Close[2] - Open[2]) / 2.0 && Close[3] < Close[2] && Close[2] > (Close[1] - Open[1]) / 2.0 &&
            Close[2] < Close[1] && Open[3] < Open[2] && Open[2] < Open[1] && Close[3] - Open[3] > 40.0 * Point && Close[2] - Open[2] > 40.0 * Point) {
            UseTradingSell = TRUE;
            gi_1572 = 20;
         }
         if (Open[3] < Close[3] && Open[2] < Close[3] && Open[1] < Close[1] && Close[3] > (Close[2] - Open[2]) / 2.0 && Close[3] < Close[2] && Open[1] - Close[2] > 0.0 * Point &&
            Open[3] < Open[2] && Open[2] < Open[1] && Close[3] - Open[3] > 40.0 * Point && Close[2] - Open[2] > 40.0 * Point) {
            UseTradingSell = TRUE;
            gi_1572 = 2000;
         }
         if (f0_10(3) && f0_10(2) && f0_10(1) && Low[2] > Low[3] && High[2] > High[3] && High[2] > High[1] && Low[2] > Low[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 18;
         }
         if (Open[3] < Close[3] && Open[2] > Close[2] && Open[1] > Close[1] && Close[3] - Open[3] > 40.0 * Point && Open[2] - Close[2] > 40.0 * Point && Close[2] - Close[3] > 0.0 * Point &&
            Open[1] > Close[2] && Open[2] > Open[1] && Close[3] > Close[1] && Close[2] > Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 333;
         }
         if (Open[5] < Close[5] && Open[4] < Close[4] && Open[3] > Close[3] || Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[5] < Close[1] && Close[1] > Close[5] &&
            Close[1] < Open[3] || Close[1] < Close[3] && Close[1] < Open[2] && Close[1] < Open[4] && Close[1] > Close[5] && Close[2] > Open[1] && Close[5] < Open[4] && Open[4] < Open[3] ||
            Open[4] < Close[3] && Open[3] < Open[2] || Close[3] < Open[2] && Close[2] > Close[3] || Close[2] > Open[3] && Close[2] > Close[4] && Close[2] > Open[5]) {
            UseTradingSell = TRUE;
            gi_1572 = 1900;
         }
         if (Open[5] > Close[5] && Open[4] < Close[4] && Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[5] < Low[4] && Close[4] > Low[3] && Close[3] < Low[2] &&
            Open[1] >= Close[1] && Low[1] < Low[5]) {
            UseTradingSell = TRUE;
            gi_1572 = 19;
         }
         if (Open[2] < Close[2] && Close[2] - Open[2] > 1.5 * (Open[1] - Close[1]) && Open[1] > Close[1] && Close[2] > Open[1] && Open[2] < Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 21;
         }
         if (Open[2] < Close[2] && Open[1] > Close[1] && Close[1] - Close[2] >= Close[2] - Open[2] && Low[1] > High[2]) {
            UseTradingSell = TRUE;
            gi_1572 = 23;
         }
         if (Open[2] < Close[2] && High[2] - Close[2] > 4.0 * (Close[2] - Open[2]) && High[2] - Close[2] > 4.0 * (Open[2] - Low[2]) && Open[1] > Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 24;
         }
         if (Open[2] > Close[2] && High[2] - Open[2] > 4.0 * (Open[2] - Close[2]) && High[2] - Open[2] > 4.0 * (Close[2] - Low[2]) && Open[1] > Close[1]) {
            UseTradingSell = TRUE;
            gi_1572 = 24;
         }
         if (Open[1] > Close[1] && High[1] == Open[1] && Close[1] - Low[1] > 2.0 * (Open[1] - Close[1])) {
            UseTradingSell = TRUE;
            gi_1572 = 26;
         }
         if (Open[1] > Close[1] && Close[1] - Low[1] > 2.0 * (Open[1] - Close[1]) && (High[1] - Open[1]) / (Close[1] - Low[1]) < 0.05) {
            UseTradingSell = TRUE;
            gi_1572 = 26;
         }
         if (Open[1] < Close[1] && High[1] == Close[1] && Open[1] - Low[1] > 2.0 * (Close[1] - Open[1])) {
            UseTradingSell = TRUE;
            gi_1572 = 26;
         }
         if (Open[1] < Close[1] && Open[1] - Low[1] > 2.0 * (Close[1] - Open[1]) && (High[1] - Close[1]) / (Open[1] - Low[1]) < 0.05) {
            UseTradingSell = TRUE;
            gi_1572 = 26;
         }
         if (Open[3] < Close[3] && Close[2] - Open[2] > 2.0 * (Open[1] - Close[1]) && Open[2] < Close[2] && Open[1] > Close[1] && Close[1] < Low[2] && Close[1] < Low[3] && High[2] < High[3] &&
            Low[2] > Low[3]) {
            UseTradingSell = TRUE;
            gi_1572 = 28;
         }
         gd_772 -= gd_756 * gd_740;
         gd_780 = gd_772 + (gd_756 + gi_804) * gd_740;
         gi_796 = FALSE;
         gi_800 = TRUE;
      }
      if (gi_728 == 2 && gi_732 == 2 && TradeEnable) {
         if (Open[3] < Close[3] && Open[2] < Close[3] && Open[1] < Close[1] && Close[3] - Open[3] >= 50.0 * Point && Close[2] - Open[2] >= 50.0 * Point && Close[1] - Open[1] >= 50.0 * Point &&
            Open[2] - Close[3] > 0.0 && Open[1] - Close[3] > 0.0 && High[2] - High[3] > 0.0 && High[1] - High[3] > 0.0 && High[1] - Close[1] > High[2] - Close[2]) {
            UseTradingBuy = TRUE;
            gi_1572 = 54;
         }
         if (Open[5] < Close[5] && Open[4] > Close[4] && Open[3] > Close[3] || Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[4] > Open[2] && Close[4] > Close[2] &&
            Open[4] > Open[3] || Open[4] > Close[3] && Open[3] > Open[2] || Close[3] > Open[2] && Open[5] < Open[1] && Open[5] < Close[2] && Open[5] < Close[3] || Open[5] < Open[3] &&
            Open[5] < Close[4] && Close[4] - Close[5] > 0.0 && Close[1] > Open[4] && Close[1] > Open[3] || Close[1] > Close[3] && Close[1] > Open[2] && Close[1] > Close[5]) {
            UseTradingBuy = TRUE;
            gi_1572 = 55;
         }
         if (Open[5] < Close[5] && Open[4] > Close[4] && Open[3] > Close[3] || Open[3] < Close[3] && Open[2] > Close[2] && Open[1] < Close[1] && Open[4] > Open[2] && Close[4] > Close[2] &&
            Open[4] > Open[3] || Open[4] > Close[3] && Open[3] > Open[2] || Close[3] > Open[2] && Close[4] < Close[5] && Open[5] < Close[4] && Open[5] < Close[3] || Open[5] < Open[3] &&
            Open[5] < Close[2] && Open[5] < Open[1] && Close[1] > Close[4] && Close[1] > Close[3] || Close[5] > Open[3] && Close[1] > Close[2] && Close[1] > Close[5]) {
            UseTradingBuy = TRUE;
            gi_1572 = 56;
         }
         if (Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Close[3] - Open[3] >= 50.0 * Point && Close[2] - Open[2] >= 50.0 * Point && Open[1] - Close[1] >= 50.0 * Point &&
            Close[2] > Open[1] && Open[2] - Close[3] > 0.0 && Close[1] < Close[3] && Open[2] > Close[1]) {
            UseTradingBuy = TRUE;
            gi_1572 = 57;
         }
         if (Open[3] < Close[3] && Open[2] < Close[2] && Open[1] > Close[1] && Open[3] - Close[3] >= 50.0 * Point && Open[2] - Close[2] >= 50.0 * Point &&

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

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

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

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

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

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

Стоимость полного кода
8 230,60₽ ≈ $100.59