exp_Lego_2_Your_Strategy

Author: Seletsky R.V., but not Anon Y. Us MMMMMMMMMI. �����, ������ ������!
Orders Execution
Checks for the total of closed ordersChecks for the total of open ordersIt Closes Orders by itself It automatically opens orders when conditions are reached
Indicators Used
Moving average indicatorStochastic oscillatorBill Williams Awesome oscillatorFractalsBill Williams Accelerator/Decelerator oscillatorDeMarker indicatorCommodity channel indexRelative strength indexMoney flow indexLarry William percent range indicatorMACD HistogramMoving Average of OscillatorMovement directional indexParabolic Stop and Reverse systemIndicator of the average true range
Miscellaneous
It issuies visual alerts to the screen
2 Views
0 Downloads
0 Favorites
exp_Lego_2_Your_Strategy
//+------------------------------------------------------------------+
//|                                      experimental_Lego_2_5_6.mq4 |
//|                              Copyright © 2010-2011, Seletsky R.V.|
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Seletsky R.V., but not Anon Y. Us MMMMMMMMMI. Òàêæå, ìàíóàë ïðî÷òè!"
#property link      "Strategy4you.ru - ñòðàòåãèè òîðãîâëè íà ïðî÷òåíèå. Äîïèñûâàòü, ïðàâäà, ñàìèì."

// Ñåëåöêèé ïðîñòî íå íàïèñàë "ñâîé" ñàéò, âîò ÿ è...
// Æåëàòåëüíî èñïîëüçîâàíèå ñîâåòíèêà Swiss Army äëÿ ðàáîòû ñ óæå óñòàíîâëåííûìè îðäåðàìè...




//
//-----------------------------------------------------------------------------------------------------------+
//                                       Instructions                                                        |
//------------------------------------------------------------------------------------------------------ 1 --+


// Ýòè ñòðîêè - ìàíóàë (ò.å. "èíñòðóêöèÿ") ê àâòîìàòè÷åñêîìó òîðãîâîìó ñîâåòíèêó "exp_Lego_2.5.6",
// èçíà÷àëüíî íàïèñàííîìó Ð. Ñåëåöêèì (êàê exp_Lego_1), íî ïîçäíåå äîïîëíåííîìó Àíîíèìîì Óñîì MMMMMMMMMI (ò.å. Àíîíèìóñîì) äî âåðñèè 2.5.6
// Âñå ïðàâà íà ïðîäóêò ïðèíàäëåæàò Ñåëåöêîìó, êîòîðûé âûëîæèë âåðñèþ 1.0 íà îáîçðåíèå â MQL4 Codebase.
//
//         ÏÐÅÄÓÏÐÅÆÄÅÍÈÅ: îò ïîëüçîâàòåëÿ òðåáóåòñÿ íàëè÷èå óæå ãîòîâîé ñòðàòåãèè ñ óæå ãîòîâûìè ïàðàìåòðàìè. Íåâàæíî, ÷üåé.
// Òàêæå, íå èñïîëüçóéòå ëèøü îäèí äëÿ îòêðûòèÿ è çàêðûòèÿ. Èíà÷å áóäåò "òóäà-ñþäà" â áîëüøèõ êîëè÷åñòâàõ.
// Äàííûé ñîâåòíèê (ÿâëÿÿñü íå íàñòðîåííîé àâòîìàòè÷åñêîé òîðãîâîé ñèñòåìîé, íî íàáîðîì äëÿ
// óñòàíîâêè ðàçëè÷íûõ èçâåñòíûõ Âàì ñèñòåì) ìîæåò èñïîëüçîâàòü ëþáûå èç ïåðå÷èñëåííûõ èíäèêàòîðîâ:
// 
//
//
// ÑÓÒÜ äàííîãî áîòà - "ïîäãîíèòå åãî ïîä ëþáóþ ñòðàòåãèþ"!*
//
//*çíàíèÿ ìàòåìàòèêè è øêîëüíîãî óðîâíÿ ïðîãðàììèðîâàíèÿ îáÿçàòåëüíû äëÿ ïåðåäåëêè "ïîä ñåáÿ" óðàâíåíèé â êîäå.
//
//
//
//
//
//  Ïðåäóïðåæäàþ ñðàçó - íå ïûòàéòåñü äåëàòü îäèí "áûñòðûé", îäèí "ñðåäíèé" è îäèí "ìåäëåííûé" èíäèêàòîð.
// Òàêæå, íåîáõîäèìû ÂÑÅ ñèãíàëû íà ïîêóïêó èëè íà ïðîäàæó äëÿ ïîëó÷åíèÿ ñîîòâ. îðäåðà íà ñäåëêó.
//
//  Íàëè÷åñòâóåò ATR äëÿ âîçìîæíîñòè òåõíè÷åñêîãî îïðåäåëåíèÿ ðàçìåðîâ ñòîï-ëîññà è òåéê-ïðîôèòà. 
// ATR âêëþ÷àåòñÿ ïðè âàøåé íåîáõîäèìîñòè. Ê ñîæàëåíèþ, òàêèå âêóñíîñòè óïðàâëåíèÿ ñäåëêàìè, êàê îòëîæåííûå îðäåðà è ïðî÷èå âêóñíîñòè íå ðåàëèçîâàíû - ïîêà ÷òî.  ïðèíöèïå, â òî æå âðåìÿ,
// íè÷òî íå ìåøàåò âàì äåëàòü ýòî ñàìèì ñ ïîìîùüþ "EA Swiss Army" (â êîìïëåêòå). Åù¸ îäíà "ôèøêà"
// - èñïîëüçîâàíèå "çðÿ÷åãî" ìàðòèíãåéë-ïðèíöèïà, êîòîðûé íå áðîñàåòñÿ "âäîãîíêó" òóøèòü óáûòî÷íóþ ñäåëêó
// äâîéíûì ëîòîì, à àäåêâàòíî æä¸ò íîâîãî ñèãíàëà.
//
// Âïðî÷åì, íåñêîëüêî ýòèõ ñîâåòíèêîâ íà ðàçíûõ ïàðàõ ìåæäó ñîáîé íå ñîîáùàþòñÿ.
// Ýòî îçíà÷àåò, ÷òî îäèí íà-ìàðòèíãåéë-íàñòðîåííûé ñîâåòíèê íå ñìîæåò ïðèêàçàòü "ñîñåäÿì" ïîäíÿòü ëîò.
//
//
//



// 
//      ----------------------
//    Ñóòü äàííîãî ñîâåòíèêà â òîì, ÷òî åãî ìîæíî ïîäñòðàèâàòü ñ áîëüøîé ë¸ãêîñòüþ.
//  Äîñòàòî÷íî íàæàòü Ctrl+F(ýòî ðàáîòàåò äàæå â Word-e), ââåñòè ôðàçó ' Òîðãîâûå êðèòåðèè ' è íàæàòü êíîïêó.
//  Ïåðåä âàìè áóäåò âåñü áëîê. Åñëè âû íå ïîíÿëè, çà÷åì 










// Êóñîê êîäà èç ìîäóëÿ "Òîðãîâûå êðèòåðèè" (äëÿ äîïèñûâàíèå êðèòåðèåâ - âàì ñþäà!):

//  //CCI:-------------------------------
// if(otkr_CCI==true)
//             {      
//            if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN, 1)<-100) 
//                  {
//                   CCI_By =true;
//                  }    
//            if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,1)>100) 
//                  {
//                   CCI_Sell =true;
//                  } 
//               }                   
//      
//   if(zakr_CCI==true)
//               {      
//           if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN, 1)<-100) 
//                  {
//                   Cls_CCI_Sell=true;
//                  }    
//           if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,1)>100) 
//                  {
//                   Cls_CCI_By=true;
//                  } 
//               }                   
//                               
//                        















//-----------------Ïàðàìåòðû---------------------------------------------------------- 1 --------

