/// <summary>
        /// Generato ad ogni tick, vengono effettuati i calcoli dell'indicatore
        /// </summary>
        /// <param name="index">L'indice della candela in elaborazione</param>
        public override void Calculate(int index)
        {
            if (Bars.TimeFrame != TimeFrame.Hour)
            {
                if (_canDraw())
                {
                    Chart.DrawStaticText("MyError", "PLEASE, USE THIS INDICATOR WITH TIMEFRAME 1H", VerticalAlignment.Center, HorizontalAlignment.Center, Color.Red);
                }

                return;
            }
            else if (havecurr == -1)
            {
                if (_canDraw())
                {
                    Chart.DrawStaticText("MyError", "NOT SUPPORT THIS CROSS, ONLY MAJOR CURRENCY : EUR;USD;GBP;JPY;CAD;AUD;CHF;NZD", VerticalAlignment.Center, HorizontalAlignment.Center, Color.Red);
                }

                return;
            }

            havecurr = -1;

            if (Array.IndexOf(EURcross, SymbolName) > -1)
            {
                SetValue((SymbolName.IndexOf("EUR") == 0) ? First : Second, index, "EUR", EURcross);
            }

            if (Array.IndexOf(USDcross, SymbolName) > -1)
            {
                SetValue((SymbolName.IndexOf("USD") == 0) ? First : Second, index, "USD", USDcross);
            }

            if (Array.IndexOf(GBPcross, SymbolName) > -1)
            {
                SetValue((SymbolName.IndexOf("GBP") == 0) ? First : Second, index, "GBP", GBPcross);
            }

            if (Array.IndexOf(JPYcross, SymbolName) > -1)
            {
                SetValue((SymbolName.IndexOf("JPY") == 0) ? First : Second, index, "JPY", JPYcross);
            }

            if (Array.IndexOf(CADcross, SymbolName) > -1)
            {
                SetValue((SymbolName.IndexOf("CAD") == 0) ? First : Second, index, "CAD", CADcross);
            }

            if (Array.IndexOf(CHFcross, SymbolName) > -1)
            {
                SetValue((SymbolName.IndexOf("CHF") == 0) ? First : Second, index, "CHF", CHFcross);
            }

            if (Array.IndexOf(AUDcross, SymbolName) > -1)
            {
                SetValue((SymbolName.IndexOf("AUD") == 0) ? First : Second, index, "AUD", AUDcross);
            }

            if (Array.IndexOf(NZDcross, SymbolName) > -1)
            {
                SetValue((SymbolName.IndexOf("NZD") == 0) ? First : Second, index, "NZD", NZDcross);
            }
        }