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

exp_lego_4_beta.mq4

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

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

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

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

О программе

Данный продукт представляет собой торговый советник (Expert Advisor) для платформы MetaTrader 4 на языке MQL4. Он позволяет собирать пользовательские торговые стратегии, комбинируя сигналы множества технических индикаторов с настраиваемыми условиями открытия и закрытия позиций.

Советник поддерживает 12 встроенных индикаторов (MA, Stochastic, Awesome Oscillator, Standard Deviation, DeMarker, CCI, RSI, MFI, WPR, MACD, OsMA, ADX, SAR) и до 8 пользовательских индикаторов через iCustom. Для каждого индикатора предусмотрены отдельные переключатели открытия и закрытия сигналов, а также числовые параметры настройки.

Реализованы управление ордерами (OrderSend, OrderClose), расчёт стоп-лосса и тейк-профита (в том числе через ATR), три режима управления лотами (фиксированный, мартингейл, процентный) и период ожидания после закрытия позиции. Обработка ошибок торговых операций выполняется через специальную функцию с перечислением кодов ошибок MetaTrader.

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

НастройкаОписание
Instructsia Инструкция — Текстовый параметр с инструкцией для пользователя.
ShiftTunes Описание сдвигов — Текстовый параметр с описанием сдвигов.
0 - ?????????? ???, 1 - ????????. (GeneralShift) Общий сдвиг — Переключатель: 0 — сдвиг по текущей баре, 1 — сдвиг на предыдущую бару.
Implemented_Indicators Реализованные индикаторы — Текстовый параметр с описанием реализованных индикаторов.
WARNING1 Предупреждение 1 — Текстовое предупреждение №1.
WARNING2 Предупреждение 2 — Текстовое предупреждение №2.
WARNING3 Предупреждение 3 — Текстовое предупреждение №3.
The_List_Of Разделитель — Текстовый параметр-разделитель.
Indicators1 Описание группы индикаторов 1 — Текстовый параметр с описанием первой группы индикаторов.
Indicators2 Описание группы индикаторов 2 — Текстовый параметр с описанием второй группы индикаторов.
Indicators3 Описание группы индикаторов 3 — Текстовый параметр с описанием третьей группы индикаторов.
Indicators4 Описание группы индикаторов 4 — Текстовый параметр с описанием четвёртой группы индикаторов.
Indicator_1 Описание индикатора 1 — Текстовое описание первого встроенного индикатора.
otkr_MA Открытие по MA — Переключатель использования сигнала скользящей средней для открытия позиции.
??????????? _????_ ??????????. ????? ??? MACD-"??????? ?????". (zakr_MA) Закрытие по MA — Переключатель использования сигнала скользящей средней для закрытия позиции.
MA1 Период MA1 — Первое значение периода скользящей средней.
MA2 Период MA2 — Второе значение периода скользящей средней.
???? - ??? ???, ?? ??????? ????????? ????????. 1 - ????????????????, 0 - ???????, 3 - ??? ????? ???? (Shift_1) Сдвиг MA1 — Сдвиг для первой скользящей средней. 1 — сдвиг вперёд, 0 — текущая, 3 — другой сдвиг.
Shift_2 Сдвиг MA2 — Сдвиг для второй скользящей средней.
0 - Simple, 1 - Expotential, 2 - Smoothed, 3 - Linear Weighed. Most people are using EMA. (MA_type) Тип скользящей средней — Тип скользящей средней: 0 — Simple, 1 — Exponential, 2 — Smoothed, 3 — Linear Weighted.
Indicator_2 Описание индикатора 2 — Текстовое описание второго встроенного индикатора.
otkr_Stoh Открытие по Stochastic — Переключатель использования сигнала Stochastic для открытия позиции.
zakr_Stoh Закрытие по Stochastic — Переключатель использования сигнала Stochastic для закрытия позиции.
per_K Параметр K Stochastic — Параметр K для индикатора Stochastic.
per_D Параметр D Stochastic — Параметр D для индикатора Stochastic.
slow Замедление Stochastic — Замедляющий параметр для индикатора Stochastic.
zoneBUY Зона покупки Stochastic — Зона покупки для индикатора Stochastic.
?????? ???? - ????? ?? ????? ??????????? ?????? ?? ???????????. (zoneSELL) Зона продажи Stochastic — Зона продажи для индикатора Stochastic.
???????? std, ??????????, standard. ??? ????????, ??? ?????????... ?? ???????????? ????. ???????. ?? (Indicator_3) Описание индикатора 3 — Текстовое описание третьего встроенного индикатора.
otkr_AO Открытие по AO — Переключатель использования сигнала Awesome Oscillator для открытия позиции.
zakr_AO Закрытие по AO — Переключатель использования сигнала Awesome Oscillator для закрытия позиции.
?? ?? ?????, ??? ? ?????? ??????????? - ?????? ? ???. ????. (StdDev) Описание StdDev — Текстовый параметр с описанием Standard Deviation.
otkr_StdDev Открытие по StdDev — Переключатель использования сигнала Standard Deviation для открытия позиции.
zakr_StdDev Закрытие по StdDev — Переключатель использования сигнала Standard Deviation для закрытия позиции.
StdDevMAPeriod Период MA для StdDev — Период скользящей средней для расчёта Standard Deviation.
StdDevMAShift Сдвиг MA для StdDev — Сдвиг скользящей средней для расчёта Standard Deviation.
StdDevLimitToOpen Порог StdDev для открытия — Пороговое значение Standard Deviation для открытия позиции (ToOpen).
????????? ???? - ?? ?????? ????????? ToClose ????, ??? ToOpen. (StdDevLimitToClose) Порог StdDev для закрытия — Пороговое значение Standard Deviation для закрытия позиции (ToClose).
Indicator_4 Описание индикатора 4 — Текстовое описание четвёртого встроенного индикатора.
otkr_Dema Открытие по DeMarker — Переключатель использования сигнала DeMarker для открытия позиции.
zakr_Dema Закрытие по DeMarker — Переключатель использования сигнала DeMarker для закрытия позиции.
DeMa_period Период DeMarker — Период расчёта индикатора DeMarker.
niz_ur Нижний порог DeMarker — Нижний порог DeMarker.
verx_ur Верхний порог DeMarker — Верхний порог DeMarker.
Indicator_5 Описание индикатора 5 — Текстовое описание пятого встроенного индикатора.
otkr_CCI Открытие по CCI — Переключатель использования сигнала CCI для открытия позиции.
zakr_CCI Закрытие по CCI — Переключатель использования сигнала CCI для закрытия позиции.
CCI_period Период CCI — Период расчёта индикатора CCI.
What, if we want 95? (CCI_Level) Уровень CCI — Уровень индикатора CCI для определения условий сигналов.
Indicator_6 Описание индикатора 6 — Текстовое описание шестого встроенного индикатора.
otkr_RSI Открытие по RSI — Переключатель использования сигнала RSI для открытия позиции.
zakr_RSI Закрытие по RSI — Переключатель использования сигнала RSI для закрытия позиции.
RSI_Period Период RSI — Период расчёта индикатора RSI.
RSI_High Верхний уровень RSI — Верхний уровень для индикатора RSI.
RSI_Low Нижний уровень RSI — Нижний уровень для индикатора RSI.
Indicator_7 Описание индикатора 7 — Текстовое описание седьмого встроенного индикатора.
otkr_MACD Открытие по MACD — Переключатель использования сигнала MACD для открытия позиции.
zakr_MACD Закрытие по MACD — Переключатель использования сигнала MACD для закрытия позиции.
MACD_Fast Быстрая линия MACD — Быстрая линия MACD.
MACD uses SIGNAL line (MACD_Slow) Медленная линия MACD — Медленная линия MACD.
because you have 2 MA Cross system (MACD_Signal) Сигнальная линия MACD — Сигнальная линия MACD.
Indicator_8 Описание индикатора 8 — Текстовое описание восьмого встроенного индикатора.
otkr_OsMA Открытие по OsMA — Переключатель использования сигнала OsMA для открытия позиции.
zakr_OsMA Закрытие по OsMA — Переключатель использования сигнала OsMA для закрытия позиции.
OsMA_Fast Быстрая линия OsMA — Быстрая линия OsMA.
SIGNAL line (Well, you can also try Zignal.com as a platform - expenseful lux look is a sort of guar (OsMA_Slow) Медленная линия OsMA — Медленная линия OsMA.
because you have 2 MA Cross system (OsMA_Signal) Сигнальная линия OsMA — Сигнальная линия OsMA.
Williams Percent Range (Indicator_9) Описание индикатора 9 — Текстовое описание девятого встроенного индикатора.
otkr_WPR Открытие по WPR — Переключатель использования сигнала Williams Percent Range для открытия позиции.
zakr_WPR Закрытие по WPR — Переключатель использования сигнала Williams Percent Range для закрытия позиции.
WPR_Period Период WPR — Период расчёта индикатора Williams Percent Range.
Indicator_10 Описание индикатора 10 — Текстовое описание десятого встроенного индикатора.
otkr_MFI Открытие по MFI — Переключатель использования сигнала MFI для открытия позиции.
zakr_MFI Закрытие по MFI — Переключатель использования сигнала MFI для закрытия позиции.
MFI_Period Период MFI — Период расчёта индикатора MFI.
MFI_High Верхний уровень MFI — Верхний уровень для индикатора MFI.
MFI_Low Нижний уровень MFI — Нижний уровень для индикатора MFI.
Main Line 30/70 (Indicator_11) Описание индикатора 11 — Текстовое описание одиннадцатого встроенного индикатора.
otkr_ADX Открытие по ADX — Переключатель использования сигнала ADX для открытия позиции.
zakr_ADX Закрытие по ADX — Переключатель использования сигнала ADX для закрытия позиции.
ADX_Period Период ADX — Период расчёта индикатора ADX.
Indicator_12 Описание индикатора 12 — Текстовое описание двенадцатого встроенного индикатора.
otkr_SAR Открытие по SAR — Переключатель использования сигнала SAR для открытия позиции.
zakr_SAR Закрытие по SAR — Переключатель использования сигнала SAR для закрытия позиции.
SAR_Step Шаг SAR — Шаг индикатора SAR.
SAR_MaxStep Максимальный шаг SAR — Максимальный шаг индикатора SAR.
IndName1 Имя индикатора 1 — Имя пользовательского индикатора №1 для iCustom.
otkr_Custom_1 Открытие по индикатору 1 — Переключатель использования пользовательского индикатора №1 для открытия позиции.
zakr_Custom_1 Закрытие по индикатору 1 — Переключатель использования пользовательского индикатора №1 для закрытия позиции.
Shift1 Сдвиг индикатора 1 — Сдвиг для пользовательского индикатора №1.
IndName2 Имя индикатора 2 — Имя пользовательского индикатора №2 для iCustom.
otkr_Custom_2 Открытие по индикатору 2 — Переключатель использования пользовательского индикатора №2 для открытия позиции.
zakr_Custom_2 Закрытие по индикатору 2 — Переключатель использования пользовательского индикатора №2 для закрытия позиции.
Shift2 Сдвиг индикатора 2 — Сдвиг для пользовательского индикатора №2.
??????? ???? :) (IndName3) Имя индикатора 3 — Имя пользовательского индикатора №3 для iCustom.
otkr_Custom_3 Открытие по индикатору 3 — Переключатель использования пользовательского индикатора №3 для открытия позиции.
zakr_Custom_3 Закрытие по индикатору 3 — Переключатель использования пользовательского индикатора №3 для закрытия позиции.
Shift3 Сдвиг индикатора 3 — Сдвиг для пользовательского индикатора №3.
IndName4 Имя индикатора 4 — Имя пользовательского индикатора №4 для iCustom.
otkr_Custom_4 Открытие по индикатору 4 — Переключатель использования пользовательского индикатора №4 для открытия позиции.
Получить полный код

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

extern   string   Instructsia                =  "...????? ? ??????";
extern   string   ShiftTunes           =  "???? (???). ?? ??? ??????????, ????? 2?? ? ????????????????";
extern double GeneralShift = 0; // 0 - ?????????? ???, 1 - ????????.
extern string Implemented_Indicators         = "????????? ??????????. 12 ????. ?????????????";
extern string WARNING1                       = "???????? ?????????? ????????????? ? ???????";
extern string WARNING2                       = "?????????, ??? ?????????? ?????????? ?????????,";
extern string WARNING3                       = "????? ????????? ????? ?????????";
extern string Note_????                      = " ??????? ??????? ?????????? ?????????? ????? ??? ????-?? ??????";
extern string The_List_Of                    = " ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----";
extern string Indicators1                    = " ????????? ?????????? ????????? ????! ????? ?????? ? ?????????! ";
extern string Indicators2                    = " ??????????? - ???????? ????? ???????? ??? ????????! ";
extern string Indicators3                    = " ????????? ????? ???? - ??????????? ???????? ????. ";

extern string Indicators4                    = " ";

extern   string  Indicator_1     = "2MA (MACD 0-line-mode ??)";
extern  bool  otkr_MA      =false;
extern  bool  zakr_MA      =false;  // ??????????? _????_ ??????????. ????? ??? MACD-"??????? ?????".
extern double MA1          =4;
extern double MA2          =67;
extern double Shift_1      =1;  // ???? - ??? ???, ?? ??????? ????????? ????????. 1 - ????????????????, 0 - ???????, 3 - ??? ????? ?????... 
extern double Shift_2      =1; 
extern double MA_type      =1; //0 - Simple, 1 - Expotential, 2 - Smoothed, 3 - Linear Weighed. Most people are using EMA.
extern   string   Indicator_2       =  "???????? - ?????????????? ??????????.";
extern  bool   otkr_Stoh   =false;// 
extern  bool   zakr_Stoh   =false;
extern double per_K=5;
extern double per_D=3;
extern double slow=3;
extern double zoneBUY=20;
extern double zoneSELL=80; //?????? ???? - ????? ?? ????? ??????????? ?????? ?? ???????????.

extern   string   Indicator_3          =  "---- Awesome (std) ----"; // ???????? std, ??????????, standard. ??? ????????, ??? ?????????... ?? ???????????? ????. ???????. ???? ? ????? ???????????? ?????? ???? ?????? ?? ?????.
extern  bool   otkr_AO    =false;
extern  bool   zakr_AO    =false;
extern   string     StdDev         =  "--- StdDev (std) ----"; //?? ?? ?????, ??? ? ?????? ??????????? - ?????? ? ???. ????.
extern  bool   otkr_StdDev=false; 
extern  bool   zakr_StdDev=false; 
extern double StdDevMAPeriod =14;
extern double StdDevMAShift =0; 
extern double StdDevLimitToOpen   =0.0025;
extern double StdDevLimitToClose  =0.0025;// ????????? ???? - ?? ?????? ????????? ToClose ????, ??? ToOpen.
extern   string   Indicator_4         =  "---- Demarker (std) ---- ";
extern  bool   otkr_Dema   =false;
extern  bool   zakr_Dema   =false;
extern double DeMa_period=14;
extern double niz_ur=0.3;
extern double verx_ur=0.7;
extern   string   Indicator_5              =  "---- CCI (std) ---- ";
extern  bool   otkr_CCI    =false;
extern  bool   zakr_CCI    =false;
extern double CCI_period=14;
extern double CCI_Level=100;    // What, if we want 95?
extern   string   Indicator_6              =  "---- RSI (std) ----";
extern  bool   otkr_RSI   =false;
extern  bool   zakr_RSI   =false;
extern double RSI_Period =14;
extern double RSI_High=70;
extern double RSI_Low=30;
extern   string   Indicator_7             =  "---- MACD (std) ---- ";
extern  bool   otkr_MACD   =false;
extern  bool   zakr_MACD   =false;
extern double MACD_Fast=9;
extern double MACD_Slow=26;   // MACD uses SIGNAL line
extern double MACD_Signal=14; // because you have 2 MA Cross system
extern string     Indicator_8             =  "---- OsMA (std) ---- ";
extern  bool   otkr_OsMA   =false;
extern  bool   zakr_OsMA   =false;
extern double OsMA_Fast=9;
extern double OsMA_Slow=26;   // SIGNAL line (Well, you can also try Zignal.com as a platform - expenseful lux look is a sort of guaranty. Yes, I've made an ad here - Anon MMMMMMMMMI)
extern double OsMA_Signal=14; // because you have 2 MA Cross system
extern   string   Indicator_9             =  "---- WPR aka %R (std) ---- ";//Williams Percent Range
extern  bool   otkr_WPR   = false;
extern  bool   zakr_WPR   = false;
extern double WPR_Period = 14;
extern   string   Indicator_10            =  "---- MFI (std) ---- ";
extern  bool   otkr_MFI   = false;
extern  bool   zakr_MFI   = false;
extern double MFI_Period=14;
extern double MFI_High  =70;
extern double MFI_Low   =30;
extern   string   Indicator_11            =  "---- ADX (std) ----"; //Main Line 30/70
extern  bool   otkr_ADX   = false;
extern  bool   zakr_ADX   = false;
extern double ADX_Period=14;
extern string Indicator_12                =  "---- SAR (std) ---- ";
extern  bool otkr_SAR     = false;
extern  bool zakr_SAR     = false;
extern double SAR_Step =0.02;
extern double SAR_MaxStep =0.2;
extern string Custom_Indicator_?_0              =  " __________________ ";  
extern string Custom_Indicator_?_1              =  "???????????????? ??????????";  
extern string Custom_Indicator_?_2              =  "??????????????, ??? ??? ????????? ????? ?????????????? ????.";
extern string Custom_Indicator_?_3              =  "??? ?????? - ??????? Name_X ?? ???????? ?????? ??????????";  
extern string Custom_Indicator_?_4              =  "  ";
extern string IndName1                    = "Name1";
extern  bool  otkr_Custom_1 = false;
extern  bool  zakr_Custom_1 = false;
extern double Shift1    =0;
extern string IndName2                    = "Name2";
extern  bool  otkr_Custom_2 = false;
extern  bool  zakr_Custom_2 = false;
extern double Shift2    =0;
extern string IndName3                    = "ZigZag - ?????? ???????, ????"; // ??????? ???? :)
extern  bool  otkr_Custom_3 = false;
extern  bool  zakr_Custom_3 = false;
extern double Shift3    =0;
extern string IndName4                    = "Name4";
extern  bool  otkr_Custom_4 = false;
extern  bool  zakr_Custom_4 = false;
extern double Shift4    =0;
extern string IndName5                    = "Name5";
extern  bool  otkr_Custom_5 = false;
extern  bool  zakr_Custom_5 = false;
extern double Shift5    =0;
extern string IndName6                    = "Name6";
extern  bool  otkr_Custom_6 = false;
extern  bool  zakr_Custom_6 = false;
extern double Shift6    =0;
extern string IndName7                    = "Name7";
extern  bool  otkr_Custom_7 = false;
extern  bool  zakr_Custom_7 = false;
extern double Shift7    =0;
extern string IndName8                    = "Name8";
extern  bool  otkr_Custom_8 = false;
extern  bool  zakr_Custom_8 = false;
extern double Shift8    =0;
extern   string Void1                     = "  ";
extern   string Void2                     = "  ";

extern   string   __Non_Indicator__AKA__                =  "...????? ? ??????";
extern   string   __?????_?????????__          =  "----  __?????_?????????__ ---- ";  
extern double StopLoss    =100;    
extern double TakeProfit  =994;      // ?ake?rofit ?? ????? ???? ?? ??????????? :)
extern double Slippage = 2; // Slippage. ???????????????.
extern   string ID_of_EA              =  "??? ?? MagicNumber, ??? ?? ???????? ????";
extern double __ID_of_EA = 219249; // ZIGZAG ??. "????????? ?????????????"
extern   string    Block_of_Stakes           =  "----  Stake tuning ----"; 
extern   string    Bl_1                      =  "1 - FixLot, 2 - Martigail, 3 - Percental";
extern   string    Bl_2                      =  "??????-? ???? ????? ??????, ? ?? ?????????? ??????";
extern   string    Bl_3                      =  "IK is a miltiplies for Martingail-taktic. Normally=2";
extern double StakeMode   =1;      //   
extern double Lts1        =0.1;    // Fixlot
extern double IK          =2;      // Multiplying Lts1 * IK (if the previous deal was fail). Normally, Martingail is ThisDealLots = PrevDealLots * 2,  so...
extern double Percents    =5;      
extern double RiskPipsForPercents=100; // ?????????? ????-?????. ????? ? ?????? ????????????? ??????.
extern  bool  Pause1800 =true; // ?????, ????? ?? ?????? ???????? ????-????. ???-???? (???? ??? ?? ?30, ???-???? ?? ?1)
extern   string   ATR                      =  "---- ---- ---- ----"; 
extern   string   ??????????????_ATR       =  "ATR ????? ???????????? ??? ????????? TP ? SL."; // Actually, never tuned by me properly.
extern   string   ________________         =  "ATR_Multiply ??????????? ????????? ????????????????";
extern   string   __By_26_994_____         =  "????????, ???? Multiply=0.9, ?? ??????? - 0.9 ?????? ?? 0.0001 ATR";
extern double ATR_Period =14;
extern double ATR_Multiply = 0.9;         
extern double ATR_Reach  =0.0014;
extern  bool ATR_SL = false;
extern  bool ATR_TP = false; 

bool Work=true;                    
bool OrderSal;
string Symb;                       // ??? ???? (???????? -  EURUSD ??? GBPJPY) 

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

   int

   Total,                           // ?????????? ??????? ? ???? 
   Tip=-1,                          // ??? ??????. ?????? (B=0,S=1)
   Ticket;                          // ????? ??????

   double
   Lot,                             // ?????. ????? ? ??????.??????
   Lts,                             // ?????. ????? ? ??????.??????
   lot,
   Min_Lot,                         // ??????????? ?????????? ?????
   Step,                            // ??? ????????? ??????? ????
   Free,                            // ??????? ????????? ????????
   One_Lot,                         // ????????? ?????? ????
   Price,                           // ???? ?????????? ??????
   SL,                              // SL ?????????? ?????? 
   TP,                              // TP ?????????? ??????

   MA_By,MA_Sell,Stoh_By,Stoh_Sell,AO_By,AO_Sell,StdDev_By,StdDev_Sell,AC_By,AC_Sell,Cls_MA_Sell,Cls_MA_By,Cls_Stoh_Sell,Cls_Stoh_By,
   Cls_AO_Sell,Cls_AO_By,Cls_StdDev_By,Cls_StdDev_Sell,Cls_AC_Sell,Cls_AC_By,Dema_By,Cls_Dema_Sell,Dema_Sell,Cls_Dema_By,CCI_By,CCI_Sell,Cls_WPR_Sell,Cls_CCI_By,Cls_CCI_Sell,
   RSI_By,RSI_Sell,Cls_RSI_Sell,Cls_RSI_By,MFI_By,MFI_Sell,Cls_MFI_Sell,Cls_MFI_By,WPR_By,WPR_Sell,Cls_WRP_Sell,Cls_WPR_By,  //???????????.
   MACD_By,MACD_Sell,Cls_MACD_Sell,Cls_MACD_By,OsMA_By,OsMA_Sell,Cls_OsMA_Sell,Cls_OsMA_By,ADX_By,ADX_Sell,Cls_ADX_Sell,Cls_ADX_By,SAR_By,SAR_Sell,Cls_SAR_Sell,Cls_SAR_By,
   Custom_1__By, Custom_1__Sell, Cls_Custom_1__By, Cls_Custom_1__Sell,Custom_2__By, Custom_2__Sell, Cls_Custom_2__By, Cls_Custom_2__Sell,
   Custom_3__By, Custom_3__Sell, Cls_Custom_3__By, Cls_Custom_3__Sell,Custom_4__By, Custom_4__Sell, Cls_Custom_4__By, Cls_Custom_4__Sell,
   Custom_5__By, Custom_5__Sell, Cls_Custom_5__By, Cls_Custom_5__Sell,Custom_6__By, Custom_6__Sell, Cls_Custom_6__By, Cls_Custom_6__Sell,
   Custom_7__By, Custom_7__Sell, Cls_Custom_7__By, Cls_Custom_7__Sell,Custom_8__By, Custom_8__Sell, Cls_Custom_8__By, Cls_Custom_8__Sell;

  bool
   Modific=true,
   Ans  =false,                     // ????? ??????? ????? ????????
   Cls_B=false,                     // ???????? ??? ????????  Buy
   Cls_S=false,                     // ???????? ??? ????????  Sell
   Opn_B=false,                     // ???????? ??? ????????  Buy
   Opn_S=false,                     // ???????? ??? ????????  Sell
   S_Bar=false;                     // ???????? ??? Sleep Bar (??????????? ?????, ????? ?? ???????? ??????? ????????)

int time0 = 0;                                                  // ????????? ??????????? ??????????
for(int t0 = OrdersHistoryTotal();t0>=0;t0--)                   // ?????????? ??? ???????? ??????
if(OrderSelect(t0, SELECT_BY_POS,MODE_HISTORY )==true)          // ???? ????? ? ????? ??????? (i) ? ?????? ???????? ??????? ???? ( ?? ?????? ? ???????)
    {
      if( iTime(NULL,0,0)-OrderOpenTime() <1800 && Pause1800==true) //??????? ????? 
                 {                                         
                    S_Bar=true;                                // ????????   iTime(NULL,0,1)
                    Alert("???????. 994 ???????.");                                           
                 }

           }

   if(Work==false)                              // Critical error
     {
      Alert("?????????, ?????? ??? ??????????? ??????.");
      return;                                   // Exit from start()
     }

Symb=Symbol();                               // ???????? ???.?????.
   Total=0;                                     // ?????????? ???????
   for(int i=1; i<=OrdersTotal(); i++)          // ???? ???????? ?????
     {
      if (OrderSelect(i-1,SELECT_BY_POS)==true) // ???? ???? ?????????
        {                                       // ?????? ???????:
         if (OrderSymbol()!=Symb)continue;      // ?? ??? ???. ???????
         Total++;                               // ??????? ??????. ???
         if (Total>1)                           // ?? ????? ?????? ??? --          ????????? ??????????!
           {
            Alert("????????? ???????? ???????. ??????? ?? ????????.");
            return;                             // ????? ?? start()
           }
         Ticket=OrderTicket();                  // ????? ???????. ???.
         Tip   =OrderType();                    // ??? ?????????? ???.
         Price =OrderOpenPrice();               // ???? ???????. ???.
         SL    =OrderStopLoss();                // SL ?????????? ???.
         TP    =OrderTakeProfit();              // TP ?????????? ???.
         Lot   =OrderLots();                    // ?????????? ?????
        }
     }  

