ZH_StandardFunctionsTfH2.lib

Download script
Author: Copyright � 2006 Zhunko
ZH_StandardFunctionsTfH2.lib

This script is a specialized utility library designed for the MetaTrader 4 platform. Its primary purpose is to allow traders and automated systems to interact with a custom time frame called H2 (the 2-hour period), which is not a standard default timeframe provided by the software.

Here is a breakdown of how the logic works in plain English:

Core Purpose

Standard trading charts usually show data in increments like 1 hour, 4 hours, or daily. This script creates a "virtual" 2-hour timeframe. It allows the platform to identify, navigate, and extract specific price data (like the opening price, the highest peak, the lowest dip, or the closing price) for any given 2-hour window in historical data.

How it Works Internally

To achieve this, the script performs several complex background operations:

  • Data Reconstruction: Since the platform doesn't "see" 2-hour bars natively, the script scans the standard 1-hour price history. It groups these hourly pieces together into blocks of two.
  • Chronological Mapping: It maps out the entire history to determine exactly how many 2-hour bars exist. This is essential for "jumping" back in time to a specific date or time to see what happened during that specific 2-hour window.
  • Smart Identification: The logic includes a system to handle "gaps" in data (such as weekends or holidays). It ensures that if the market was closed, the script doesn't get confused and miscount the hours.
  • Precise Data Extraction: When you ask for a specific piece of information—for example, "What was the highest price during the 2-hour bar that started at 10:00 AM?"—the script:
    1. Locates the correct 2-hour block.
    2. Looks at the hourly data inside that block.
    3. Identifies the highest point reached across those two hours.
    4. Returns that specific price to you instantly.

Key Features Provided

  • Time Navigation: You can provide a specific date and time, and the script will find the corresponding 2-hour bar for you.
  • Price Retrieval: It provides dedicated tools to grab the Open, High, Low, and Close prices for any 2-hour period.
  • Current Status: It can instantly tell you which 2-hour block of the day we are currently in (e.g., "We are currently in the 5th two-hour block of the day").

Summary for Users

Think of this script as a translator. You want to see 2-hour market movements, but the platform only speaks in hours. This script sits in the middle, constantly translating the hourly data into 2-hour blocks so that you can analyze, backtest, or automate trades based on this specific timeframe with high precision.

