protected override void CalcBar() { var m_avg = m_AverageFC[0]; var m_shift = NumAtrs * this.AverageTrueRange(Length); m_LowerBand.Value = m_avg - m_shift; if (Bars.CurrentBar > 1 && Price.CrossesUnder(m_LowerBand, ExecInfo.MaxBarsBack)) { m_bSetupSE.Value = true; m_CrossingLow.Value = Bars.Low[0]; } else { if (m_bSetupSE.Value && (PublicFunctions.DoubleGreater(Price[0], m_avg) || PublicFunctions.DoubleLessEquals(Bars.Low[0], m_CrossingLow.Value - Bars.Point))) { m_bSetupSE.Value = false; } } if (m_bSetupSE.Value) { m_KltChSE.Send(m_CrossingLow.Value - Bars.Point); } }