if(ATR_SL==true && iATR(NULL,0,ATR_Period,1)>=ATR_Reach)
StopLoss=iATR(NULL,0,ATR_Period,0)*ATR_Multiply/0.0001;    //????? ?? ????? ??????????? ????? ? ?????.      

if(ATR_TP==true && iATR(NULL,0,ATR_Period,1)>=ATR_Reach)
TakeProfit=iATR(NULL,0,ATR_Period,0)*ATR_Multiply/0.0001;

 if(otkr_MA==true)
              {
               if(iMA(NULL,0,MA1,Shift_1,MA_type,PRICE_CLOSE,GeneralShift)>iMA(NULL,0,MA2,Shift_2,MODE_SMA,PRICE_CLOSE,GeneralShift+1))
                 {
                  MA_By =true;// Normally SMA, but here is my edit.
                 } 
               if(iMA(NULL,0,MA1,Shift_1,MA_type,PRICE_CLOSE,GeneralShift)<iMA(NULL,0,MA2,Shift_2,MODE_SMA,PRICE_CLOSE,GeneralShift+1))               
                 {
                  MA_Sell =true;
                 } 
               }

 if(zakr_MA==true)
              {
               if(iMA(NULL,0,MA1,Shift_1,MA_type,PRICE_CLOSE,GeneralShift)>iMA(NULL,0,MA2,Shift_2,MODE_SMA,PRICE_CLOSE,GeneralShift+1))
                 {
                  Cls_MA_Sell=true;
                 }
               if(iMA(NULL,0,MA1,Shift_1,MA_type,PRICE_CLOSE,GeneralShift)<iMA(NULL,0,MA2,Shift_2,MODE_SMA,PRICE_CLOSE,GeneralShift+1))
                 {
                  Cls_MA_By=true;
                 } 
               }

 if(otkr_Stoh==true)
          {
               if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,GeneralShift)>iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,2,GeneralShift)
                  && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,GeneralShift)<zoneBUY)
                   {
                   Stoh_By =true;
                   }
              if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,GeneralShift)<iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,2,GeneralShift)
                 && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,GeneralShift)>zoneSELL)
                  {
                  Stoh_Sell =true;
                  } 
               }      

 if(zakr_Stoh==true)
          {
              if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,GeneralShift)>iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,2,GeneralShift)
                 && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,GeneralShift)<zoneBUY)
                   {
                   Cls_Stoh_Sell=true;
                   }
             if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,GeneralShift)<iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,2,GeneralShift)
                 && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,GeneralShift)>zoneSELL)
                  {
                  Cls_Stoh_By=true;
                  } 
               }                

  if(otkr_AO==true)
        {
              if(iAO(NULL,0,GeneralShift)<iAO(NULL,0,GeneralShift+1)&&iAO(NULL,0,GeneralShift)<0) 
                  {
                   AO_By =true;
                  }    
              if(iAO(NULL,0,GeneralShift)>iAO(NULL,0,GeneralShift+1)&&iAO(NULL,0,GeneralShift)>0)
                  {
                   AO_Sell =true;
                  } 
               } 

if(zakr_AO==true)
        {
           if(iAO(NULL,0,GeneralShift)>iAO(NULL,0,GeneralShift+1)&&iAO(NULL,0,GeneralShift)<0)     
                  {                          
                   Cls_AO_Sell=true;         
                  }                          
           if(iAO(NULL,0,GeneralShift)<iAO(NULL,0,GeneralShift+1)&&iAO(NULL,0,GeneralShift)>0)     
                  {
                   Cls_AO_By=true;
                  } 
               }

if(otkr_StdDev==true)
        {
              if(iStdDev(NULL,0,StdDevMAPeriod,StdDevMAShift,1,0,GeneralShift)>StdDevLimitToOpen)
                  {
                   StdDev_By=true;
                  }    
              if(iStdDev(NULL,0,StdDevMAPeriod,StdDevMAShift,1,0,GeneralShift)>StdDevLimitToOpen)
                  {
                   StdDev_Sell=true; // What? This "wait or not".
                  } 
               } 

if(zakr_StdDev==true)
        {
           if(iStdDev(NULL,0,StdDevMAPeriod,StdDevMAShift,1,0,GeneralShift)<StdDevLimitToClose) 
                  {                          
                   Cls_AO_Sell=true;         
                  }                          
            if(iStdDev(NULL,0,StdDevMAPeriod,StdDevMAShift,1,0,GeneralShift)<StdDevLimitToClose)  
                  {
                   Cls_AO_By=true;
                  } 
               }

 if(otkr_Dema==true) 
             {      
              if (iDeMarker(NULL, 0, DeMa_period, GeneralShift)<niz_ur) 
                  {
                   Dema_By =true;
                  }    
             if (iDeMarker(NULL, 0, DeMa_period, GeneralShift)>verx_ur) 
                  {
                   Dema_Sell =true;
                  }  
               }

 if(zakr_Dema==true) 
              {      
            if (iDeMarker(NULL, 0, DeMa_period, GeneralShift)<niz_ur) 
                  {
                   Cls_Dema_Sell=true;
                  }    
            if (iDeMarker(NULL, 0, DeMa_period, GeneralShift)>verx_ur) 
                  {
                   Cls_Dema_By=true;
                  }  
               }     

 if(otkr_CCI==true)
             {      
            if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,GeneralShift)>CCI_Level)
                  {
                   CCI_By =true;
                  }    
            if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,GeneralShift)<-CCI_Level)
                  {
                   CCI_Sell =true; 
                  } 
               }                   

   if(zakr_CCI==true)
               {      
           if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,GeneralShift)<-CCI_Level) // Not hook.
                  {
                   Cls_CCI_Sell=true;
                  }    
           if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,GeneralShift)>CCI_Level) 
                  {
                   Cls_CCI_By=true;
                  } 
               } 

    if(otkr_RSI==true)
              {
            if (iRSI(NULL,0,RSI_Period,0,GeneralShift)>RSI_High)
                  {
                   RSI_By=true;
                  }    
            if (iRSI(NULL,0,RSI_Period,0,GeneralShift)<RSI_Low)
                  {
                   RSI_Sell=true;
                  } 
               }                   

   if(zakr_RSI==true)
              {
           if (iRSI(NULL,0,RSI_Period,0,GeneralShift)>RSI_High)
                  {
                   Cls_RSI_Sell=true;
                  }    
           if (iRSI(NULL,0,RSI_Period,0,GeneralShift)<RSI_Low)
                  {
                   Cls_RSI_By=true;
                  } 
               }            

    if(otkr_MFI==true)
              {
            if (iMFI(NULL,0,MFI_Period,GeneralShift)>MFI_High)
                  {
                   MFI_By=true;
                  }    
            if (iMFI(NULL,0,MFI_Period,GeneralShift)<MFI_Low)
                  {
                   MFI_Sell=true;
                  } 
               }                   

   if(zakr_MFI==true)
                 {      
           if (iMFI(NULL,0,MFI_Period,GeneralShift)>MFI_High/2+MFI_Low/2) // ??? ???????? ?? ????????
                  {
                   Cls_MFI_Sell=true;
                  }    
           if (iMFI(NULL,0,MFI_Period,GeneralShift)<MFI_High/2+MFI_Low/2)
                  {
                   Cls_MFI_By=true;
                  } 
               }   

   if(otkr_WPR==true)
              {
            if (iWPR(NULL,0,WPR_Period,GeneralShift)>-20)
                  {
                   WPR_By=true;
                  }    
            if (iWPR(NULL,0,WPR_Period,GeneralShift)<-80)
                  {
            

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

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

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

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

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

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

Стоимость полного кода
2 629,30₽ ≈ $32.14