extern   string   Èíñòðóêöèÿ...              =  "...ðàçìàçàíà â âèäå ïîÿñíåíèé ê true/false ïåðåêëþ÷àòåëÿì";
extern   string   Ïàðàìåòðû_òîðãîâëè         =  "----  Ïàðàìåòðû òîðãîâëè ---- ";            
extern double StopLoss    =0;      // StopLoss äëÿ îòêðûâàåìîãî îðäåðà. Ïî-õîðîøåìó, ðàâåí íóëþ. 
extern double TakeProfit  =0;      // ÒakeÐrofit äëÿ îòêðûâàåìîãî îðäåðà
extern   string   SleepBars_about            =  "Ïåðåðûâ, â ñåêóíäàõ, äëÿ çàùèòû îò ñëó÷àéíûõ ñäåëîê òóäà-ñþäà";
extern bool   SleepBars  =false;   // Ïàóçà ïîñëå çàêðûòèÿ îðäåðà, ëó÷øå íå èñïîëüçîâàòü.
extern double SleepSeconds = 600;  // âðåìÿ - N ñåêóíä
extern double Slippage = 2; // Ïðîñêàëüçûâàíèå æå!
extern   string ID_of_EA__About              =  "aka MaigcNumber. Íóæåí äëÿ êîìôîðòà èñïîëüçîâàíèÿ ñðàçó íåñêîëüêèõ ñîâåòíèêîâ";
extern double ID_of_EA = 219249; // Èäåíòèôèêàòîð, íà ñëó÷àé çàïóñêà 10 ãðàôèêîâ ñðàçó.
                                   // Íàçâàíèå ôèíàíñ. èíñòðóìåíòà
extern   string    Áëîê_óïðàâëåíèÿ_ñòàâêîé   =  "----  Óïðàâëåíèå ñòàâêàìè (èëè <<êàïèòàëîì>>) ----"; 
extern   string    Bl_1                      =  "MoneyMode - âûáîð ìåòîäà âêëàäîâ ";
extern   string    Bl_2                      =  "1 - ôèêñ. ëîò, 2 - Ìàðòèí, 3 - ïðîöåíò äåïîçèòà";
extern   string    Bl_3                      =  "IK - ýòî ìíîæèòåëü (äëÿ Ìàðòèíãåéë-òàêòèêè)";
extern double StakeMode   =1;      // 1 - ôèêñ. ëîò, 2 - Ìàðòèí-ëîò, 3 - ïðîöåíò âñåãî äåïîçèòà  
extern double Lts1        =0.1;    // Æåñòêî çàäàííîå êîëè÷. ëîòîâ
extern double IK          =2;      // Óìíîæåíèå Lts1 * IK åñëè ïîñëåäíèé îðäåð áûë çàêðûò â ìèíóñ . Åñëè "2" - ïðîñòî ïîïûòêà ñëåäóþùåé ïîçèöèåé ïåðåêðûòü âñå ïðîøëûå.
extern double Percents    =5;      // "Ïðîöåíò" íå ïîääåðæèâàåò ëîò áîëüøå 10. "×èíèòñÿ" èñïîëüçîâàíèåì íåñêîëüêèõ ïàð îäíîâðåìåííî.
  

extern   string   ATR                        =  "---- ---- ---- ----"; 
extern   string   ATR_s_                     =  "ATR èñïîëüçóåòñÿ äëÿ àâòîìàòèçàöèè TP è SL, à íå ñäåëîê";
extern   string   _purpose_is_               =  "È - Multiply íàñòðàèâàåò ÷óâñòâèòåëüíîñòü, íàïðèìåð:";
extern   string   _stop_management           =  "åñëè 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;        //  "Ïîðîã" ñðàáàòûâàíèÿ ATR.
extern  bool ATR_SL = false;
extern  bool ATR_TP = false;   


  
  
extern   string   Èíäèêàòîðíûå_íàñòðîéêè            =  "Ñâîéñòâà èíäèêàòîðîâ ìîæíî ïîìåíÿòü. <<Èçìåíèòü ýêñ..>> ->";
extern   string   Èíäèêàòîðíûå_íàñòðîéêè_2          =  "-> Ctrl+F -> <<Òîðãîâûå êðèòåðèè>> - è èùèòå óðàâíåíèå íóæíîãî èíäèêàòîðà";
extern   string   Èíäèêàòîðíûå_íàñòðîéêè_3          =  "Ïîìîùü íà àíãëèéñêîì, îòêðûâàåòñÿ, åñëè çàíîâî íàïèñàòü îòêðûâàþùóþ ñêîáêó";

extern string Custom_Indicators              =  "Custom Indicators. Ïðåäïîëàãàåòñÿ, ÷òî âû èñïîëüçóåòå èõ ñòàíäàðòíûå íàñòðîéêè";  
extern string Custom_Indicator1              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð! Âîîáùå, ïî óìîë÷àíèþ ñòîèò âûêëþ÷åííàÿ âåðñèþ çèãçàãà - êàê ïðèìåð";                                  
extern  bool  otkr_Custom_1 = false;
extern  bool  zakr_Custom_1 = false;
extern double Period1   =4;
extern double Shift1    =3;
extern string Custom_Indicator2              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_2 = false;
extern  bool  zakr_Custom_2 = false;
extern double Period2   =4;
extern double Shift2    =3;
extern string Custom_Indicator3              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";  
extern  bool  otkr_Custom_3 = false;
extern  bool  zakr_Custom_3 = false;
extern double Period3   =4;
extern double Shift3    =3;
extern string Custom_Indicator4              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_4 = false;
extern  bool  zakr_Custom_4 = false;
extern double Period4   =4;
extern double Shift4    =3;
extern string Custom_Indicator5              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_5 = false;
extern  bool  zakr_Custom_5 = false;
extern double Period5   =4;
extern double Shift5    =3;
extern string Custom_Indicator6              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_6 = false;
extern  bool  zakr_Custom_6 = false;
extern double Period6   =4;
extern double Shift6    =3;
extern string Custom_Indicator7              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_7 = false;
extern  bool  zakr_Custom_7 = false;
extern double Period7   =4;
extern double Shift7    =3;
extern string Custom_Indicator8              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_8 = false;
extern  bool  zakr_Custom_8 = false;
extern double Period8   =4;
extern double Shift8    =3;
extern string Custom_Indicator9              =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_9 = false;
extern  bool  zakr_Custom_9 = false;
extern double Period9   =4;
extern double Shift9    =3;
extern string Custom_Indicator10             =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_10= false;
extern  bool  zakr_Custom_10= false;
extern double Period10  =4;
extern double Shift10   =3;
extern string Custom_Indicator11             =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_11= false;
extern  bool  zakr_Custom_11= false;
extern double Period11  =4;
extern double Shift11   =3;
extern string Custom_Indicator12             =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_12= false;
extern  bool  zakr_Custom_12= false;
extern double Period12  =4;
extern double Shift12   =3;
extern string Custom_Indicator13             =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_13= false;
extern  bool  zakr_Custom_13= false;
extern double Period13  =4;
extern double Shift13   =3;
extern string Custom_Indicator14             =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_14= false;
extern  bool  zakr_Custom_14= false;
extern double Period14  =4;
extern double Shift14   =3;
extern string Custom_Indicator15             =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_15= false;
extern  bool  zakr_Custom_15= false;
extern double Period15  =4;
extern double Shift15   =3;
extern string Custom_Indicator16             =  "Ñëîò ïóñò, âñòàâüòå èíäèêàòîð!";
extern  bool  otkr_Custom_16= false;
extern  bool  zakr_Custom_16= false;
extern double Period16  =4;
extern double Shift16   =3; 



 // Do not want more...
extern string Íàñòðîåííûå_èíäèêàòîðû         =  "Óæå ïîñòàâëåííûå èíäèêàòîðû. Ïîìåíÿòü óðàâíåíèå âïîëíå ëåãêî!";
extern string Ñòèðàòü_íå_ðåêîìåíäóåòñÿ                 =  "Òîæå ÷åðåç êîìàíäó Ctrl+F è <<Òîðãîâûå êðèòåðèè>>";
extern   string  ÌÀs              =  "2 SimpleMA,---- ---- ";
extern  bool  otkr_MA    =false;
extern  bool  zakr_MA    =false;
extern double MA1           =4;
extern double MA2           =67;
extern double Shift_ma      =1;
extern   string   Ñòîõàñòèê        =  "---- ---- ";
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=30;
extern double zoneSELL=70;
extern   string   Awesome                    =  "---- ---- ";
extern  bool   otkr_AO   =false;
extern  bool   zakr_AO   =false;
extern   string   Fractals         =  "Èñïîëüçîâàëñÿ êàê èíñòðóìåíò äëÿ âûõîäà ìèñòåðîì ";
extern  bool   otkr_Fractals   =false; 
extern  bool   zakr_Fractals   =false;
extern   string   Accelerator                =  "---- ---- ";
extern  bool   otkr_AC   =false;
extern  bool   zakr_AC   =false;
extern   string   Demarker                   =  "---- ---- ";
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   CCI                        =  "---- ---- ";
extern  bool   otkr_CCI   =false;
extern  bool   zakr_CCI   =false;
extern double CCI_period=14;
extern double CCI_Level=100;    // ýòî äîáàâëåíî. ×òî, åñëè ìû õîòèì íå 100, à 50?
extern   string   RSI                        =  "---- Óðîâíè RSI óäîáíåå íàñòðàèâàòü ïî îòäåëüíîñòè.";
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   MACD                       =  "MACD Signal Line";
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     OsMA                       = "OsMA - like a second MACD S L";
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   WPR                        =  "Williams Percent Range (WPR)";
extern  bool   otkr_WPR   = false;
extern  bool   zakr_WPR   = false;
extern double WPR_Period = 14;
extern double WPR_Shift = 0; 
extern   string   MoneyFlow_aka_MFI          =  "MoneyFlow/MFI ";
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   ADX                        =  "ADX Main Line, óðîâíè - 30 è 70"; 
extern  bool   otkr_ADX   = false;
extern  bool   zakr_ADX   = false;
extern double ADX_Period=14;
extern string SAR                            =  "SAR";
extern  bool otkr_SAR = false;
extern  bool zakr_SAR = false;
extern double SAR_Step =0.02;
extern double SAR_MaxStep =0.2;

bool Work=true;                    // Ýêñïåðò áóäåò ðàáîòàòü. Åñëè îøèáêà - æì¸ì False è îñòàíàâëèâàåì.
bool OrderSal;
string Symb;                       // Íàçâàíèå ôèíàíñ. èíñòðóìåíòà



//-----------------------------------------------------------  2  -----
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,Fractals_By,Fractals_Sell,AC_By,AC_Sell,Cls_MA_Sell,Cls_MA_By,Cls_Stoh_Sell,Cls_Stoh_By,
   Cls_AO_Sell,Cls_AO_By,Cls_Fractals_By,Cls_Fractals_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,
   Custom_9__By, Custom_9__Sell, Cls_Custom_9__By, Cls_Custom_9__Sell,Custom_10_By, Custom_10_Sell, Cls_Custom_10_By, Cls_Custom_10_Sell,Custom_11_By, Custom_11_Sell, Cls_Custom_11_By, Cls_Custom_11_Sell,Custom_12_By, Custom_12_Sell, Cls_Custom_12_By, Cls_Custom_12_Sell,
   Custom_13_By, Custom_13_Sell, Cls_Custom_13_By, Cls_Custom_13_Sell,Custom_14_By, Custom_14_Sell, Cls_Custom_14_By, Cls_Custom_14_Sell,Custom_15_By, Custom_15_Sell, Cls_Custom_15_By, Cls_Custom_15_Sell,Custom_16_By, Custom_16_Sell, Cls_Custom_16_By, Cls_Custom_16_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 Bars
   
   
   

     Comment
  (
  "ÂÐÅÌß: ",TimeToStr(TimeCurrent()),
  "\n",
  "Îðäåð, ïàðàìåòðû (##,TP,SL,LOT): |",OrderTicket(),"|",OrderStopLoss(),"|",OrderTakeProfit(),"|",OrderLots(),"|",
  "\n", 
  "ID_NUMBER_OF_EA: ", ID_of_EA,
  "\n",
  "Òèï ñòàâêè, ¹:",StakeMode,
  "\n", 
  "% äëÿ ¹3: ",Percents, 
  "\n",
  "ÑòîïÀóò: ", AccountStopoutLevel(), 
  "\n",
  "Ñïðåä: ", MarketInfo(Symbol(),MODE_SPREAD),
  "\n",
  "Ïëå÷î, 1 ê: ",AccountLeverage(),
  "\n",
  "Áðîêåð", TerminalCompany( ) ,
  "\n",
  "\n",
  "\n", //  øàáëîí ïðîïóñêà ñòðîêè, êàê "enter"
  "\n"
  );
   





  
//-------------------- Ïàóçà ïîñëå çàêðûòîãî îðäåðà------------------ 3 -


  
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() <SleepSeconds*1000 && SleepBars==true ) //Óñëîâèÿ ïàóçû 
                 {                              // Çàäåðæêà-òî â ÌÈËËÈñåêóíäàõ, ïî õîäó                             
                    S_Bar=true;                                // Äåéñòâèÿ   iTime(NULL,0,1)
                    Alert("Ïåðåêóð.");                                           
                 }
          return(0); 
           }
//----------------------------------------------------------------------
  
   
//-------------------- Ïðåäâàðèò.îáðàáîòêà-------------------------- 4 -    

   if(Bars<50)                       // Íåäîñòàòî÷íî áàðîâ
     {
      Alert("Íåäîñòàòî÷íî áàðîâ â èñòîðèè. Bars<50. Ýêñïåðò íå ðàáîòàåò.");
      return;                                   // Âûõîä èç start()
     }
   if(Work==false)                              // Êðèòè÷åñêàÿ îøèáêà
     {
      Alert("Êðèòè÷åñêàÿ îøèáêà. Ýêñïåðò íå ðàáîòàåò.");
      return;                                   // Âûõîä èç start()
     }
//------------------------------------------------------------------------------    
     
     
//------------------------------Ó÷¸ò îðäåðîâ--------------------------------- 4 --
Symb=Symbol();                               // Íàçâàíèå ôèí.èíñòð.
   Total=0;                                     // Êîëè÷åñòâî îðäåðîâ
   for(int i=1; i<=OrdersTotal(); i++)          // Öèêë ïåðåáîðà îðäåð
     {
      if (OrderSelect(i-1,SELECT_BY_POS)==true) // Åñëè åñòü ñëåäóþùèé
        {                                       // Àíàëèç îðäåðîâ:
         if (OrderSymbol()!=Symb)continue;      // Íå íàø ôèí. èíñòðóì - íå òðîãàåì, âäðóã ÅÙ¨ ÎÄÈÍ ÑÎÂÅÒÍÈÊ ðàáîòàåò.
         if (OrderType()>1)                     // Ïîïàëñÿ îòëîæåííûé
           {
            Alert("Îáíàðóæåí îòëîæåííûé îðäåð. Ýêñïåðò íå ðàáîòàåò.");
            return;                             // Âûõîä èç start()
           }
         Total++;                               // Ñ÷¸ò÷èê ðûíî÷í. îðä
         if (Total>1)                           // Íå áîëåå îäíîãî îðäåðà !
           {
            Alert("Íåñêîëüêî ðûíî÷íûõ îðäåðîâ. Ýêñïåðò íå ðàáîòàåò."); // Ýòî ÷òîáû âû íå òîðãîâàëè íà íåñêîëüêèõ âàëþòíûõ ïàðàõ...     
            return;                             // Âûõîä èç start()    // Èëè íåñêîëüêî îðäåðîâ íà îäíîé âàëþòå... ß òàê è íå ïîíÿë.
           }
         Ticket=OrderTicket();                  // Íîìåð âûáðàíí. îðä.
         Tip   =OrderType();                    // Òèï âûáðàííîãî îðä.
         Price =OrderOpenPrice();               // Öåíà âûáðàíí. îðä.
         SL    =OrderStopLoss();                // SL âûáðàííîãî îðä.
         TP    =OrderTakeProfit();              // TP âûáðàííîãî îðä.
         Lot   =OrderLots();                    // Êîëè÷åñòâî ëîòîâ
        }
     }  
  
 
 
 
 
 
 
//------------Òîðãîâûå êðèòåðèè--------(ò.å. Êàê èíäèêàòîðû âêëþ÷àþòñÿ)---------------------------- 6 --

// Ïóñòàÿ  custom-îâàÿ çîíà. Çèãçàãè ñòîÿò èñêëþ÷èòåëüíî êàê çàãëóøêè-ïðèìåðû, òîðãîâàòü ïî íèì íå âûéäåò.

//--------Custom_1__------------------
if(otkr_Custom_1==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_1__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_1__Sell=true;
       }
       
     }
     
if(zakr_Custom_1==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_1__By=true;// _1__ , ïîòîìó ÷òî âñòàâëÿåìûõ èíäèêàòîðîâ - äî 16, åñòü è _10_, è _16_, è _9__...
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_1__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_2__------------------
if(otkr_Custom_2==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_2__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_2__Sell=true;
       }
       
     }
     
if(zakr_Custom_2==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_2__By=true;// _1__ , ïîòîìó ÷òî âñòàâëÿåìûõ èíäèêàòîðîâ - äî 16, åñòü è _10_, è _16_, è _9__...
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_2__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_3__------------------
if(otkr_Custom_3==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_3__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_3__Sell=true;
       }
       
     }
     
if(zakr_Custom_3==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_3__By=true;// _1__ , ïîòîìó ÷òî âñòàâëÿåìûõ èíäèêàòîðîâ - äî 16, åñòü è _10_, è _16_, è _9__...
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_3__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_4__------------------
if(otkr_Custom_4==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_4__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_4__Sell=true;
       }
       
     }
     
if(zakr_Custom_4==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_4__By=true;// _1__ , ïîòîìó ÷òî âñòàâëÿåìûõ èíäèêàòîðîâ - äî 16, åñòü è _10_, è _16_, è _9__...
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_4__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_5__------------------
if(otkr_Custom_5==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_5__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_1__Sell=true;
       }
       
     }
     
if(zakr_Custom_5==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_5__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_5__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_6__------------------
if(otkr_Custom_6==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_6__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_6__Sell=true;
       }
       
     }
     
if(zakr_Custom_6==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_6__By=true;// _1__ , ïîòîìó ÷òî âñòàâëÿåìûõ èíäèêàòîðîâ - äî 16, åñòü è _10_, è _16_, è _9__...
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_6__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_7__------------------
if(otkr_Custom_7==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_7__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)         // Íåò, ÿ íå óñòàíó ýòî íàïîìèíàòü!
       {
       Custom_7__Sell=true;
       }
       
     }
     
if(zakr_Custom_7==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_7__By=true;// _1__ , ïîòîìó ÷òî âñòàâëÿåìûõ èíäèêàòîðîâ - äî 16, åñòü è _10_, è _16_, è _9__...
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_7__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_8__------------------
if(otkr_Custom_8==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_8__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_8__Sell=true;
       }
       
     }
     
if(zakr_Custom_8==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_8__By=true;// _1__ , ïîòîìó ÷òî âñòàâëÿåìûõ èíäèêàòîðîâ - äî 16, åñòü è _10_, è _16_, è _9__...
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_8__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_9__------------------
if(otkr_Custom_9==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_9__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_9__Sell=true;
       }
       
     }
     
if(zakr_Custom_9==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_9__By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_9__Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_10_------------------
if(otkr_Custom_10==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_10_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_10_Sell=true;
       }
       
     }
     
if(zakr_Custom_10==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_10_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_10_Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_11_------------------
if(otkr_Custom_11==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_11_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_11_Sell=true;
       }
       
     }
     
if(zakr_Custom_11==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_11_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_11_Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_12_------------------
if(otkr_Custom_12==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_12_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_12_Sell=true;
       }
       
     }
     
if(zakr_Custom_12==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_12_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_12_Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_13_------------------
if(otkr_Custom_13==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_13_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)         //  Äà, íàïîìèíàòü îáÿçàòåëüíî!
       {
       Custom_13_Sell=true;
       }
       
     }
     
if(zakr_Custom_13==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_13_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_13_Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_14_------------------
if(otkr_Custom_14==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_14_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_14_Sell=true;
       }
       
     }
     
if(zakr_Custom_14==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_14_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_14_Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_15_------------------
if(otkr_Custom_15==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_15_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_15_Sell=true;
       }
       
     }
     
if(zakr_Custom_15==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_15_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_15_Sell=true;
       }
       
     }
     
//-------------   Êàê-òî òàê ...
//--------Custom_16_------------------
if(otkr_Custom_16==true)  
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)         // Âàæíîå óñëîâèå - ïàðàìåòðû èíäèêàòîðû äîëæíû áûòü íàñòðîåíû (äëÿ áàêòåñòà òî÷íî) â ñàìîì èíäèêàòîðå
       {                                                    //                                                                  - êàê ïåðåìåííàÿ double ïî óìîë÷àíèþ...
       Custom_16_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Custom_16_Sell=true;
       }
       
     }
     
if(zakr_Custom_16==true)
     {
       if(iCustom(NULL,0,"ZigZag",0,0)>PRICE_CLOSE)
       {
       Cls_Custom_16_By=true;
       }
       
       if(iCustom(NULL,0,"ZigZag",0,0)<PRICE_CLOSE)
       {
       Cls_Custom_16_Sell=true;
       }
       
     }
     
//-------------   ÂѨ !!! Ñ CUSTOM-OM ÐÀÇÎÁÐÀËÑß!








//-------------  Òåïåðü - ïðåäóñòàíîâëåííûå èíäèêàòîðû!
//-- Ïðåäóïðåæäàþ - ÿ â êàêîé-òî ìîìåíò çàïóòàëñÿ ñðåäè ïðàâèë äëÿ èíäèêàòîðîâ.
//---- Íà ñàìîì äåëå, òàê äàæå ëó÷øå äëÿ îïûòíûõ òðåéäåðîâ-ïèñàòåëåé.
//-- Â "CCI", íàïðèìåð, ÿ ðåàëèçîâàë "êðþê", à â Stochastic-e åù¸ Ñåëåöêèé ðåàëèçîâàë ïåðåêóïëåííîñòü-ïåðåïðîäàííîñòü
//-- 



//Ìàøêè:------------------------------------
 if(otkr_MA==true)
              {
               if( iMA(NULL,0,MA1,0,MODE_SMA,PRICE_CLOSE,Shift_ma)>iMA(NULL,0,MA2,0,MODE_SMA,PRICE_CLOSE,Shift_ma))
                 {
                  MA_By =true;
                 } 
               if(iMA(NULL,0,MA1,0,MODE_SMA,PRICE_CLOSE,Shift_ma)<iMA(NULL,0,MA2,0,MODE_SMA,PRICE_CLOSE,Shift_ma))               
                 {
                  MA_Sell =true;
                 } 
               }
               
 if(zakr_MA==true)
              {
               if(iMA(NULL,0,MA1,0,MODE_SMA,PRICE_CLOSE,Shift_ma)>iMA(NULL,0,MA2,0,MODE_SMA,PRICE_CLOSE,Shift_ma))
                 {
                  Cls_MA_Sell=true;
                 } 
               if(iMA(NULL,0,MA1,0,MODE_SMA,PRICE_CLOSE,Shift_ma)<iMA(NULL,0,MA2,0,MODE_SMA,PRICE_CLOSE,Shift_ma))
                 {
                  Cls_MA_By=true;
                 } 
               }             
//Ñòîõàñòèê:-------------------------------
 if(otkr_Stoh==true)
          {
               if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,0,1)>iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)
                  && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)<zoneBUY)
                   {
                   Stoh_By =true;
                   }
              if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,0,1)<iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)
                 && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)>zoneSELL)
                  {
                  Stoh_Sell =true;
                  } 
               }      
               
 if(zakr_Stoh==true)
          {
              if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,0,1)>iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)
                 && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)<zoneBUY)
                   {
                   Cls_Stoh_Sell=true;
                   }
             if(iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,0,1)<iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)
                 && iStochastic(NULL,0,per_K,per_D,slow,MODE_LWMA,1,1,1)>zoneSELL)
                  {
                  Cls_Stoh_By=true;
                  } 
               }                