13 Views
0 Downloads
0 Favorites
ZH_StandardFunctionsTfH2.lib
//+-----------------------------------------------------------------------------------------------------------------------------+
//|                                                                                             ZH_StandardFunctionsTfH2.lib.mq4|
//|                                                                                             Copyright © Zhunko              |
//|09.10.2009 - 12.10.2009                                                                      ÌF ZHUNKO vadim@zhunko.ru       |
//+-----------------------------------------------------------------------------------------------------------------------------+
//| Íàáîð ñòàíäàðòíûõ ôóíêöèé äëÿ ÒÔ H2.                                                                                        |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|1.Êîëè÷åñòâî áàðîâ â ÒÔ H2.                                                                                                  |
//|  int iBars_H2 (string symbol); // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                               |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|2.Íîìåð áàðà ïî âðåìåíè â ÒÔ H2.                                                                                             |
//|  int iBarShift_H2 (string   symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                          |
//|                    datetime time,   // Çíà÷åíèå âðåìåíè äëÿ ïîèñêà.                                                         |
//|                    bool     exact)  // Âîçâðàùàåìîå çíà÷åíèå åñëè áàð íå íàéäåí                                             |
//|                                     // (FALSE - iBarShift âîçâðàùàåò áëèæàéøèé/TRUE - iBarShift âîçâðàùàåò -1).             |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|3.Âðåìÿ îòêðûòèÿ ïî íîìåðó áàðà â ÒÔ H2.                                                                                     |
//|  datetime iTime_H2 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà                                                            |
//|                     int    shift)  // Íîìåð áàðà.                                                                           |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|4.Öåíà îòêðûòèÿ âûáðàííîãî áàðà â ÒÔ H2.                                                                                     |
//|  double iOpen_H2 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                             |
//|                   int    shift)  // Íîìåð áàðà.                                                                             |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|5.Ìàêñèìàëüíàÿ öåíà âûáðàííîãî áàðà â ÒÔ H2.                                                                                 |
//|  double iHigh_H2 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                             |
//|                   int    shift)  // Íîìåð áàðà.                                                                             |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|6.Ìèíèìàëüíàÿ öåíà âûáðàííîãî áàðà â ÒÔ H2.                                                                                  |
//|  double iLow_H2 (string symbol, // Ââàëþòíàÿ ïàðà.                                                                          |
//|                  int    shift)  // Íîìåð áàðà.                                                                              |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|7.Öåíà çàêðûòèÿ âûáðàííîãî áàðà â ÒÔ H2.                                                                                     |
//|  double iClose_H2 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.                                                            |
//|                    int    shift)  // Íîìåð áàðà.                                                                            |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|8. Âîçâðàùàåò òåêóùèé íîìåð äâóõ÷àñîâîãî áàðà â ñóòêàõ ïîñëåäíåãî èçâåñòíîãî ñåðâåðíîãî âðåìåíè.                             |
//|   int Hour2()                                                                                                               |
//+-----------------------------------------------------------------------------------------------------------------------------+
//|9. Âîçâðàùàåò íîìåð äâóõ÷àñîâîãî áàðà â ñóòêàõ äëÿ óêàçàííîãî âðåìåíè.                                                       |
//|   int TimeHour2 (datetime time) // Äàòà, ïðåäñòàâëåííàÿ â âèäå êîëè÷åñòâà ñåêóíä, ïðîøåäøèõ ïîñëå 00:00 1 ÿíâàðÿ 1970 ãîäà. |
//+-----------------------------------------------------------------------------------------------------------------------------+
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
#property copyright "Copyright © 2006 Zhunko"
#property link      "vadim@zhunko.ru"
#property library
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 1. Êîëè÷åñòâî áàðîâ â ÒÔ H2.
int iBars_H2 (string symbol) // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.
 {
  datetime iTimeH1;          // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  int      i, j;
  int      iBarsH1;          // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH2;          // Êîëè÷åñòâî áàðîâ â ÒÔ H2.
  // Ìàññèâû.
  bool     ArSwitch[12];     // Âûêëþ÷àòåëè ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ.
  //----
  ArrayInitialize (ArSwitch, true);
  iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  for (i = 0, iBarsH2 = 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) ArrayInitialize (ArSwitch, true);
    // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
    switch (TimeHour (iTimeH1))
     {//----×àñîâûå áàðû 12-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
      case 23:
      case 22:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 11) ArSwitch[j] = true;
        if (ArSwitch[11] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[11] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 11-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
      case 21:
      case 20:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 10) ArSwitch[j] = true;
        if (ArSwitch[10] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[10] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 10-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
      case 19:
      case 18:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 9) ArSwitch[j] = true;
        if (ArSwitch[9] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[9] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 9-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case 17:
      case 16:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 8) ArSwitch[j] = true;
        if (ArSwitch[8] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[8] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 8-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case 15:
      case 14:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 7) ArSwitch[j] = true;
        if (ArSwitch[7] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[7] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 7-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case 13:
      case 12:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 6) ArSwitch[j] = true;
        if (ArSwitch[6] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[6] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 6-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case 11:
      case 10:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 5) ArSwitch[j] = true;
        if (ArSwitch[5] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[5] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 5-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case  9:
      case  8:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 4) ArSwitch[j] = true;
        if (ArSwitch[4] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[4] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 4-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case  7:
      case  6:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 3) ArSwitch[j] = true;
        if (ArSwitch[3] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[3] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 3-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case 5:
      case 4:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 2) ArSwitch[j] = true;
        if (ArSwitch[2] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[2] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 2-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case 3:
      case 2:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 1) ArSwitch[j] = true;
        if (ArSwitch[1] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[1] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
      //----×àñîâûå áàðû 1-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
      case 1:
      case 0:
       {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
        for (j = 0; j < 12; j++) if (j != 0) ArSwitch[j] = true;
        if (ArSwitch[0] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
         {
          iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
          ArSwitch[0] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
          break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
         }
        else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
       }
     }
   }
  return (iBarsH2);
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 2. Íîìåð áàðà ïî âðåìåíè â ÒÔ H2.
int iBarShift_H2 (string   symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.
                  datetime time,   // Çíà÷åíèå âðåìåíè äëÿ ïîèñêà.
                  bool     exact)  // Âîçâðàùàåìîå çíà÷åíèå åñëè áàð íå íàéäåí (FALSE - iBarShift âîçâðàùàåò áëèæàéøèé/TRUE - iBarShift âîçâðàùàåò -1).
 {
  datetime TimeFirst_H2;     // Âðåìÿ çàêðûòèÿ ïåðâãî áàðà H2 â èñòîðèè. Áàð íà÷àëà èñòîðèè ïàðû.
  datetime TimeLast_H2;      // Âðåìÿ îòêðûòèÿ ïîñëåäíåãî áàðà H2 â èñòîðèè.
  datetime iTimeH1;          // Âðåìÿ îòêðûòèÿ òåêóùåãî áàðà íà H1.
  datetime iTimeH2_0;        // Âðåìÿ îòêðûòèÿ òåêóùåãî áàðà íà H2.
  datetime iTimeH2_1;        // Âðåìÿ îòêðûòèÿ ïðåäûäóùåãî áàðà íà H2.
  int      AmountBar;        // Êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â ïåðâîì èëè ïîñëåäíåì êâàðòàëüíûõ áàðàõ.
  int      i, j;
  int      ShiftH2 = 0;      // Âîçâðàùàåìîå çíà÷åíèå ñìåùåíèÿ áàðà â ÒÔ H2.
  int      iBarsH1;          // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      NumberHour;       // Íîìåð ÷àñà.
  // Ìàññèâû.
  bool     ArSwitch[12];     // Âûêëþ÷àòåëè ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ.
  //----
  ArrayInitialize (ArSwitch, true);
  //====Ïîäãîòîâêà äàííûõ.================================================================================================================================================================================================================
  iBarsH1 = iBars (symbol, PERIOD_H1);                    // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  //====Ðàñ÷¸ò âðåìåíè çàêðûòèÿ ïåðâîãî êâàðòàëüíîãî áàðà â èñòîðèè. Êâàðòàë íà÷àëà èñòîðèè ïàðû.==========================================================================================================================================
  TimeFirst_H2 = iTime (symbol, PERIOD_H1, iBarsH1 - 1);  // Âðåìÿ îòêðûòèÿ ïåðâîãî â èñòîðèè ÷àñîâîãî áàðà.
  NumberHour = TimeHour (TimeFirst_H2) + 1;               // Íîìåð ÷àñà ÎÒ 1 äî 24.
  // Âû÷èñëÿåì êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
  if (MathMod (NumberHour, 2) == 0) TimeFirst_H2 += 3600; // Åñëè áàð ïîñëåäíèé â áàðå H2, ïðîèçâîäèì ïðèáàâëåíèå 1-ãî áàðà.
  else TimeFirst_H2 += 7200;                              // Åñëè áàð ïåðâûé â áàðå H2, ïðîèçâîäèì ïðèáàâëåíèå 2-õ áàðîâ.
  //====Ðàñ÷¸ò âðåìåíè îòêðûòèÿ ïîñëåäíåãî êâàðòàëüíîãî áàðà â èñòîðèè.===================================================================================================================================================================
  TimeLast_H2 = iTime (symbol, PERIOD_H1, 0);             // Âðåìÿ îòêðûòèÿ ïîñëåäíåãî â èñòîðèè ÷àñîâîãî áàðà.
  NumberHour = TimeHour (TimeLast_H2) + 1;                // Íîìåð ÷àñà ÎÒ 1 äî 24.
  // Âû÷èñëÿåì êîëè÷åñòâî óáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
  if (MathMod (NumberHour, 2) == 0) TimeFirst_H2 -= 3600; // Åñëè áàð ïîñëåäíèé â áàðå H2, ïðîèçâîäèì óáàâëåíèå 1-ãî áàðà.
  //----Äèàãíîñòèêà.----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
//  Comment ("TimeFirst_H2 = ", TimeToStr (TimeFirst_H2, TIME_DATE|TIME_MINUTES|TIME_SECONDS), "\nLastQuarter = ", TimeToStr (TimeLast_H2, TIME_DATE|TIME_MINUTES|TIME_SECONDS));
  //======================================================================================================================================================================================================================================
  if (time < TimeFirst_H2 || time >= TimeLast_H2)              // Äëÿ ýêîíîìèè âðåìåíè íà öèêëàõ, ïðè âûáðàííîì âðåìåíè ñî çíà÷åíèåì ìåíüøåì âðåìåíè íà÷àëà èñòîðèè èëè áîëüøåì òåêóùîãî äâóõ÷àñîâîãî áàðà. 
   {
    if (exact == true) return (-1);                            // Åñëè ïåðåêëþ÷àòåëü ðàçðåøàåò, òî âîçâðàùàåì -1 â ñëó÷àå îòñóòñòâèÿ áàðà.
    else                                                       // Åñëè ïåðåêëþ÷àòåëü çàïðåùàåò, òî âîçâðàùàåì áëèæàéøèé ïî õîäó öèêëà (ïðåäûäóùèé) áàð.
     {
      if (time < TimeFirst_H2) return (iBars_H2 (symbol) - 1); // Åñëè çàäàííîå çíà÷åíèå âðåìåíè äëÿ ïîèñêà ìåíüøå âðåìåíè íà÷àëà èñòîðèè, ñ÷èòàåì êîëè÷åñòâî áàðîâ.
      if (time > TimeLast_H2) return (0);                      // Åñëè çàäàííîå çíà÷åíèå âðåìåíè äëÿ ïîèñêà áîëüøå âðåìåíè êîíöà èñòîðèè, âîçðàùàåì ïîñëåäíèé áàð.
     }
   }
  else                                                      // Åñëè çàäàííîå çíà÷åíèå âðåìåíè ñîîòâåòñòâóåò ñóùåñòâóþùåé èñòîðèè.
   {// Âðåìÿ çàêðûòèÿ íóëåâîãî áàðà ÒÔ H2.
    iTimeH2_0 = iTime (symbol, PERIOD_H1, 0);               // Âðåìÿ îòêðûòèÿ ïåðâîãî â èñòîðèè ÷àñîâîãî áàðà.
    NumberHour = TimeHour (iTimeH2_0) + 1;                  // Íîìåð ÷àñà.
    if (MathMod (NumberHour, 2) == 0) TimeFirst_H2 += 3600; // Åñëè áàð ïîñëåäíèé â áàðå H2, ïðîèçâîäèì ïðèáàâëåíèå 1-ãî áàðà.
    else TimeFirst_H2 += 7200;                              // Åñëè áàð ïåðâûé â áàðå H2, ïðîèçâîäèì ïðèáàâëåíèå 2-õ áàðîâ.
    for (i = 0, ShiftH2 = -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) ArrayInitialize (ArSwitch, true);
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      NumberHour = TimeHour (iTimeH1); // Íîìåð ÷àñà.
      switch (NumberHour)
       {//----×àñîâûå áàðû 12-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 23:
        case 22:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 11) ArSwitch[j] = true;
          if (ArSwitch[11] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[11] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 11-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 21:
        case 20:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 10) ArSwitch[j] = true;
          if (ArSwitch[10] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[10] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 10-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 19:
        case 18:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 9) ArSwitch[j] = true;
          if (ArSwitch[9] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[9] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 9-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 17:
        case 16:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 8) ArSwitch[j] = true;
          if (ArSwitch[8] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[8] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 8-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 15:
        case 14:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 7) ArSwitch[j] = true;
          if (ArSwitch[7] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[7] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 7-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 13:
        case 12:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 6) ArSwitch[j] = true;
          if (ArSwitch[6] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[6] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 6-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 11:
        case 10:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 5) ArSwitch[j] = true;
          if (ArSwitch[5] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[5] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 5-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  9:
        case  8:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 4) ArSwitch[j] = true;
          if (ArSwitch[4] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[4] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 4-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  7:
        case  6:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 3) ArSwitch[j] = true;
          if (ArSwitch[3] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[3] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 5:
        case 4:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 2) ArSwitch[j] = true;
          if (ArSwitch[2] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[2] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 3:
        case 2:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 1) ArSwitch[j] = true;
          if (ArSwitch[1] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[1] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 1:
        case 0:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 0) ArSwitch[j] = true;
          if (ArSwitch[0] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[0] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         } 
       }
      // Åñëè ïåðåêëþ÷àòåëü ðàçðåøàåò, òî ïðîèçâîäèì ïîèñê âðåìåíè â ïðåäïîëàãàåìîé "äûðå" èñòîðèè.
      if (exact == true)
       {// Ðàñ÷¸ò âðåìåíè çàêðûòèÿ òåêóùåãî êâàðòàëüíîãî áàðà.
        iTimeH2_1 = iTimeH1;                                        // Âðåìÿ îòêðûòèÿ ïîñëåäíåãî â êâàðòàëå ÷àñîâîãî áàðà.
        // Âû÷èñëÿåì êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
        if (MathMod (NumberHour + 1, 2) == 0) TimeFirst_H2 += 3600; // Åñëè áàð ïîñëåäíèé â áàðå H2, ïðîèçâîäèì ïðèáàâëåíèå 1-ãî áàðà.
        else TimeFirst_H2 += 7200;                                  // Åñëè áàð ïåðâûé â áàðå H2, ïðîèçâîäèì ïðèáàâëåíèå 2-õ áàðîâ.
        // Ïðîâåðÿåì íà "äûðó" â èñòîðèè.
        if (iTimeH2_1 < time && time < iTimeH2_0) return (-1);      // Âîçâðàùàåì -1 â ñëó÷àå îòñóòñòâèÿ áàðà.
       }
      // Ðàñ÷¸ò âðåìåíè îòêðûòèÿ òåêóùåãî êâàðòàëüíîãî áàðà.
      iTimeH2_0 = iTimeH1;                                          // Âðåìÿ îòêðûòèÿ ïåðâîãî â èñòîðèè ÷àñîâîãî áàðà.
      // Âû÷èñëÿåì êîëè÷åñòâî óáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
      if (MathMod (NumberHour + 1, 2) == 0) TimeFirst_H2 -= 3600;   // Åñëè áàð ïîñëåäíèé â áàðå H2, ïðîèçâîäèì óáàâëåíèå 1-ãî áàðà.
      else TimeFirst_H2 += 7200;                                    // Åñëè áàð ïåðâûé â áàðå H2, ïðîèçâîäèì ïðèáàâëåíèå 2-õ áàðîâ.
      if (time >= iTimeH2_0) return (ShiftH2);           // Âîçâðàùàåì íîìåð òåêóùåãî áàðà íà H2.
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 3. Âðåìÿ îòêðûòèÿ ïî íîìåðó áàðà â ÒÔ H2.
datetime iTime_H2 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà
                   int    shift)  // Íîìåð áàðà.
 {
  datetime iTimeH1;   // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  int      AmountBar; // Êîëè÷åñòâî äîáàâëÿåìûõ áàðîâ â ïåðâîì èëè ïîñëåäíåì êâàðòàëüíûõ áàðàõ.
  int      i, j;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH2 = iBars_H2 (symbol);         // Êîëè÷åñòâî áàðîâ â ÒÔ H2.
  int      NumberHour;                          // Íîìåð ÷àñà.
  int      ShiftH2;                             // Òåêóùèé íîìåð áàðà ÒÔ H2.
  // Ìàññèâû.
  bool     ArSwitch[12];     // Âûêëþ÷àòåëè ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ.
  //----
  ArrayInitialize (ArSwitch, true);
  //----
  if (0 > shift || shift >= iBarsH2) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {// Ðàñ÷¸ò ãîäà íà âèñîêîñíîñòü. Çàäà¸ì íà÷àëüíîå çíà÷åíèå.
    for (i = 0, ShiftH2 = -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) ArrayInitialize (ArSwitch, true);
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      NumberHour = TimeHour (iTimeH1); // Íîìåð ÷àñà.
      switch (NumberHour)
       {//----×àñîâûå áàðû 12-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 23:
        case 22:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 11) ArSwitch[j] = true;
          if (ArSwitch[11] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[11] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 11-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 21:
        case 20:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 10) ArSwitch[j] = true;
          if (ArSwitch[10] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[10] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 10-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 19:
        case 18:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 9) ArSwitch[j] = true;
          if (ArSwitch[9] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[9] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 9-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 17:
        case 16:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 8) ArSwitch[j] = true;
          if (ArSwitch[8] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[8] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 8-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 15:
        case 14:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 7) ArSwitch[j] = true;
          if (ArSwitch[7] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[7] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 7-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 13:
        case 12:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 6) ArSwitch[j] = true;
          if (ArSwitch[6] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[6] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 6-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 11:
        case 10:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 5) ArSwitch[j] = true;
          if (ArSwitch[5] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[5] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 5-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  9:
        case  8:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 4) ArSwitch[j] = true;
          if (ArSwitch[4] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[4] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 4-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  7:
        case  6:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 3) ArSwitch[j] = true;
          if (ArSwitch[3] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[3] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 5:
        case 4:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 2) ArSwitch[j] = true;
          if (ArSwitch[2] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[2] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 3:
        case 2:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 1) ArSwitch[j] = true;
          if (ArSwitch[1] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[1] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 1:
        case 0:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 0) ArSwitch[j] = true;
          if (ArSwitch[0] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[0] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
       }
      // Åñëè íàøëè íóæíûé áàð.
      if (shift == ShiftH2)
       {// Âû÷èñëÿåì êîëè÷åñòâî óáàâëÿåìûõ áàðîâ â êâàðòàëüíîì áàðå.
        if (MathMod (NumberHour + 1, 2) == 0) return (iTimeH1 - 3600); // Åñëè áàð ïîñëåäíèé â áàðå H2, ïðîèçâîäèì óáàâëåíèå 1-ãî áàðà.
        else return (iTimeH1);                                         // Âîçâðàùàåì âðåìÿ îòêðûòèÿ ïåðâîãî áàðà.
       }
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 4. Öåíà îòêðûòèÿ âûáðàííîãî áàðà â ÒÔ H2.
double iOpen_H2 (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      iBarsH2 = iBars_H2 (symbol);         // Êîëè÷åñòâî áàðîâ â ÒÔ H2.
  int      FirstH1;                             // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
  int      ShiftH2;                             // Òåêóùèé íîìåð áàðà ÒÔ H2.
  // Ìàññèâû.
  bool     ArSwitch[12];     // Âûêëþ÷àòåëè ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ.
  //----
  ArrayInitialize (ArSwitch, true);
  //----
  if (0 > shift || shift >= iBarsH2) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {
    for (i = 0, ShiftH2 = -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) ArrayInitialize (ArSwitch, true);
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      switch (TimeHour (iTimeH1))
       {//----×àñîâûå áàðû 12-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 23:
        case 22:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 11) ArSwitch[j] = true;
          if (ArSwitch[11] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 22;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[11] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 11-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 21:
        case 20:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 10) ArSwitch[j] = true;
          if (ArSwitch[10] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 20;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[10] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 10-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 19:
        case 18:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 9) ArSwitch[j] = true;
          if (ArSwitch[9] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 18;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[9] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 9-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 17:
        case 16:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 8) ArSwitch[j] = true;
          if (ArSwitch[8] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 16;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[8] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 8-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 15:
        case 14:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 7) ArSwitch[j] = true;
          if (ArSwitch[7] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 14;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[7] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 7-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 13:
        case 12:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 6) ArSwitch[j] = true;
          if (ArSwitch[6] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 12;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[6] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 6-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 11:
        case 10:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 5) ArSwitch[j] = true;
          if (ArSwitch[5] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 10;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[5] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 5-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  9:
        case  8:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 4) ArSwitch[j] = true;
          if (ArSwitch[4] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 8;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[4] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 4-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  7:
        case  6:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 3) ArSwitch[j] = true;
          if (ArSwitch[3] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 6;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[3] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 5:
        case 4:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 2) ArSwitch[j] = true;
          if (ArSwitch[2] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 4;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[2] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 3:
        case 2:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 1) ArSwitch[j] = true;
          if (ArSwitch[1] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 2;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[1] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 1:
        case 0:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 0) ArSwitch[j] = true;
          if (ArSwitch[0] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 0;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[0] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         } 
       }
      //------------------------------------------------------------------------------------------------------------------------------------
      if (shift == ShiftH2) // Åñëè íàøëè íóæíûé áàð.
       {
        for (i++, k = TimeDay (iTimeH1);; i++) // Èùèì ïåðâûé ìåñÿ÷íûé áàð êâàðòàëüíîãî áàðà.
         {
          iTimeH1 = iTime (symbol, PERIOD_H1, i);    // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
          // Äëÿ ïåðâîãî áàðà ïåðâîãî 2-õ ÷àñîâîãî áàðà â ñóòêè îñîáûå óñëîâèÿ ïðîâåðêè íà÷àëà. Îñòàíàâëèâàåì öèêë, åñëè ñëåäóþùèé áàð íàõîäèòñÿ â äðóãèõ ñóòêàõ èëè ìåñÿöå. Âîçâðàùàåì öåíó îòêðûòèÿ 6-è ÷àñîâîãî áàðà.
          if (FirstH1 == 0) {if (TimeHour (iTimeH1) > 1 || 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. Ìàêñèìàëüíàÿ öåíà âûáðàííîãî áàðà â ÒÔ H2.
double iHigh_H2 (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, j, k, l;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH2 = iBars_H2 (symbol);         // Êîëè÷åñòâî áàðîâ â ÒÔ H2.
  int      FirstH1;                             // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
  int      ShiftH2;                             // Òåêóùèé íîìåð áàðà ÒÔ H2.
  // Ìàññèâû.
  bool     ArSwitch[12]; // Âûêëþ÷àòåëè ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ.
  //----
  ArrayInitialize (ArSwitch, true);
  //----
  if (0 > shift || shift >= iBarsH2) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {
    for (i = 0, ShiftH2 = -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) ArrayInitialize (ArSwitch, true);
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      switch (TimeHour (iTimeH1))
       {//----×àñîâûå áàðû 12-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 23:
        case 22:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 11) ArSwitch[j] = true;
          if (ArSwitch[11] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 22;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[11] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 11-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 21:
        case 20:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 10) ArSwitch[j] = true;
          if (ArSwitch[10] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 20;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[10] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 10-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 19:
        case 18:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 9) ArSwitch[j] = true;
          if (ArSwitch[9] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 18;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[9] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 9-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 17:
        case 16:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 8) ArSwitch[j] = true;
          if (ArSwitch[8] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 16;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[8] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 8-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 15:
        case 14:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 7) ArSwitch[j] = true;
          if (ArSwitch[7] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 14;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[7] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 7-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 13:
        case 12:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 6) ArSwitch[j] = true;
          if (ArSwitch[6] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 12;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[6] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 6-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 11:
        case 10:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 5) ArSwitch[j] = true;
          if (ArSwitch[5] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 10;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[5] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 5-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  9:
        case  8:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 4) ArSwitch[j] = true;
          if (ArSwitch[4] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 8;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[4] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 4-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  7:
        case  6:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 3) ArSwitch[j] = true;
          if (ArSwitch[3] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 6;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[3] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 5:
        case 4:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 2) ArSwitch[j] = true;
          if (ArSwitch[2] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 4;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[2] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 3:
        case 2:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 1) ArSwitch[j] = true;
          if (ArSwitch[1] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 2;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[1] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 1:
        case 0:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 0) ArSwitch[j] = true;
          if (ArSwitch[0] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 0;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[0] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         } 
       }
      //------------------------------------------------------------------------------------------------------------------------------------
      if (shift == ShiftH2) // Åñëè íàøëè íóæíûé áàð.
       {
        iTimeH1_1 = iTime (symbol, PERIOD_H1, i + 1); // Âðåìÿ îòêðûòèÿ ñëåäóþùåãî ÷àñîâîãî áàðà.
        // Åñëè ñëåäóþùèé áàð íàõîäèòñÿ â äðóãèõ ñóòêàõ èëè ìåñÿöå. Äëÿ ïåðâîãî áàðà ïåðâîãî 2-õ ÷àñîâîãî áàðà â ñóòêè îñîáûå óñëîâèÿ ïðîâåðêè íà÷àëà.
        if (FirstH1 == 0) {if (TimeHour (iTimeH1_1) > 1 || TimeDay (iTimeH1) != TimeDay (iTimeH1_1)) return (iHigh (symbol, PERIOD_H1, i));}
        else {if (TimeHour (iTimeH1_1) < FirstH1 || TimeDay (iTimeH1) != TimeDay (iTimeH1_1)) return (iHigh (symbol, PERIOD_H1, i));}
        // Åñëè ñëåäóþùèé áàð H1 íàõîäèòñÿ â òåêóùåì áàðå H2.
        return (MathMax (iHigh (symbol, PERIOD_H1, i), iHigh (symbol, PERIOD_H1, i + 1)));
       }
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 6. Ìèíèìàëüíàÿ öåíà âûáðàííîãî áàðà â ÒÔ H2.
double iLow_H2 (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, j, k, l;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH2 = iBars_H2 (symbol);         // Êîëè÷åñòâî áàðîâ â ÒÔ H2.
  int      FirstH1;                             // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
  int      ShiftH2;                             // Òåêóùèé íîìåð áàðà ÒÔ H2.
  // Ìàññèâû.
  bool     ArSwitch[12]; // Âûêëþ÷àòåëè ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ.
  //----
  ArrayInitialize (ArSwitch, true);
  //----
  if (0 > shift || shift >= iBarsH2) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {
    for (i = 0, ShiftH2 = -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) ArrayInitialize (ArSwitch, true);
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      switch (TimeHour (iTimeH1))
       {//----×àñîâûå áàðû 12-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 23:
        case 22:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 11) ArSwitch[j] = true;
          if (ArSwitch[11] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 22;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[11] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 11-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 21:
        case 20:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 10) ArSwitch[j] = true;
          if (ArSwitch[10] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 20;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[10] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 10-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 19:
        case 18:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 9) ArSwitch[j] = true;
          if (ArSwitch[9] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 18;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[9] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 9-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 17:
        case 16:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 8) ArSwitch[j] = true;
          if (ArSwitch[8] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 16;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[8] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 8-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 15:
        case 14:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 7) ArSwitch[j] = true;
          if (ArSwitch[7] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 14;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[7] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 7-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 13:
        case 12:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 6) ArSwitch[j] = true;
          if (ArSwitch[6] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 12;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[6] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 6-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 11:
        case 10:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 5) ArSwitch[j] = true;
          if (ArSwitch[5] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 10;          // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[5] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 5-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  9:
        case  8:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 4) ArSwitch[j] = true;
          if (ArSwitch[4] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 8;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[4] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 4-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  7:
        case  6:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 3) ArSwitch[j] = true;
          if (ArSwitch[3] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 6;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[3] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 5:
        case 4:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 2) ArSwitch[j] = true;
          if (ArSwitch[2] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 4;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[2] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 3:
        case 2:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 1) ArSwitch[j] = true;
          if (ArSwitch[1] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 2;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[1] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 1:
        case 0:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 0) ArSwitch[j] = true;
          if (ArSwitch[0] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            ShiftH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            FirstH1 = 0;           // Íîìåð ïåðâîãî ÷àñà â 2-õ ÷àñîâîì áàðå.
            ArSwitch[0] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         } 
       }
      //-----------------------------------------------------------------------------------------------------------------------------------
      if (shift == ShiftH2) // Åñëè íàøëè íóæíûé áàð.
       {
        iTimeH1_1 = iTime (symbol, PERIOD_H1, i + 1); // Âðåìÿ îòêðûòèÿ ñëåäóþùåãî ÷àñîâîãî áàðà.
        // Åñëè ñëåäóþùèé áàð íàõîäèòñÿ â äðóãèõ ñóòêàõ èëè ìåñÿöå. Äëÿ ïåðâîãî áàðà ïåðâîãî 2-õ ÷àñîâîãî áàðà â ñóòêè îñîáûå óñëîâèÿ ïðîâåðêè íà÷àëà.
        if (FirstH1 == 0) {if (TimeHour (iTimeH1_1) > 1 || TimeDay (iTimeH1) != TimeDay (iTimeH1_1)) return (iHigh (symbol, PERIOD_H1, i));}
        else {if (TimeHour (iTimeH1_1) < FirstH1 || TimeDay (iTimeH1) != TimeDay (iTimeH1_1)) return (iHigh (symbol, PERIOD_H1, i));}
        // Åñëè ñëåäóþùèé áàð H1 íàõîäèòñÿ â òåêóùåì áàðå H2.
        return (MathMin (iLow (symbol, PERIOD_H1, i), iLow (symbol, PERIOD_H1, i + 1)));
       }
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 7. Öåíà çàêðûòèÿ âûáðàííîãî áàðà â ÒÔ H2.
double iClose_H2 (string symbol, // Ñèìâîëüíîå èìÿ èíñòðóìåíòà.
                  int    shift)  // Íîìåð áàðà.
 {
  datetime iTimeH1;                             // Âðåìÿ îòêðûòèÿ ÷àñîâîãî áàðà.
  int      i, j;
  int      iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
  int      iBarsH2 = iBars_H2 (symbol);         // Êîëè÷åñòâî áàðîâ èëè íîìåð áàðà â ÒÔ H2.
  // Ìàññèâû.
  bool     ArSwitch[12]; // Âûêëþ÷àòåëè ñ÷¸ò÷èêà øåñòè÷àñîâûõ áàðîâ.
  //----
  ArrayInitialize (ArSwitch, true);
  // Ïðîâåðêà íà íåêîððåêòíîå çíà÷åíèå íàìåðà áàðà.
  if (0 > shift || shift >= iBarsH2) return (0); // Âîçâðàùàåì íîëü â ñëó÷àå îøèáêè.
  else                                           // Åñëè íîìåð áàðà íàõîäèòñÿ â ïðåäåëàõ èñòîðèè, èùåì åãî.
   {
    iBarsH1 = iBars (symbol, PERIOD_H1); // Êîëè÷åñòâî áàðîâ â ÒÔ H1 òåêóùåãî èíñòðóìåíòà.
    for (i = 0, iBarsH2 = -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) ArrayInitialize (ArSwitch, true);
      // Ïåðåêëþ÷àåì ïî ÷àñàì ñóòîê.
      switch (TimeHour (iTimeH1))
       {//----×àñîâûå áàðû 12-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 23:
        case 22:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 11) ArSwitch[j] = true;
          if (ArSwitch[11] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[11] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 11-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 21:
        case 20:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 10) ArSwitch[j] = true;
          if (ArSwitch[10] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;              // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[10] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                  // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;            // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 10-ãî äâóõ÷àñîâîãî áàðà.-----------------------------------------------------------------------------------------
        case 19:
        case 18:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 9) ArSwitch[j] = true;
          if (ArSwitch[9] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[9] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 9-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 17:
        case 16:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 8) ArSwitch[j] = true;
          if (ArSwitch[8] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[8] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 8-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 15:
        case 14:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 7) ArSwitch[j] = true;
          if (ArSwitch[7] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[7] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 7-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 13:
        case 12:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 6) ArSwitch[j] = true;
          if (ArSwitch[6] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[6] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 6-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 11:
        case 10:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 5) ArSwitch[j] = true;
          if (ArSwitch[5] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[5] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 5-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  9:
        case  8:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 4) ArSwitch[j] = true;
          if (ArSwitch[4] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[4] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 4-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case  7:
        case  6:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 3) ArSwitch[j] = true;
          if (ArSwitch[3] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[3] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 3-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 5:
        case 4:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 2) ArSwitch[j] = true;
          if (ArSwitch[2] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[2] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 2-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 3:
        case 2:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 1) ArSwitch[j] = true;
          if (ArSwitch[1] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[1] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         }
        //----×àñîâûå áàðû 1-ãî äâóõ÷àñîâîãî áàðà.------------------------------------------------------------------------------------------
        case 1:
        case 0:
         {// Èíèöèàëèçèðóåì âêëþ÷àòåëè ñ÷¸ò÷èêà áàðîâ H2, êðîìå òåêóùåãî.
          for (j = 0; j < 12; j++) if (j != 0) ArSwitch[j] = true;
          if (ArSwitch[0] == true) // Åñëè ñ÷¸ò÷èê ðàçðåø¸í.
           {
            iBarsH2++;             // Ñ÷èòàåì êâàðòàëüíûé áàð.
            ArSwitch[0] = false;   // Çàïðåùàåì ñ÷èòàòü áàðû â ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
            break;                 // Âûõîäèì èç ïåðåêëþ÷àòåëÿ.
           }
          else continue;           // Ñ÷¸ò÷èê øåñòè÷àñîâûõ áàðîâ çàïðåù¸í, ïåðåõîäèì ê ñëåäóþùåé èòåðàöèè ïî ìåñÿ÷íûì áàðàì.
         } 
       }
      //------------------------------------------------------------------------------------------------------------------------------------
      if (shift == iBarsH2) return (iClose (symbol, PERIOD_H1, i)); // Åñëè íàøëè íóæíûé áàð. Âîçâðàùàåì âðåìÿ çàêðûòèÿ ÷àñîâîãî áàðà.
     }
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 8. Âîçâðàùàåò òåêóùèé íîìåð øåñòè÷àñîâîãî áàðà â ñóòêàõ ïîñëåäíåãî èçâåñòíîãî ñåðâåðíîãî âðåìåíè.
int Hour2()
 {
  switch (Hour())
   {
    case  0:
    case  1: return  (1);
    case  2:
    case  3: return  (2);
    case  4:
    case  5: return  (3);
    case  6:
    case  7: return  (4);
    case  8:
    case  9: return  (5);
    case 10:
    case 11: return  (6);
    case 12:
    case 13: return  (7);
    case 14:
    case 15: return  (8);
    case 16:
    case 17: return  (9);
    case 18:
    case 19: return (10);
    case 20:
    case 21: return (11);
    case 22:
    case 23: return (12);
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ
// 8. Âîçâðàùàåò òåêóùèé íîìåð äâóõ÷àñîâîãî áàðà â ñóòêàõ ïîñëåäíåãî èçâåñòíîãî ñåðâåðíîãî âðåìåíè.
int TimeHour2 (datetime time)
 {
  switch (TimeHour (time)) // Äàòà, ïðåäñòàâëåííàÿ â âèäå êîëè÷åñòâà ñåêóíä, ïðîøåäøèõ ïîñëå 00:00 1 ÿíâàðÿ 1970 ãîäà.
   {
    case  0:
    case  1: return  (1);
    case  2:
    case  3: return  (2);
    case  4:
    case  5: return  (3);
    case  6:
    case  7: return  (4);
    case  8:
    case  9: return  (5);
    case 10:
    case 11: return  (6);
    case 12:
    case 13: return  (7);
    case 14:
    case 15: return  (8);
    case 16:
    case 17: return  (9);
    case 18:
    case 19: return (10);
    case 20:
    case 21: return (11);
    case 22:
    case 23: return (12);
   }
 }
//ææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææææ

Comments