internal void OnAddBar(int row, int rowCount, string securityId, SmartBarInterval interval, DateTime time, double open, double high, double low, double close, double volume, double openInt) { NewBar.SafeInvoke(row, rowCount, securityId, SmartComTimeFrames.GetTimeFrame(interval), time, open.ToDecimal(), high.ToDecimal(), low.ToDecimal(), close.ToDecimal(), volume.ToDecimal(), openInt.ToDecimal()); }
/// <summary> /// Начать получать исторические временные свечи от сервера SmartCOM через событие <see cref="ISmartComWrapper.NewBar"/>. /// </summary> /// <param name="securityId">Идентификатор инструмента, для которого необходимо начать получать исторические свечи.</param> /// <param name="timeFrame">Тайм-фрейм.</param> /// <param name="from">Временная точка отсчета.</param> /// <param name="count">Количество свечек.</param> public override void RequestHistoryBars(string securityId, SmartComTimeFrames timeFrame, DateTime from, int count) { if (securityId.IsEmpty()) { throw new ArgumentNullException("securityId"); } StBarInterval interval; switch (timeFrame.Interval) { case SmartBarInterval.Tick: interval = StBarInterval.StBarInterval_Tick; break; case SmartBarInterval.Min1: interval = StBarInterval.StBarInterval_1Min; break; case SmartBarInterval.Min5: interval = StBarInterval.StBarInterval_5Min; break; case SmartBarInterval.Min10: interval = StBarInterval.StBarInterval_10Min; break; case SmartBarInterval.Min15: interval = StBarInterval.StBarInterval_15Min; break; case SmartBarInterval.Min30: interval = StBarInterval.StBarInterval_30Min; break; case SmartBarInterval.Min60: interval = StBarInterval.StBarInterval_60Min; break; case SmartBarInterval.Hour2: interval = StBarInterval.StBarInterval_2Hour; break; case SmartBarInterval.Hour4: interval = StBarInterval.StBarInterval_4Hour; break; case SmartBarInterval.Day: interval = StBarInterval.StBarInterval_Day; break; case SmartBarInterval.Week: interval = StBarInterval.StBarInterval_Week; break; case SmartBarInterval.Month: interval = StBarInterval.StBarInterval_Month; break; case SmartBarInterval.Quarter: interval = StBarInterval.StBarInterval_Quarter; break; case SmartBarInterval.Year: interval = StBarInterval.StBarInterval_Year; break; default: throw new ArgumentOutOfRangeException(); } SafeGetServer().GetBars(securityId, interval, from, count); }
/// <summary> /// Начать получать исторические временные свечи от сервера SmartCOM через событие <see cref="ISmartComWrapper.NewBar"/>. /// </summary> /// <param name="securityId">Идентификатор инструмента, для которого необходимо начать получать исторические свечи.</param> /// <param name="timeFrame">Тайм-фрейм.</param> /// <param name="from">Временная точка отсчета.</param> /// <param name="count">Количество свечек.</param> public abstract void RequestHistoryBars(string securityId, SmartComTimeFrames timeFrame, DateTime @from, int count);
internal void OnAddBar(int row, int rowCount, string securityId, SmartBarInterval interval, DateTime time, double open, double high, double low, double close, double volume, double openInt) { NewBar.SafeInvoke(row, rowCount, securityId, SmartComTimeFrames.GetTimeFrame(interval), time, SafeCast(open), SafeCast(high), SafeCast(low), SafeCast(close), SafeCast(volume), SafeCast(openInt)); }