//Awesome:--------------------------------
  if(otkr_AO==true)
        {
              if(iAO(NULL,0,0)+iAO(NULL,0,1)>iAO(NULL,0,2)+iAO(NULL,0,3))
                  {
                   AO_By =true;
                  }    
              if(iAO(NULL,0,0)+iAO(NULL,0,1)<iAO(NULL,0,2)+iAO(NULL,0,3))
                  {
                   AO_Sell =true;
                  } 
               } 
               
if(zakr_AO==true)
        {
           if(iAO(NULL,0,0)+iAO(NULL,0,1)>iAO(NULL,0,2)+iAO(NULL,0,3))
                  {
                   Cls_AO_Sell=true;
                  }    
            if(iAO(NULL,0,0)+iAO(NULL,0,1)<iAO(NULL,0,2)+iAO(NULL,0,3))
                  {
                   Cls_AO_By=true;
                  } 
               }
//Fractals (äîáàâëåíî):--------------------------------
               
  if(otkr_Fractals==true)
        {
              if(iFractals(NULL,0,1,0)<PRICE_CLOSE)// Ïîòîì ñâàðãàíþ: öåíà âûøå ïîñëåäíåãî âåðõíåãî (1) - ïîêóïêà,
                  {                     //à åñëè öåíà íèæå ïîñëåäíåãî íèæíåãî (2) - ïðîäàæà.
                   Fractals_By =true;
                  }    
              if(iFractals(NULL,0,2,0)>PRICE_CLOSE)
                  {
                   Fractals_Sell =true;
                  } 
               } 
               
if(zakr_Fractals==true)
        {
           if (iFractals(NULL,0,1,0)<PRICE_CLOSE)// Ïîòîì ñâàðãàíþ: öåíà âûøå ïîñëåäíåãî âåðõíåãî (1) - ïîêóïêà,
                  {                     //à åñëè öåíà íèæå ïîñëåäíåãî íèæíåãî (2) - ïðîäàæà.
                   Cls_Fractals_Sell=true; //Èíâåðñèÿ òóò - ÿñíà...
                  }    
            if(iFractals(NULL,0,2,0)>PRICE_CLOSE)
                  {
                   Cls_Fractals_By=true;
                  } 
               }                
//Accelerator:---------------------------
   if(otkr_AC==true)
               {          
               if (iAC(NULL,0,0)>=0 && iAC(NULL,0,0)>iAC(NULL,0,1) && iAC(NULL,0,1)>iAC(NULL,0,2) || iAC(NULL,0,0)<=0 && iAC(NULL,0,0)>iAC(NULL,0,1) && iAC(NULL,0,1)>iAC(NULL,0,2) && iAC(NULL,0,2)>iAC(NULL,0,3)) 
                  {
                   AC_By =true;
                  }    
               if (iAC(NULL,0,0)<=0 && iAC(NULL,0,0)<iAC(NULL,0,1) && iAC(NULL,0,1)<iAC(NULL,0,2) || iAC(NULL,0,0)>=0 && iAC(NULL,0,0)<iAC(NULL,0,1) && iAC(NULL,0,1)<iAC(NULL,0,2) && iAC(NULL,0,2)<iAC(NULL,0,3)) 
                  {
                   AC_Sell =true;
                  }  
                }   
            
  if(zakr_AC==true)
              {          
              if (iAC(NULL,0,0)>=0 && iAC(NULL,0,0)>iAC(NULL,0,1) && iAC(NULL,0,1)>iAC(NULL,0,2) || iAC(NULL,0,0)<=0 && iAC(NULL,0,0)>iAC(NULL,0,1) && iAC(NULL,0,1)>iAC(NULL,0,2) && iAC(NULL,0,2)>iAC(NULL,0,3)) 
                  {
                    Cls_AC_Sell=true;
                  }    
             if (iAC(NULL,0,0)<=0 && iAC(NULL,0,0)<iAC(NULL,0,1) && iAC(NULL,0,1)<iAC(NULL,0,2) || iAC(NULL,0,0)>=0 && iAC(NULL,0,0)<iAC(NULL,0,1) && iAC(NULL,0,1)<iAC(NULL,0,2) && iAC(NULL,0,2)<iAC(NULL,0,3)) 
                  {
                   Cls_AC_By=true;
                  }  
               }   
 //Demarker:---------------------------- 
 if(otkr_Dema==true) 
             {      
              if (iDeMarker(NULL, 0, DeMa_period, 1)<niz_ur) 
                  {
                   Dema_By =true;
                  }    
             if (iDeMarker(NULL, 0, DeMa_period, 1)>verx_ur) 
                  {
                   Dema_Sell =true;
                  }  
               }
          
 if(zakr_Dema==true) 
              {      
            if (iDeMarker(NULL, 0, DeMa_period, 1)<niz_ur) 
                  {
                   Cls_Dema_Sell=true;
                  }    
            if (iDeMarker(NULL, 0, DeMa_period, 1)>verx_ur) 
                  {
                   Cls_Dema_By=true;
                  }  
               }     
  //CCI:-------------------------------// Íå ñîâñåì êðþê.
 if(otkr_CCI==true)
             {      
            if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,0)>iCCI(NULL, 0, CCI_period,PRICE_MEDIAN,1) && iCCI(NULL, 0, CCI_period,PRICE_MEDIAN,1)<iCCI(NULL, 0, CCI_period,PRICE_MEDIAN,2)) // À òóò êàê äèâåðãåíöèþ ëîâèòü?
                  {
                   CCI_By =true;
                  }    
            if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,0)<iCCI(NULL, 0, CCI_period,PRICE_MEDIAN,1) && iCCI(NULL, 0, CCI_period,PRICE_MEDIAN,1)>iCCI(NULL, 0, CCI_period,PRICE_MEDIAN,2)) 
                  {
                   CCI_Sell =true; 
                  } 
               }                   
                   
   if(zakr_CCI==true)
               {      
           if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN, 1)<-CCI_Level) // Òîæå ïî êðþêó.
                  {
                   Cls_CCI_Sell=true;
                  }    
           if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN, 1)>CCI_Level) // CCI èñïîëüçóåòñÿ êàê îñöèëëÿòîð ïåðåêóï.\ïåðåïðîä. Êàê Ñòîõàñòèê.
                  {
                   Cls_CCI_By=true;
                  } 
               } 
               


//Åñëè íåéì¸òñÿ, âîò âàì â âûêëþ÷åííîì âèäå "íîðìàëüíûé" CCI îò Ñåëåòñêîãî (â îðèãèíàëå):

//  //CCI:-------------------------------
// if(otkr_CCI==true)
//             {      
//            if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN, 1)<-100) 
//                  {
//                   CCI_By =true;
//                  }    
//            if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,1)>100) 
//                  {
//                   CCI_Sell =true;
//                  } 
//               }                   
//      
//   if(zakr_CCI==true)
//               {      
//           if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN, 1)<-100) 
//                  {
//                   Cls_CCI_Sell=true;
//                  }    
//           if (iCCI(NULL, 0,CCI_period,PRICE_MEDIAN,1)>100) 
//                  {
//                   Cls_CCI_By=true;
//                  } 
//               }                   
//                               
//                             




               
//Äîáàâëåíî:RSI:---------------------------------------------------------------------
  
    if(otkr_RSI==true)
              {
            if (iRSI(NULL,0,RSI_Period,1,0)>RSI_High)
                  {
                   RSI_By=true;
                  }    
            if (iRSI(NULL,0,RSI_Period,1,0)<RSI_Low)
                  {
                   RSI_Sell=true;
                  } 
               }                   
      
   if(zakr_RSI==true)
              {
           if (iRSI(NULL,0,RSI_Period,1,0)>RSI_High)
                  {
                   Cls_RSI_Sell=true;
                  }    
           if (iRSI(NULL,0,RSI_Period,1,0)<RSI_Low)
                  {
                   Cls_RSI_By=true;
                  } 
               }            
  
//Äîáàâëåíî:MFI:-------------------------------             
  
    
    if(otkr_MFI==true)
              {
            if (iMFI(NULL,0,MFI_Period,0)>MFI_High)
                  {
                   MFI_By=true;
                  }    
            if (iMFI(NULL,0,MFI_Period,0)<MFI_Low)
                  {
                   MFI_Sell=true;
                  } 
               }                   
      
   if(zakr_MFI==true)
                 {      
           if (iMFI(NULL,0,MFI_Period,0)>MFI_High/2+MFI_Low/2)
                  {
                   Cls_MFI_Sell=true;
                  }    
           if (iMFI(NULL,0,MFI_Period,0)<MFI_High/2+MFI_Low/2)
                  {
                   Cls_MFI_By=true;
                  } 
               }   
               
//Äîáàâëåíî:WPR:--------------------------------         
  
   if(otkr_WPR==true)
              {
            if (iWPR(NULL,0,WPR_Period,WPR_Shift)>-20)
                  {
                   WPR_By=true;
                  }    
            if (iWPR(NULL,0,WPR_Period,0)<-80)
                  {
                   WPR_Sell=true;
                  } 
               }                   
      
   if(zakr_WPR==true)
                 {      
           if (iWPR(NULL,0,WPR_Period,0)>-20)
                  {
                   Cls_WPR_Sell=true;
                  }    
           if (iWPR(NULL,0,WPR_Period,0)<-80)
                  {
                   Cls_WPR_By=true;
                  } 
               }   
  
  
  
  
//Äîáàâëåíî:MACD:-------------------------------      
  
    
   if(otkr_MACD==true)
              {
            if (iMACD(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,1,0)>iMACD(NULL,0,9,26,14,1,1,1))
                  {
                   MACD_By=true;
                  }    
            if (iMACD(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,1,0)<iMACD(NULL,0,9,26,14,1,1,1))
                  {
                   MACD_Sell=true;
                  } 
               }                   
      
   if(zakr_MACD==true)
                 {      
           if (iMACD(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,1,0)>iMACD(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,1,1))
                  {
                   Cls_MACD_Sell=true;
                  }    
           if (iMACD(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,1,0)<iMACD(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,1,1))
                  {
                   Cls_MACD_By=true;
                  } 
               }           
//Äîáàâëåíî:OsMA:-------------------------------      
  
    
   if(otkr_OsMA==true)
              {
            if (iOsMA(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,0)>iMACD(NULL,0,9,26,14,1,1,1))
                  {
                   MACD_By=true;
                  }    
            if (iOsMA(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,0)<iMACD(NULL,0,9,26,14,1,1,1))
                  {
                   MACD_Sell=true;
                  } 
               }                   
      
   if(zakr_OsMA==true)
                 {      
           if (iOsMA(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,0)>iMACD(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,1,1))
                  {
                   Cls_MACD_Sell=true;
                  }    
           if (iOsMA(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,0)<iMACD(NULL,0,MACD_Fast,MACD_Slow,MACD_Signal,1,1,1))
                  {
                   Cls_MACD_By=true;
                  } 
               }            
  

  
//Äîáàâëåíî:ADX:-------------------------------             
    
   if(otkr_ADX==true)
              {
            if (iADX(NULL,0,ADX_Period,1,0,0)>70)
                  {
                   ADX_By=true;
                  }    
            if (iADX(NULL,0,ADX_Period,1,0,0)<30)
                  {
                   ADX_Sell=true;
                  } 
               }                   
      
   if(zakr_ADX==true)
                 {      
           if (iADX(NULL,0,ADX_Period,1,0,0)>70)
                  {
                   Cls_ADX_Sell=true;
                  }    
           if (iADX(NULL,0,ADX_Period,1,0,0)<30)
                  {
                   Cls_ADX_By=true;
                  } 
               }    
               
//Äîáàâëåíî:SAR:------------------------------- 
       
   
    
   if(otkr_SAR==true)
              {
            if(iSAR(NULL,0,SAR_Step,SAR_MaxStep,0)>Close[0])
                  {
                   SAR_By=true;
                  }    
            if(iSAR(NULL,0,SAR_Step,SAR_MaxStep,0)<Close[0])
                  {
                   SAR_Sell=true;
                  } 
               }                   
      
   if(zakr_SAR==true)
                 {      
           if (iSAR(NULL,0,SAR_Step,SAR_MaxStep,0)>Close[0])
                  {
                   Cls_SAR_Sell=true;
                  }    
           if(iSAR(NULL,0,SAR_Step,SAR_MaxStep,0)<Close[0])
                  {
                   Cls_SAR_By=true;
                  } 
               }              


               
//Äîáàâëåíî:Áëîê îòäåëüíî äëÿ ATR------------------------------     

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

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

          
//--------------------------------Îòêðûòèå------------------------------------------  7  ----//
  if (MA_By ==true||otkr_MA==false  &&
    Stoh_By ==true||otkr_Stoh==false&&
      AO_By ==true||otkr_AO==false  &&
Fractals_By ==true||otkr_Fractals==false&&
      AC_By ==true||otkr_AC==false  &&
    Dema_By ==true||otkr_Dema==false&&
     CCI_By ==true||otkr_CCI==false &&
     RSI_By ==true||otkr_RSI==false &&
     MFI_By ==true||otkr_MFI==false &&
     WPR_By ==true||otkr_WPR==false && 
     MACD_By==true||otkr_MACD==false && 
     OsMA_By==true||otkr_OsMA==false && 
     ADX_By ==true||otkr_ADX==false &&
     SAR_By ==true||otkr_SAR==false &&
     Custom_1__By==true||otkr_Custom_1==false&&  // Custom1 is for Fractals
     Custom_2__By==true||otkr_Custom_2==false&&
     Custom_3__By==true||otkr_Custom_3==false&&
     Custom_4__By==true||otkr_Custom_4==false&&
     Custom_5__By==true||otkr_Custom_5==false&&
     Custom_6__By==true||otkr_Custom_6==false&&
     Custom_7__By==true||otkr_Custom_7==false&&
     Custom_8__By==true||otkr_Custom_8==false&&
     Custom_9__By==true||otkr_Custom_9==false&&
     Custom_10_By==true||otkr_Custom_10==false&&
     Custom_11_By==true||otkr_Custom_11==false&&
     Custom_12_By==true||otkr_Custom_12==false&&
     Custom_13_By==true||otkr_Custom_13==false&&
     Custom_14_By==true||otkr_Custom_14==false&&
     Custom_15_By==true||otkr_Custom_15==false&&
     Custom_16_By==true||otkr_Custom_16==false
     )
     {                                          
      Opn_B=true;                               // Êðèòåðèé îòêð. Buy
     }
//---------    
  if (  MA_Sell==true||otkr_MA==false   &&
     Stoh_Sell ==true||otkr_Stoh==false &&
      AO_Sell  ==true||otkr_AO==false   &&
      Fractals_Sell==true||otkr_Fractals==false &&
      AC_Sell  ==true||otkr_AC==false   &&
     Dema_Sell ==true||otkr_Dema==false &&
      CCI_Sell ==true||otkr_CCI==false  &&
      RSI_Sell ==true||otkr_RSI==false  &&
      MFI_Sell ==true||otkr_MFI==false  &&
      WPR_Sell ==true||otkr_WPR==false  &&
      MACD_Sell==true||otkr_MACD==false &&
      OsMA_Sell==true||otkr_OsMA==false && 
      ADX_Sell ==true||otkr_ADX==false &&
      SAR_Sell ==true||otkr_SAR==false) 
     {                                          
      Opn_S=true;                               // Êðèòåðèé îòêð. Sell
     } 
//--------------------------------Çàêðûòèå-----------------------------------------------//
if  (Cls_MA_By  ==true||zakr_MA==false  &&
     Cls_Stoh_By==true||zakr_Stoh==false&&
     Cls_AO_By  ==true||zakr_AO==false  &&
     Cls_Fractals_By==true||zakr_Fractals==false &&
     Cls_AC_By  ==true||zakr_AC==false  &&
     Cls_Dema_By==true||zakr_Dema==false&&    
     Cls_CCI_By ==true||zakr_CCI==false &&  
     Cls_RSI_By ==true||zakr_RSI==false &&    
     Cls_MFI_By ==true||zakr_MFI==false &&    
     Cls_WPR_By ==true||zakr_WPR==false &&    
     Cls_MACD_By==true||zakr_MACD==false&&  
     Cls_OsMA_By==true||zakr_OsMA==false &&  
     Cls_ADX_By ==true||zakr_ADX==false && 
     Cls_SAR_By ==true||zakr_SAR==false &&
     Cls_Custom_1__By==true||zakr_Custom_1==false&&
     Cls_Custom_2__By==true||zakr_Custom_2==false&&
     Cls_Custom_3__By==true||zakr_Custom_3==false&&
     Cls_Custom_4__By==true||zakr_Custom_4==false&&
     Cls_Custom_5__By==true||zakr_Custom_5==false&&
     Cls_Custom_6__By==true||zakr_Custom_6==false&&
     Cls_Custom_7__By==true||zakr_Custom_7==false&&
     Cls_Custom_8__By==true||zakr_Custom_8==false&&
     Cls_Custom_9__By==true||zakr_Custom_9==false&&
     Cls_Custom_10_By==true||zakr_Custom_10==false&&
     Cls_Custom_11_By==true||zakr_Custom_11==false&&
     Cls_Custom_12_By==true||zakr_Custom_12==false&&
     Cls_Custom_13_By==true||zakr_Custom_13==false&&
     Cls_Custom_14_By==true||zakr_Custom_14==false&&
     Cls_Custom_15_By==true||zakr_Custom_15==false&&
     Cls_Custom_16_By==true||zakr_Custom_16==false) 
     {                                          
      Cls_B=true;                               // Êðèòåðèé çàêð. Buy
     }   
 if (Cls_MA_Sell ==true||zakr_MA==false  &&
   Cls_Stoh_Sell ==true||zakr_Stoh==false&&
     Cls_AO_Sell ==true||zakr_AO==false  &&
     Cls_Fractals_Sell==true||zakr_Fractals==false &&
     Cls_AC_Sell ==true||zakr_AC==false  &&
    Cls_Dema_Sell==true||zakr_Dema==false&&    
     Cls_CCI_Sell==true||zakr_CCI==false &&        
     Cls_RSI_Sell==true||zakr_RSI==false &&    
     Cls_MFI_Sell==true||zakr_MFI==false &&    
     Cls_WPR_Sell==true||zakr_WPR==false &&    
    Cls_MACD_Sell==true||zakr_MACD==false&&  
    Cls_OsMA_Sell==true||zakr_OsMA==false&& 
     Cls_ADX_Sell==true||zakr_ADX==false && 
     Cls_SAR_Sell==true||zakr_SAR==false &&
     Cls_Custom_1__Sell==true||zakr_Custom_1==false&&
     Cls_Custom_2__Sell==true||zakr_Custom_2==false&&
     Cls_Custom_3__Sell==true||zakr_Custom_3==false&&
     Cls_Custom_4__Sell==true||zakr_Custom_4==false&&
     Cls_Custom_5__Sell==true||zakr_Custom_5==false&&
     Cls_Custom_6__Sell==true||zakr_Custom_6==false&&
     Cls_Custom_7__Sell==true||zakr_Custom_7==false&&
     Cls_Custom_8__Sell==true||zakr_Custom_8==false&&
     Cls_Custom_9__Sell==true||zakr_Custom_9==false&&
     Cls_Custom_10_Sell==true||zakr_Custom_10==false&&
     Cls_Custom_11_Sell==true||zakr_Custom_11==false&&
     Cls_Custom_12_Sell==true||zakr_Custom_12==false&&
     Cls_Custom_13_Sell==true||zakr_Custom_13==false&&
     Cls_Custom_14_Sell==true||zakr_Custom_14==false&&
     Cls_Custom_15_Sell==true||zakr_Custom_15==false&&
     Cls_Custom_16_Sell==true||zakr_Custom_16==false)
     
                 
     {                        
      Cls_S=true;                               // Êðèòåðèé çàêð. Sell
     } 
















//-----------------------------Çàêðûòèå îðäåðîâ---------------------------------- 8 --
  
   while(true)                                  // Öèêë çàêðûòèÿ îðä.
     {
      if (Tip==0 && Cls_B==true)                // Îòêðûò îðäåð Buy..Óñëîâèÿ çàêðûòèÿ Buy
        {                                       //è åñòü êðèòåðèé çàêð
         Alert("Ïîïûòêà çàêðûòü Buy ",Ticket,". Îæèäàíèå îòâåòà..");
         RefreshRates();                        // Îáíîâëåíèå äàííûõ
         Ans=OrderClose(Ticket,Lot,Bid,2);      // Çàêðûòèå Buy
         if (Ans==true)                         // Ïîëó÷èëîñü :)
           {
            Alert ("Çàêðûò îðäåð Buy ",Ticket);
            
            break;                              // Âûõîä èç öèêëà çàêð
           }
         if (Fun_Error(GetLastError())==1)      // Îáðàáîòêà îøèáîê
            continue;                           // Ïîâòîðíàÿ ïîïûòêà
         return;                                // Âûõîä èç start()
        }

      if (Tip==1 && Cls_S==true)                // Îòêðûò îðäåð Sell..Óñëîâèÿ çàêðûòèÿ Sell
        {                                       // è åñòü êðèòåðèé çàêð
         Alert("Ïîïûòêà çàêðûòü Sell ",Ticket,". Îæèäàíèå îòâåòà..");
         RefreshRates();                        // Îáíîâëåíèå äàííûõ
         Ans=OrderClose(Ticket,Lot,Ask,2);      // Çàêðûòèå Sell
         if (Ans==true)                         // Ïîëó÷èëîñü :)
           {
            Alert ("Çàêðûò îðäåð Sell ",Ticket);
            
            break;                              // Âûõîä èç öèêëà çàêð
           }
         if (Fun_Error(GetLastError())==1)      // Îáðàáîòêà îøèáîê
            continue;                           // Ïîâòîðíàÿ ïîïûòêà
         return;                                // Âûõîä èç start()
        }
      break;                                    // Âûõîä èç while
     }
    
 
 
 
 
 
 
 
 
 
 
 
//-----------------------------Ñòîèìîñòü îðäåðîâ---------------------------------- 9 --
   
RefreshRates();                              // Îáíîâëåíèå äàííûõ   
 
    int time = 0;double profit = 0;           //îáüÿâëÿåì íåîáõîäèìûå íàì ïåðåìåííûå êóäà ìû ïîëîæèì èíòåðåñóþùèå íàñ õàðàêòåðèñòèêè îðäåðà

for(int t = OrdersHistoryTotal();t>=0;t--)   // Ïåðåáèðàåì âñå çàêðûòûå îðäåðà
{
  if(OrderSelect(t,SELECT_BY_POS,MODE_HISTORY))//åñëè îðäåð ñ òàêèì íîìåðîì (i) â ñïèñêå çàêðûòûõ îðäåðîâ åñòü ( íå ïóòàòü ñ òèêåòîì)
  {
    if(OrderSymbol() == Symbol())       //åñëè âûáðàííûé îðäåð áûë îòêðûò ïî íàøåé âàëþòíîé ïàðå
    {
      if(time<OrderCloseTime())        //(ñðàâíèâàåì åãî ñ õðàíÿùèìñÿ â ïåðîåìåííîé time)
       
      {
        time=OrderCloseTime();          //åñëè âðåìÿ çàêðûòèÿ îðäåðà áîëüøå - ëîæèì åãî â ïåðåìåííóþ
        profit=OrderProfit();          //è çàîäíî çàïîìèíàåì ïðèáûëü îðäåðà
        lot   =OrderLots();                    // Êîëè÷åñòâî ëîòîâ
        
  
      }
    }
  }
}











//-------------------------Money Management Block (äîáàâëåíî)--------------------




//-----------------

if (Opn_B==true||Opn_S==true)
{
if (StakeMode==1&&OrdersTotal()<1)Lts=Lts1;
if (StakeMode==3&&OrdersTotal()<1)Lts=NormalizeDouble(AccountEquity()*Percents/100/1000, 2);
   {
if(profit == 0 && StakeMode==2 && OrdersTotal()<1)  {Lts=Lts1;}     //äåéñòâèÿ åñëè èñòîðèÿ ÷èñòà         
if(profit >= 0 && StakeMode==2 && OrdersTotal()<1)  {Lts=Lts1;}     //äåéñòâèÿ åñëè ïîñëåäíèé îðäåð áûë ïðèáûëüíûì, èëè íóëåâûì
if(profit <  0 && StakeMode==2 && OrdersTotal()<1)  {Lts=lot*IK;}   //äåéñòâèÿ åñëè ïîñëåäíèé îðäåð áûë óáûòî÷íûì (ïîäñêàçêà - ýòî ÌÀÐÒÈÍÃÅÉË!)
   }
}





    
         if (Lts*One_Lot > Free)                    // Åñëè äåíåã íåò...  
         {     
          Alert(" Íå õâàòàåò äåíåã íà çàêóïêó", Lts," ëîòîâ");      
          return;                                   // Âûõîä èç start()     
         }
   
//------------------------------------------------------------------------------ 




















//------------------------------Îòêðûòèå îðäåðîâ--------------------------------- 10 --

   while(true)                                  // Öèêë îòêðûòèÿ îðä.
   
     {
      if (Total==0 && Opn_B==true && Cls_B==false)              // Îòêðûòûõ îðä. íåò +
        {                                       // êðèòåðèé îòêð. Buy
         RefreshRates();                        // Îáíîâëåíèå äàííûõ
         SL=Bid - New_Stop(StopLoss)*Point;     // Âû÷èñëåíèå SL îòêð.
         TP=Bid + New_Stop(TakeProfit)*Point;   // Âû÷èñëåíèå TP îòêð.
         Alert("Ïîïûòêà îòêðûòü Buy. Îæèäàíèå îòâåòà..");
         Ticket=OrderSend(Symb,OP_BUY,Lts,Ask,Slippage,SL,TP,NULL,ID_of_EA,0,RoyalBlue);//Îòêðûòèå Buy
         if (Ticket > 0)                        // Ïîëó÷èëîñü :)
           {
            Alert ("Îòêðûò îðäåð Buy ",Ticket);
            return;                             // Âûõîä èç start()
           }
         if (Fun_Error(GetLastError())==1)      // Îáðàáîòêà îøèáîê
            continue;                           // Ïîâòîðíàÿ ïîïûòêà
         return;                                // Âûõîä èç start()
        }
      if (Total==0 && Opn_S==true && Cls_S==false)              // Îòêðûòûõ îðä. íåò +
        {                                       // êðèòåðèé îòêð. Sell
         RefreshRates();                        // Îáíîâëåíèå äàííûõ
         SL=Ask + New_Stop(StopLoss)*Point;     // Âû÷èñëåíèå SL îòêð.
         TP=Ask - New_Stop(TakeProfit)*Point;   // Âû÷èñëåíèå TP îòêð.
         Alert("Ïîïûòêà îòêðûòü Sell. Îæèäàíèå îòâåòà..");
         Ticket=OrderSend(Symb,OP_SELL,Lts,Bid,Slippage,SL,TP,NULL,ID_of_EA,0,RoyalBlue);//Îòêðûòèå Sell///////\\//\\//////
         if (Ticket > 0)                        // Ïîëó÷èëîñü :)
           {
            Alert ("Îòêðûò îðäåð Sell ",Ticket);
            return;                             // Âûõîä èç start()
          }
         if (Fun_Error(GetLastError())==1)      // Îáðàáîòêà îøèáîê
            continue;                           // Ïîâòîðíàÿ ïîïûòêà
         return;                                // Âûõîä èç start()
        }
      break;                                    // Âûõîä èç while
     }
   return;                                      // Âûõîä èç start()
  }
  













//--------------------------Ôóíêöèÿèÿ îáðàáîòêè îøèáîê------------------------------------ 11 --
int Fun_Error(int Error)                      
  {
   switch(Error)
     {                                          // Ïðåîäîëèìûå îøèáêè            
      case  4: Alert("Òîðãîâûé ñåðâåð çàíÿò. Ïðîáóåì åù¸ ðàç..");
         Sleep(3000);                           // Ïðîñòîå ðåøåíèå
         return(1);                             // Âûõîä èç ôóíêöèè
      case 130:Alert("Íåïðàâèëüíûå ñòîïû");
         while(RefreshRates()==false)           // Äî íîâîãî òèêà
            Sleep(1);                            // Çàäåðæêà â öèêëå
         return(1);                             // Âûõîä èç ôóíêöèè   
      case 135:Alert("Öåíà èçìåíèëàñü. Ïðîáóåì åù¸ ðàç..");
         RefreshRates();                        // Îáíîâèì äàííûå
         return(1);                             // Âûõîä èç ôóíêöèè
      case 136:Alert("Íåò öåí. Æä¸ì íîâûé òèê..");
         while(RefreshRates()==false)           // Äî íîâîãî òèêà
            Sleep(1);                           // Çàäåðæêà â öèêëå
         return(1);                             // Âûõîä èç ôóíêöèè
      case 137:Alert("Áðîêåð çàíÿò. Ïðîáóåì åù¸ ðàç..");
         Sleep(3000);                           // Ïðîñòîå ðåøåíèå
         return(1);                             // Âûõîä èç ôóíêöèè
      case 146:Alert("Ïîäñèñòåìà òîðãîâëè çàíÿòà. Ïðîáóåì åù¸..");
         Sleep(500);                            // Ïðîñòîå ðåøåíèå
         return(1);                             // Âûõîä èç ôóíêöèè
         // Êðèòè÷åñêèå îøèáêè
      case  2: Alert("Îáùàÿ îøèáêà.");
         return(0);                             // Âûõîä èç ôóíêöèè
      case  5: Alert("Ñòàðàÿ âåðñèÿ òåðìèíàëà.");
         Work=false;                            // Áîëüøå íå ðàáîòàòü
         return(0);                             // Âûõîä èç ôóíêöèè
      case 64: Alert("Ñ÷åò çàáëîêèðîâàí.");
         Work=false;                            // Áîëüøå íå ðàáîòàòü
         return(0);                             // Âûõîä èç ôóíêöèè
      case 133:Alert("Òîðãîâëÿ çàïðåùåíà.");
         return(0);                             // Âûõîä èç ôóíêöèè
      case 134:Alert("Íåäîñòàòî÷íî äåíåã äëÿ ñîâåðøåíèÿ îïåðàöèè.");
         return(0);                             // Âûõîä èç ôóíêöèè
      default: Alert("Âîçíèêëà îøèáêà ",Error); // Äðóãèå âàðèàíòû   
         return(0);                             // Âûõîä èç ôóíêöèè
     }
  }
//-------------------------------------------------------------- 12 --

int New_Stop(int Parametr)                      // Ïðîâåðêà ñòîï-ïðèê.
  {
   int Min_Dist=MarketInfo(Symb,MODE_STOPLEVEL);// Ìèíèì. äèñòàíöèÿ
   if (Parametr<Min_Dist)                       // Åñëè ìåíüøå äîïóñò.
     {
      Parametr=Min_Dist;                        // Óñòàíîâèì äîïóñò.
      Alert("Óâåëè÷åíà äèñòàíöèÿ ñòîï-ïðèêàçà.");
     }
   return(Parametr);                            // Âîçâðàò çíà÷åíèÿ
  }


Comments

Markdown supported. Formatting help

Markdown Formatting Guide

Element Markdown Syntax
Heading # H1
## H2
### H3
Bold **bold text**
Italic *italicized text*
Link [title](https://www.example.com)
Image ![alt text](image.jpg)
Code `code`
Code Block ```
code block
```
Quote > blockquote
Unordered List - Item 1
- Item 2
Ordered List 1. First item
2. Second item
Horizontal Rule ---