ZH_StandardFunctionsTfH6.lib





//+----------------------------------------------------------------------------------------------------------------------------+
//|                                                                                            ZH_StandardFunctionsTfH6.lib.mq4|
//|                                                                                            Copyright © Zhunko              |
//|09.10.2009 - 12.10.2009                                                                     ÌF ZHUNKO vadim@zhunko.ru       |
//+----------------------------------------------------------------------------------------------------------------------------+
//| Íàáîð ñòàíäàðòíûõ ôóíêöèé äëÿ ÒÔ H6.                                                                                       |
//+----------------------------------------------------------------------------------------------------------------------------+
//|1.Êîëè÷åñòâî áàðîâ â ÒÔ H6.                                                                                                 |
//|  int iBars_H6 (string symbol); // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                              |
//+----------------------------------------------------------------------------------------------------------------------------+
//|2.Íîìåð áàðà ïî âðåìåíè â ÒÔ H6.                                                                                            |
//|  int iBarShift_H6 (string   symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                         |
//|                    datetime time,   // Çíà÷åíèå âðåìåíè äëÿ ïîèñêà.                                                        |
//|                    bool     exact)  // Âîçâðàùàåìîå çíà÷åíèå åñëè áàð íå íàéäåí                                            |
//|                                     // (FALSE - iBarShift âîçâðàùàåò áëèæàéøèé/TRUE - iBarShift âîçâðàùàåò -1).            |
//+----------------------------------------------------------------------------------------------------------------------------+
//|3.Âðåìÿ îòêðûòèÿ ïî íîìåðó áàðà â ÒÔ H6.                                                                                    |
//|  datetime iTime_H6 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà                                                           |
//|                     int    shift)  // Íîìåð áàðà.                                                                          |
//+----------------------------------------------------------------------------------------------------------------------------+
//|4.Öåíà îòêðûòèÿ âûáðàííîãî áàðà â ÒÔ H6.                                                                                    |
//|  double iOpen_H6 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                            |
//|                   int    shift)  // Íîìåð áàðà.                                                                            |
//+----------------------------------------------------------------------------------------------------------------------------+
//|5.Ìàêñèìàëüíàÿ öåíà âûáðàííîãî áàðà â ÒÔ H6.                                                                                |
//|  double iHigh_H6 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                            |
//|                   int    shift)  // Íîìåð áàðà.                                                                            |
//+----------------------------------------------------------------------------------------------------------------------------+
//|6.Ìèíèìàëüíàÿ öåíà âûáðàííîãî áàðà â ÒÔ H6.                                                                                 |
//|  double iLow_H6 (string symbol, // Ââàëþòíàÿ ïàðà.                                                                         |
//|                  int    shift)  // Íîìåð áàðà.                                                                             |
//+----------------------------------------------------------------------------------------------------------------------------+
//|7.Öåíà çàêðûòèÿ âûáðàííîãî áàðà â ÒÔ H6.                                                                                    |
//|  double iClose_H6 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                           |
//|                    int    shift)  // Íîìåð áàðà.                                                                           |
//+----------------------------------------------------------------------------------------------------------------------------+
//|8. Âîçâðàùàåò òåêóùèé íîìåð øåñòè÷àñîâîãî áàðà â ñóòêàõ ïîñëåäíåãî èçâåñòíîãî ñåðâåðíîãî âðåìåíè.                           |
//|    int Hour6()                                                                                                             |
//+----------------------------------------------------------------------------------------------------------------------------+
//|9. Âîçâðàùàåò íîìåð øåñòè÷àñîâîãî áàðà â ñóòêàõ äëÿ óêàçàííîãî âðåìåíè.                                                     |
//|   int TimeHour6 (datetime time) // Äàòà, ïðåäñòàâëåííàÿ â âèäå êîëè÷åñòâà ñåêóíä, ïðîøåäøèõ ïîñëå 00:00 1 ÿíâàðÿ 1970 ãîäà.|
//+----------------------------------------------------------------------------------------------------------------------------+
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
#property copyright "Copyright © 2006 Zhunko"
#property link      "vadim@zhunko.ru"
#property library
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 1. Êîëè÷åñòâî áàðîâ â ÒÔ H6.
int iBars_H6 (string symbol) // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.
 {
  bool     Switch_H1 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H2 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H3 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H4 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
  datetime iTimeH1;          // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  int      i;
  int      iBarsH1;          // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH6;          // Êîëè÷åñòâî áàðîâ â ÒÔ H6.
  //----
  iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  for (i = 0, iBarsH6 = 0; i < iBarsH1; i++)
   {
    iTimeH1 = iTime (symbol, PERIOD_H1, i); // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
    if (i > 0) // Íà ïåðâîé èòåðàöèè íå ïðîâåðÿì ñóòîê.
     {// Åñëè ñìåíèëèñü ñóòêè, èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ. Ìîæåò ïðèãîäèòüñÿ ïðè îòñóòñòâèè áàðîâ âíóòðè äíÿ è íåñêîëüêèõ äíåé ïîäðÿä (äûðû â èñòîðèè).
      if (MathMod (TimeDay (iTimeH1), TimeDay (iTime (symbol, PERIOD_H1, i - 1))) != 0)
       {
        Switch_H1 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
        Switch_H2 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
        Switch_H3 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
        Switch_H4 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
       }
     }
    // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
    switch (TimeHour (iTimeH1))
     {//----×àñîâûå áàðû 4-ãî øåñòè÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
      case 23:
      case 22:
      case 21:
      case 20:
      case 19:
      case 18:
       {
        Switch_H3 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
        Switch_H2 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
        Switch_H1 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
        if (Switch_H4 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
          Switch_H4 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 3-ãî øåñòè÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
      case 17:
      case 16:
      case 15:
      case 14:
      case 13:
      case 12:
       {
        Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
        Switch_H2 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
        Switch_H1 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
        if (Switch_H3 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
          Switch_H3 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 2-ãî øåñòè÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
      case 11:
      case 10:
      case  9:
      case  8:
      case  7:
      case  6:
       {
        Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
        Switch_H3 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
        Switch_H1 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
        if (Switch_H2 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
          Switch_H2 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 1-ãî øåñòè÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
      case 5:
      case 4:
      case 3:
      case 2:
      case 1:
      case 0:
       {
        Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
        Switch_H3 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
        Switch_H2 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
        if (Switch_H1 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
          Switch_H1 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
     }
   }
  return (iBarsH6);
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 2. Íîìåð áàðà ïî âðåìåíè â ÒÔ H6.
int iBarShift_H6 (string   symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.
                  datetime time,   // Çíà÷åíèå âðåìåíè äëÿ ïîèñêà.
                  bool     exact)  // Âîçâðàùàåìîå çíà÷åíèå åñëè áàð íå íàéäåí (FALSE - iBarShift âîçâðàùàåò áëèæàéøèé/TRUE - iBarShift âîçâðàùàåò -1).
 {
  bool     Switch_H1 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H2 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H3 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H4 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
  datetime TimeFirst_H6;     // Âðåìÿ çàêðûòèÿ ïåðâãî áàðà H6 â èñòîðèè. Áàð íà÷àëà èñòîðèè ïàðû.
  datetime TimeLast_H6;      // Âðåìÿ îòêðûòèÿ ïîñëåäíåãî áàðà H6 â èñòîðèè.
  datetime iTimeH1;          // Âðåìÿ îòêðûòèÿ òåêóùåãî áàðà íà H1.
  datetime iTimeH6_0;        // Âðåìÿ îòêðûòèÿ òåêóùåãî áàðà íà H6.
  datetime iTimeH6_1;        // Âðåìÿ îòêðûòèÿ ïðåäûäóùåãî áàðà íà H6.
  int      AmountBar;        // Êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â ïåðâîì èëè ïîñëåäíåì êâàðòàëüíûõ áàðàõ.
  int      i, j;
  int      ShiftH6 = 0;      // Âîçâðàùàåìîå çíà÷åíèå ñìåùåíèÿ áàðà â ÒÔ H6.
  int      iBarsH1;          // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      NumberHour;       // Íîìåð ÷àñà.
  //====Ïîäãîòîâêà äàííûõ.================================================================================================================================================================================================================
  iBarsH1 = iBars (symbol, PERIOD_H1);                    // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  //====Ðàñ÷¸ò âðåìåíè çàêðûòèÿ ïåðâîãî êâàðòàëüíîãî áàðà â èñòîðèè. Êâàðòàë íà÷àëà èñòîðèè ïàðû.==========================================================================================================================================
  TimeFirst_H6 = iTime (symbol, PERIOD_H1, iBarsH1 - 1);  // Âðåìÿ îòêðûòèÿ ïåðâîãî â èñòîðèè ÷àñîâîãî áàðà.
  NumberHour = TimeHour (TimeFirst_H6) + 1;               // Íîìåð ÷àñà ÎÒ 1 äî 24.
  // Âû÷èñëÿåì êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
  AmountBar = MathMod (NumberHour, 6);                    // Åñëè áàð ïîñëåäíèé â áàðå H6, òî êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ ðàâíî íóëþ.
  if (AmountBar > 0) AmountBar = 6 - AmountBar;           // Åñëè áàð íå ïîñëåäíèé â áàðå H6, ïðîäîëæàåì âû÷èñëÿòü.
  for (i = 0; i <= AmountBar; i++) TimeFirst_H6 += 3600;  // Ïðîèçâîäèì ïðèáàâëåíèå âðåìåíè.
  //====Ðàñ÷¸ò âðåìåíè îòêðûòèÿ ïîñëåäíåãî êâàðòàëüíîãî áàðà â èñòîðèè.===================================================================================================================================================================
  TimeLast_H6 = iTime (symbol, PERIOD_H1, 0);             // Âðåìÿ îòêðûòèÿ ïîñëåäíåãî â èñòîðèè ÷àñîâîãî áàðà.
  NumberHour = TimeHour (TimeLast_H6) + 1;                // Íîìåð ÷àñà ÎÒ 1 äî 24.
  // Âû÷èñëÿåì êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
  AmountBar = MathMod (NumberHour, 6);                    // Íîìåð ÷àñîâîãî áàðà â êâàðòàëå.
  if (AmountBar == 0) AmountBar = 5;                      // Åñëè áàð ïîñëåäíèé â áàðå H6, òî êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ ðàâíî äâóì.
  else AmountBar = AmountBar - 1;                         // Åñëè áàð íå ïîñëåäíèé â áàðå H6, ïðîäîëæàåì âû÷èñëþòü.
  for (i = 0; i < AmountBar; i++) TimeLast_H6 -= 3600;    // Ïðîèçâîäèì âû÷èòàíèå âðåìåíè.
  //----Äèàãíîñòèêà.---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
//  Comment ("TimeFirst_H6 = ", TimeToStr (TimeFirst_H6, TIME_DATE|TIME_MINUTES|TIME_SECONDS), "\nLastQuarter = ", TimeToStr (TimeLast_H6, TIME_DATE|TIME_MINUTES|TIME_SECONDS));
  //======================================================================================================================================================================================================================================
  if (time < TimeFirst_H6 || time >= TimeLast_H6)              // Äëÿ ýêîíîìèè âðåìåíè íà öèêëàõ, ïðè âûáðàííîì âðåìåíè ñî çíà÷åíèåì ìåíüøåì âðåìåíè íà÷àëà èñòîðèè èëè áîëüøåì òåêóùîãî øåñòè÷àñîâîãî áàðà. 
   {
    if (exact == true) return (-1);                            // Åñëè ïåðåêëþ÷àòåëü ðàçðåøàåò, òî âîçâðàùàåì -1 â ñëó÷àå îòñóòñòâèÿ áàðà.
    else                                                       // Åñëè ïåðåêëþ÷àòåëü çàïðåùàåò, òî âîçâðàùàåì áëèæàéøèé ïî õîäó öèêëà (ïðåäûäóùèé) áàð.
     {
      if (time < TimeFirst_H6) return (iBars_H6 (symbol) - 1); // Åñëè çàäàííîå çíà÷åíèå âðåìåíè äëÿ ïîèñêà ìåíüøå âðåìåíè íà÷àëà èñòîðèè, ñ÷èòàåì êîëè÷åñòâî áàðîâ.
      if (time > TimeLast_H6) return (0);                      // Åñëè çàäàííîå çíà÷åíèå âðåìåíè äëÿ ïîèñêà áîëüøå âðåìåíè êîíöà èñòîðèè, âîçðàùàåì ïîñëåäíèé áàð.
     }
   }
  else                                                      // Åñëè çàäàííîå çíà÷åíèå âðåìåíè ñîîòâåòñòâóåò ñóùåñòâóþùåé èñòîðèè.
   {// Âðåìÿ çàêðûòèÿ íóëåâîãî áàðà ÒÔ H6.
    iTimeH6_0 = iTime (symbol, PERIOD_H1, 0);               // Âðåìÿ îòêðûòèÿ ïåðâîãî â èñòîðèè ÷àñîâîãî áàðà.
    NumberHour = TimeHour (iTimeH6_0) + 1;                  // Íîìåð ÷àñà.
    AmountBar = MathMod (NumberHour, 6);                    // Åñëè áàð ïîñëåäíèé â áàðå H6, òî êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ ðàâíî íóëþ.
    if (AmountBar > 0) AmountBar = 6 - AmountBar;           // Åñëè áàð íå ïîñëåäíèé â áàðå H6, ïðîäîëæàåì âû÷èñëÿòü.
    for (i = 0; i <= AmountBar; i++) TimeFirst_H6 += 3600;  // Ïðîèçâîäèì ïðèáàâëåíèå âðåìåíè.
    for (i = 0, ShiftH6 = -1; i < iBarsH1; i++)             // Öèêë ïî ìåñÿ÷íûì áàðàì. Íà÷àëî ñ íóëåâîãî áàðà.
     {
      iTimeH1 = iTime (symbol, PERIOD_H1, i);               // Âðåìÿ îòêðûòèÿ òåêóùåãî ÷àñîâîãî áàðà.
      // Âîçâðàùàåì íîìåð áëèæàéøåãî áàðà â ñëó÷àå îòñóòñòâèÿ áàðà. Åñëè çàäàííîå âðåìÿ áîëüøå âðåìåíè îòêðûòèÿ òåêóùåãî áàðà H1.
      if (i > 0) // Íà ïåðâîé èòåðàöèè íå ïðîâåðÿì ñóòîê.
       {// Åñëè ñìåíèëèñü ñóòêè, èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ. Ìîæåò ïðèãîäèòüñÿ ïðè îòñóòñòâèè áàðîâ âíóòðè äíÿ è íåñêîëüêèõ äíåé ïîäðÿä (äûðû â èñòîðèè).
        if (MathMod (TimeDay (iTimeH1), TimeDay (iTime (symbol, PERIOD_H1, i - 1))) != 0)
         {
          Switch_H1 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
          Switch_H4 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
         }
       }
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      NumberHour = TimeHour (iTimeH1); // Íîìåð ÷àñà.
      switch (NumberHour)
       {//----×àñîâûå áàðû 4-ãî øåñòè÷àñîâîãî áàðà.--------------------------------------------------------------------------------------
        case 23:
        case 22:
        case 21:
        case 20:
        case 19:
        case 18:
         {
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H4 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H4 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî øåñòè÷àñîâîãî áàðà.--------------------------------------------------------------------------------------
        case 17:
        case 16:
        case 15:
        case 14:
        case 13:
        case 12:
         {
          Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H3 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H3 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî øåñòè÷àñîâîãî áàðà.--------------------------------------------------------------------------------------
        case 11:
        case 10:
        case  9:
        case  8:
        case  7:
        case  6:
         {
          Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H2 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H2 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî øåñòè÷àñîâîãî áàðà.--------------------------------------------------------------------------------------
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:
         {
          Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H1 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H1 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
       }
      // Åñëè ïåðåêëþ÷àòåëü ðàçðåøàåò, òî ïðîèçâîäèì ïîèñê âðåìåíè â ïðåäïîëàãàåìîé "äûðå" èñòîðèè.
      if (exact == true)
       {// Ðàñ÷¸ò âðåìåíè çàêðûòèÿ òåêóùåãî êâàðòàëüíîãî áàðà.
        iTimeH6_1 = iTimeH1;                                   // Âðåìÿ îòêðûòèÿ ïîñëåäíåãî â êâàðòàëå ÷àñîâîãî áàðà.
        // Âû÷èñëÿåì êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
        AmountBar = MathMod (NumberHour + 1, 6);               // Åñëè áàð ïîñëåäíèé â êâàðòàëå, òî êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ ðàâíî íóëþ.
        if (AmountBar > 0) AmountBar = 6 - AmountBar;          // Åñëè áàð íå ïîñëåäíèé â êâàðòàëå, ïðîäîëæàåì âû÷èñëþòü.
        for (j = 0; j <= AmountBar; j++) iTimeH6_1 += 3600;    // Ïðîèçâîäèì ïðèáàâëåíèå âðåìåíè äëÿ ðàñ÷¸òà âðåìÿ çàêðûòèÿ òåêóùåãî áàðà íà H6.
        // Ïðîâåðÿåì íà "äûðó" â èñòîðèè.
        if (iTimeH6_1 < time && time < iTimeH6_0) return (-1); // Âîçâðàùàåì -1 â ñëó÷àå îòñóòñòâèÿ áàðà.
       }
      // Ðàñ÷¸ò âðåìåíè îòêðûòèÿ òåêóùåãî êâàðòàëüíîãî áàðà.
      iTimeH6_0 = iTimeH1;                               // Âðåìÿ îòêðûòèÿ ïåðâîãî â èñòîðèè ÷àñîâîãî áàðà.
      // Âû÷èñëÿåì êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
      AmountBar = MathMod (NumberHour + 1, 6);           // Íîìåð ÷àñîâîãî áàðà â êâàðòàëå.
      if (AmountBar == 0) AmountBar = 5;                 // Åñëè áàð ïîñëåäíèé â êâàðòàëå, òî êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ ðàâíî äâóì.
      else AmountBar = AmountBar - 1;                    // Åñëè áàð íå ïîñëåäíèé â êâàðòàëå, ïðîäîëæàåì âû÷èñëþòü.
      for (j = 0; j < AmountBar; j++) iTimeH6_0 -= 3600; // Ïðîèçâîäèì âû÷èòàíèå âðåìåíè äëÿ ðàñ÷¸òà âðåìåíè îòêðûòèÿ òåêóùåãî áàðà íà H6.
      if (time >= iTimeH6_0) return (ShiftH6);           // Âîçâðàùàåì íîìåð òåêóùåãî áàðà íà H6.
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 3. Âðåìÿ îòêðûòèÿ ïî íîìåðó áàðà â ÒÔ H6.
datetime iTime_H6 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà
                   int    shift)  // Íîìåð áàðà.
 {
  bool     Switch_H1 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H2 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H3 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H4 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
  datetime iTimeH1;          // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  datetime iTimeH6;          // Âîçâðàùàåìîå çíà÷åíèå.
  int      AmountBar;        // Êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â ïåðâîì èëè ïîñëåäíåì êâàðòàëüíûõ áàðàõ.
  int      i, j;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH6 = iBars_H6 (symbol);         // Êîëè÷åñòâî áàðîâ â ÒÔ H6.
  int      NumberHour;                          // Íîìåð ÷àñà.
  int      ShiftH6;                             // Òåêóùèé íîìåð áàðà ÒÔ H6.
  //----
  if (0 > shift || shift >= iBarsH6) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {// Ðàñ÷¸ò ãîäà íà âèñîêîñíîñòü. Çàäà¸ì íà÷àëüíîå çíà÷åíèå.
    for (i = 0, ShiftH6 = -1; i < iBarsH1; i++)  // Öèêë ïî íîìåðàì ìåñÿ÷íûõ áàðîâ.
     {
      iTimeH1 = iTime (symbol, PERIOD_H1, i);    // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
      if (i > 0) // Íà ïåðâîé èòåðàöèè íå ïðîâåðÿì ñóòîê.
       {// Åñëè ñìåíèëèñü ñóòêè, èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ. Ìîæåò ïðèãîäèòüñÿ ïðè îòñóòñòâèè áàðîâ âíóòðè äíÿ è íåñêîëüêèõ äíåé ïîäðÿä (äûðû â èñòîðèè).
        if (MathMod (TimeDay (iTimeH1), TimeDay (iTime (symbol, PERIOD_H1, i - 1))) != 0)
         {
          Switch_H1 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
          Switch_H4 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
         }
       }
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      NumberHour = TimeHour (iTimeH1); // Íîìåð ÷àñà.
      switch (NumberHour)
       {//----×àñîâûå áàðû 4-ãî øåñòè÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 23:
        case 22:
        case 21:
        case 20:
        case 19:
        case 18:
         {
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H4 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H4 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî øåñòè÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 17:
        case 16:
        case 15:
        case 14:
        case 13:
        case 12:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H3 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H3 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî øåñòè÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 11:
        case 10:
        case  9:
        case  8:
        case  7:
        case  6:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H2 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H2 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî øåñòè÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H1 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H1 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
       }
      // Åñëè íàøëè íóæíûé áàð.
      if (shift == ShiftH6)
       {// Ðàñ÷¸ò âðåìåíè îòêðûòèÿ íàéäåííîãî êâàðòàëüíîãî áàðà.
        iTimeH6 = iTimeH1;                               // Âðåìÿ îòêðûòèÿ ïîñëåäíåãî â êâàðòàëå ÷àñîâîãî áàðà.
        // Âû÷èñëÿåì êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
        AmountBar = MathMod (NumberHour + 1, 6);         // Íîìåð ÷àñîâîãî áàðà â êâàðòàëå.
        if (AmountBar == 0) AmountBar = 5;               // Åñëè áàð ïîñëåäíèé â êâàðòàëå, òî êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ ðàâíî äâóì.
        else AmountBar = AmountBar - 1;                  // Åñëè áàð íå ïîñëåäíèé â êâàðòàëå, ïðîäîëæàåì âû÷èñëþòü.
        for (j = 0; j < AmountBar; j++) iTimeH6 -= 3600; // Ïðîèçâîäèì âû÷èòàíèå âðåìåíè. Âðåìÿ îòêðûòèÿ òåêóùåãî áàðà íà H6.
        return (iTimeH6);                                // Âîçâðàùàåì âðåìÿ îòêðûòèÿ êâàðòàëüíîãî áàðà.
       }
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 4. Öåíà îòêðûòèÿ âûáðàííîãî áàðà â ÒÔ H6.
double iOpen_H6 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.
                 int    shift)  // Íîìåð áàðà.
 {
  bool     Switch_H1 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H2 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H3 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H4 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
  datetime iTimeH1;          // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  int      i, j, k;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH6 = iBars_H6 (symbol);         // Êîëè÷åñòâî áàðîâ â ÒÔ H6.
  int      FirstH1;                             // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
  int      ShiftH6;                             // Òåêóùèé íîìåð áàðà ÒÔ H6.
  //----
  if (0 > shift || shift >= iBarsH6) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {
    for (i = 0, ShiftH6 = -1; i < iBarsH1; i++)  // Öèêë ïî íîìåðàì ìåñÿ÷íûõ áàðîâ.
     {
      iTimeH1 = iTime (symbol, PERIOD_H1, i);    // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
      if (i > 0) // Íà ïåðâîé èòåðàöèè íå ïðîâåðÿì ñóòîê.
       {// Åñëè ñìåíèëèñü ñóòêè, èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ. Ìîæåò ïðèãîäèòüñÿ ïðè îòñóòñòâèè áàðîâ âíóòðè äíÿ è íåñêîëüêèõ äíåé ïîäðÿä (äûðû â èñòîðèè).
        if (MathMod (TimeDay (iTimeH1), TimeDay (iTime (symbol, PERIOD_H1, i - 1))) != 0)
         {
          Switch_H1 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
          Switch_H4 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
         }
       }
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      switch (TimeHour (iTimeH1))
       {//----×àñîâûå áàðû 4-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 23:
        case 22:
        case 21:
        case 20:
        case 19:
        case 18:
         {
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H4 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 18;         // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H4 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 17:
        case 16:
        case 15:
        case 14:
        case 13:
        case 12:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H3 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 12;         // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H3 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 11:
        case 10:
        case  9:
        case  8:
        case  7:
        case  6:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H2 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 6;          // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H2 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H1 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 0;          // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H1 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       }
      if (shift == ShiftH6)                       // Åñëè íàøëè íóæíûé áàð.
       {
        for (i++, k = TimeDay (iTimeH1);; i++)    // Èùèì ïåðâûé ìåñÿ÷íûé áàð êâàðòàëüíîãî áàðà.
         {
          iTimeH1 = iTime (symbol, PERIOD_H1, i); // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
          // Äëÿ ïåðâîãî áàðà ïåðâîãî 6-è ÷àñîâîãî áàðà â ñóòêè îñîáûå óñëîâèÿ ïðîâåðêè íà÷àëà. Îñòàíàâëèâàåì öèêë, åñëè ñëåäóþùèé áàð íàõîäèòñÿ â äðóãèõ ñóòêàõ èëè ìåñÿöå. Âîçâðàùàåì öåíó îòêðûòèÿ 6-è ÷àñîâîãî áàðà.
          if (FirstH1 == 0) {if (TimeHour (iTimeH1) > 5 || TimeDay (iTimeH1) != k) return (iOpen (symbol, PERIOD_H1, i - 1));}
          else {if (TimeHour (iTimeH1) < FirstH1 || TimeDay (iTimeH1) != k) return (iOpen (symbol, PERIOD_H1, i - 1));}
         }
       }
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 5. Ìàêñèìàëüíàÿ öåíà âûáðàííîãî áàðà â ÒÔ H6.
double iHigh_H6 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.
                 int    shift)  // Íîìåð áàðà.
 {
  bool     Switch_H1 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H2 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H3 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H4 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
  datetime iTimeH1;          // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  datetime iTimeH1_1;        // Âðåìÿ îòêðûòèÿ ñëåäóþùåãî ÷àñîâîãî áàðà.
  int      i, l;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH6 = iBars_H6 (symbol);         // Êîëè÷åñòâî áàðîâ â ÒÔ H6.
  int      FirstH1;                             // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
  int      ShiftH6;                             // Òåêóùèé íîìåð áàðà ÒÔ H6.
  // Ìàññèâû.
  double   ArHighH1[6]; // Ìàññèâ ñ ìàêñèìàëüíûìè öåíàìè ìåñÿ÷íûõ áàðîâ â êâàðòàëüíîì áàðå.
  //----
  if (0 > shift || shift >= iBarsH6) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {
    for (i = 0, ShiftH6 = -1; i < iBarsH1; i++)  // Öèêë ïî íîìåðàì ìåñÿ÷íûõ áàðîâ.
     {
      iTimeH1 = iTime (symbol, PERIOD_H1, i);    // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
      if (i > 0) // Íà ïåðâîé èòåðàöèè íå ïðîâåðÿì ñóòîê.
       {// Åñëè ñìåíèëèñü ñóòêè, èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ. Ìîæåò ïðèãîäèòüñÿ ïðè îòñóòñòâèè áàðîâ âíóòðè äíÿ è íåñêîëüêèõ äíåé ïîäðÿä (äûðû â èñòîðèè).
        if (MathMod (TimeDay (iTimeH1), TimeDay (iTime (symbol, PERIOD_H1, i - 1))) != 0)
         {
          Switch_H1 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
          Switch_H4 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
         }
       }
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      switch (TimeHour (iTimeH1))
       {//----×àñîâûå áàðû 4-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 23:
        case 22:
        case 21:
        case 20:
        case 19:
        case 18:
         {
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H4 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 18;         // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H4 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 17:
        case 16:
        case 15:
        case 14:
        case 13:
        case 12:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H3 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 12;         // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H3 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 11:
        case 10:
        case  9:
        case  8:
        case  7:
        case  6:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H2 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 6;          // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H2 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H1 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 0;          // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H1 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       }
      if (shift == ShiftH6) // Åñëè íàøëè íóæíûé áàð.
       {
        for (l = 0; l < 6; i++, l++)   // Èùèì ïåðâûé ìåñÿ÷íûé áàð êâàðòàëüíîãî áàðà.
         {
          iTimeH1 = iTime (symbol, PERIOD_H1, i);             // Âðåìÿ îòêðûòèÿ òåêóùåãî ÷àñîâîãî áàðà.
          iTimeH1_1 = iTime (symbol, PERIOD_H1, i + 1);       // Âðåìÿ îòêðûòèÿ ñëåäóþùåãî ÷àñîâîãî áàðà.
          ArHighH1[l] = iHigh (symbol, PERIOD_H1, i);         // Ñêëàäûâàåì ìèíèìàëüíûå öåíû ìåñÿ÷íûûõ áàðîâ â òåõíè÷åñêèé ìàññèâ.
          // Äëÿ ïåðâîãî áàðà ïåðâîãî 6-è ÷àñîâîãî áàðà â ñóòêè îñîáûå óñëîâèÿ ïðîâåðêè íà÷àëà.
          if (FirstH1 == 0) {if (TimeHour (iTimeH1_1) > 5 || TimeDay (iTimeH1) != TimeDay (iTimeH1_1)) break;} // Îñòàíàâëèâàåì öèêë, åñëè ñëåäóþùèé áàð íàõîäèòñÿ â äðóãèõ ñóòêàõ èëè ìåñÿöå.
          else {if (TimeHour (iTimeH1_1) < FirstH1 || TimeDay (iTimeH1) != TimeDay (iTimeH1_1)) break;}        // Îñòàíàâëèâàåì öèêë, åñëè ñëåäóþùèé áàð íàõîäèòñÿ â äðóãèõ ñóòêàõ èëè ìåñÿöå.
         }
        return (ArHighH1[ArrayMinimum (ArHighH1, l + 1, 0)]); // Âîçâðàùàåì ìèíèìàëüíóþ öåíó êâàðòàëüíîãî áàðà.
       }
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 6. Ìèíèìàëüíàÿ öåíà âûáðàííîãî áàðà â ÒÔ H6.
double iLow_H6 (string symbol, // Ââàëþòíàÿ ïàðà.
                int    shift)  // Íîìåð áàðà.
 {
  bool     Switch_H1 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H2 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H3 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H4 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
  datetime iTimeH1;          // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  datetime iTimeH1_1;        // Âðåìÿ îòêðûòèÿ ñëåäóþùåãî ÷àñîâîãî áàðà.
  int      i, l;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH6 = iBars_H6 (symbol);         // Êîëè÷åñòâî áàðîâ â ÒÔ H6.
  int      FirstH1;                             // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
  int      ShiftH6;                             // Òåêóùèé íîìåð áàðà ÒÔ H6.
  // Ìàññèâû.
  double   ArLowH1[6]; // Ìàññèâ ñ ìàèíèìàëüíûìè öåíàìè ÷àñîâûõ áàðîâ â 6-è ÷àñîâîì áàðå.
  //----
  if (0 > shift || shift >= iBarsH6) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {
    for (i = 0, ShiftH6 = -1; i < iBarsH1; i++)  // Öèêë ïî íîìåðàì ìåñÿ÷íûõ áàðîâ.
     {
      iTimeH1 = iTime (symbol, PERIOD_H1, i);    // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
      if (i > 0) // Íà ïåðâîé èòåðàöèè íå ïðîâåðÿì ñóòîê.
       {// Åñëè ñìåíèëèñü ñóòêè, èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ. Ìîæåò ïðèãîäèòüñÿ ïðè îòñóòñòâèè áàðîâ âíóòðè äíÿ è íåñêîëüêèõ äíåé ïîäðÿä (äûðû â èñòîðèè).
        if (MathMod (TimeDay (iTimeH1), TimeDay (iTime (symbol, PERIOD_H1, i - 1))) != 0)
         {
          Switch_H1 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
          Switch_H4 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
         }
       }
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      switch (TimeHour (iTimeH1))
       {//----×àñîâûå áàðû 4-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 23:
        case 22:
        case 21:
        case 20:
        case 19:
        case 18:
         {
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H4 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 18;         // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H4 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 17:
        case 16:
        case 15:
        case 14:
        case 13:
        case 12:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H3 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 12;         // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H3 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 11:
        case 10:
        case  9:
        case  8:
        case  7:
        case  6:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H2 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 6;          // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H2 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:
         {
          Switch_H4 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;       // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H1 == true)  // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH6++;            // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 0;          // Íîìåð ïåðâîãî ÷àñà â 6-è ÷àñîâîì áàðå.
            Switch_H1 = false;    // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;          // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //--------------------------------------------------------------------------------------------------------------------------------------------------
       }
      if (shift == ShiftH6) // Åñëè íàøëè íóæíûé áàð.
       {
        for (l = 0; l < 6; i++, l++)  // Èùèì ïåðâûé ìåñÿ÷íûé áàð êâàðòàëüíîãî áàðà.
         {
          iTimeH1 = iTime (symbol, PERIOD_H1, i);           // Âðåìÿ îòêðûòèÿ òåêóùåãî ÷àñîâîãî áàðà.
          iTimeH1_1 = iTime (symbol, PERIOD_H1, i + 1);     // Âðåìÿ îòêðûòèÿ ñëåäóþùåãî ÷àñîâîãî áàðà.
          ArLowH1[l] = iLow (symbol, PERIOD_H1, i);         // Ñêëàäûâàåì ìèíèìàëüíûå öåíû ìåñÿ÷íûûõ áàðîâ â òåõíè÷åñêèé ìàññèâ.
          // Äëÿ ïåðâîãî áàðà ïåðâîãî 6-è ÷àñîâîãî áàðà â ñóòêè îñîáûå óñëîâèÿ ïðîâåðêè íà÷àëà.
          if (FirstH1 == 0) {if (TimeHour (iTimeH1_1) > 5 || TimeDay (iTimeH1) != TimeDay (iTimeH1_1)) break;} // Îñòàíàâëèâàåì öèêë, åñëè ñëåäóþùèé áàð íàõîäèòñÿ â äðóãèõ ñóòêàõ èëè ìåñÿöå.
          else {if (TimeHour (iTimeH1_1) < FirstH1 || TimeDay (iTimeH1) != TimeDay (iTimeH1_1)) break;}        // Îñòàíàâëèâàåì öèêë, åñëè ñëåäóþùèé áàð íàõîäèòñÿ â äðóãèõ ñóòêàõ èëè ìåñÿöå.
         }
        return (ArLowH1[ArrayMinimum (ArLowH1, l + 1, 0)]); // Âîçâðàùàåì ìèíèìàëüíóþ öåíó êâàðòàëüíîãî áàðà.
       }
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 7. Öåíà çàêðûòèÿ âûáðàííîãî áàðà â ÒÔ H6.
double iClose_H6 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.
                  int    shift)  // Íîìåð áàðà.
 {
  bool     Switch_H1 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H2 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H3 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
  bool     Switch_H4 = true; // Âûêëþ÷àòåëü ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
  datetime iTimeH1;         // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  int      i;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH6 = iBars_H6 (symbol);         // Êîëè÷åñòâî áàðîâ èëè íîìåð áàðà â ÒÔ H6.
  // Ïðîâåðêà íà íåêîððåêòíîå çíà÷åíèå íàìåðà áàðà.
  if (0 > shift || shift >= iBarsH6) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {
    iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
    for (i = 0, iBarsH6 = -1; i < iBarsH1; i++)
     {
      iTimeH1 = iTime (symbol, PERIOD_H1, i); // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
      if (i > 0) // Íà ïåðâîé èòåðàöèè íå ïðîâåðÿì ñóòîê.
       {// Åñëè ñìåíèëèñü ñóòêè, èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ. Ìîæåò ïðèãîäèòüñÿ ïðè îòñóòñòâèè áàðîâ âíóòðè äíÿ è íåñêîëüêèõ äíåé ïîäðÿä (äûðû â èñòîðèè).
        if (MathMod (TimeDay (iTimeH1), TimeDay (iTime (symbol, PERIOD_H1, i - 1))) != 0)
         {
          Switch_H1 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ïåðâîãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ âòîðîãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ òðåòüîãî øåñòè÷àñîâîãî áàðà.
          Switch_H4 = true; // Èíèöèàëèçèðóåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ ÷åòâ¸ðòîãî øåñòè÷àñîâîãî áàðà.
         }
       }
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      switch (TimeHour (iTimeH1))
       {//----×àñîâûå áàðû 4-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 23:
        case 22:
        case 21:
        case 20:
        case 19:
        case 18:
         {
          Switch_H3 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H4 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H4 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 17:
        case 16:
        case 15:
        case 14:
        case 13:
        case 12:
         {
          Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H3 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H3 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 11:
        case 10:
        case  9:
        case  8:
        case  7:
        case  6:
         {
          Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H1 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 1-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H2 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H2 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî øåñòè÷àñîâîãî áàðà.---------------------------------------------------------------------------------------------------------
        case 5:
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:
         {
          Switch_H4 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 4-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H3 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 3-ãî øåñòè÷àñîâîãî áàðà.
          Switch_H2 = true;      // Ðàçðåøàåì ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ äëÿ 2-ãî øåñòè÷àñîâîãî áàðà.
          if (Switch_H1 == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH6++;           // Ñ÷èòàåì êâàðòàëüíûé áàð.
            Switch_H1 = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;               // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;         // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //--------------------------------------------------------------------------------------------------------------------------------------------------
       }
      if (shift == iBarsH6) return (iClose (symbol, PERIOD_H1, i)); // Åñëè íàøëè íóæíûé áàð. Âîçâðàùàåì âðåìÿ çàêðûòèÿ ÷àñîâîãî áàðà.
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 8. Âîçâðàùàåò òåêóùèé íîìåð øåñòè÷àñîâîãî áàðà â ñóòêàõ ïîñëåäíåãî èçâåñòíîãî ñåðâåðíîãî âðåìåíè.
int Hour6()
 {
  switch (Hour())
   {
    case  0:
    case  1:
    case  2:
    case  3:
    case  4:
    case  5: return  (1);
    case  6:
    case  7:
    case  8:
    case  9:
    case 10:
    case 11: return  (2);
    case 12:
    case 13:
    case 14:
    case 15:
    case 16:
    case 17: return  (3);
    case 18:
    case 19:
    case 20:
    case 21:
    case 22:
    case 23: return  (4);
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 8. Âîçâðàùàåò òåêóùèé íîìåð øåñòè÷àñîâîãî áàðà â ñóòêàõ ïîñëåäíåãî èçâåñòíîãî ñåðâåðíîãî âðåìåíè.
int TimeHour6 (datetime time)
 {
  switch (TimeHour (time)) // Äàòà, ïðåäñòàâëåííàÿ â âèäå êîëè÷åñòâà ñåêóíä, ïðîøåäøèõ ïîñëå 00:00 1 ÿíâàðÿ 1970 ãîäà.
   {
    case  0:
    case  1:
    case  2:
    case  3:
    case  4:
    case  5: return  (1);
    case  6:
    case  7:
    case  8:
    case  9:
    case 10:
    case 11: return  (2);
    case 12:
    case 13:
    case 14:
    case 15:
    case 16:
    case 17: return  (3);
    case 18:
    case 19:
    case 20:
    case 21:
    case 22:
    case 23: return  (4);
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ





Sample





Analysis



Market Information Used:



Indicator Curves created:


Indicators Used:



Custom Indicators Used:

Order Management characteristics:

Other Features: