Подскажите по смене времени
Atom Ответить
02.12.2012


Здравствуйте!
Забодался со следующим: пытаюсь сменить стандартное время получения свечек (10.00-18.45) ибо мучаю квик-джуниор, а там свечки приходят в 4 утра до 23.59.59.
Хочу, чтоб приходили 6 утра и до 23.50.
В аналогичных темах на форуме отсылают к Exchange.Rts.WorkingTime. Отослался...
Пишу код:
вариант 1)_trader = new QuikTrader(Path.Text);
Exchange.Rts.WorkingTime.Times[0] = new Range<TimeSpan>(new TimeSpan(6, 00, 0), new TimeSpan(23, 50, 0));
_trader.Connect();

вариант 2) _trader = new QuikTrader(Path.Text);
DateTime w2 = DateTime.ParseExact("20121202-0600", "yyyyMMdd-HHmm", CultureInfo.InvariantCulture);
Exchange.Rts.WorkingTime.SpecialWorkingDays = new[] { w2 };
_trader.Connect();
Ни первый ни второй вариант к желаемому результату не привели. Дебагер говорит, что Exchange.Rts.WorkingTime.Times сменил, а на график свечки упорно поступают только
с 10.00. Подскажите, что не так???
И попутно вопрос: в Exchange.Rts.WorkingTime.Times по умолчанию три элемента с 10-14, с 14.03-18.45, с 19.00-23.50, а свечки на графике все равно
только 10.00 до 18.45. Почему вечерняя сессия игнорируется???
з.ы. сильно не пинайте, только начал со всем этим разбираться.




1 Ответов
Semen7

Фотография
Дата: 03.12.2012
Ответить


В результате долгих и упорных боданий был найден рецепт решения.
Выкладываю, вдруг кому пригодится. Чтобы свечи шли с заданного по заданное время на графике надо
в _CandleSeries задать следующие параметры.

_CandleSeries = new CandleSeries(typeof(TimeFrameCandle, _lkoh, _timeFrame);
_CandleSeries.From = new DateTime(2012, 12, 3, 6, 0, 0);
_CandleSeries.To = new DateTime(2012, 12, 3, 23, 50, 0);
_CandleSeries.WorkingTime.Times[0] = new Range<TimeSpan>(new TimeSpan(6, 00, 0), new TimeSpan(23, 50, 0));
И будет счастье.BigGrin
Автор топика
Спасибо: Геннадий Ванин (Gennady Vanin) kahuna


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy