[BUG?] Вчерашняя дата в RealTimeEmulationTrader

[BUG?] Вчерашняя дата в RealTimeEmulationTrader
Atom
25.08.2011
Church


Только что появилась проблема - Trader.MarketTime начал показывать вчерашнюю дату. Проблема появилась буквально несколько часов назад, в начале вечерки ее еще не было.

Для сравнения, вывел время свечек, которые приходят в CandleManager.CandlesFinished:

candle = 25.08.2011 10:53:00, market = 24.08.2011 23:32:40

Соответственно, в квике все таблицы показывают корректную сегодняшнюю дату.




Спасибо:


Alexander

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


А внизу квика, слева, какая дата выводится?

Спасибо:

Church

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


  1. Правда, сейчас уже 26, и непонятно - должна она обновляться при закрытых рынках или нет.
Спасибо:

Alexander

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


странно что CandlesFinished в середине вечерки у вас выводит 10 утра, а market выводит вчерашнюю дату. какое время установлено на компе? что писалось в квике в то время, когда выводились свечки? перегружаете ли RealTimeEmulationTrader?

Спасибо:

Church

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


RealTimeEmulationTrader не перегружаю. Происходит ли такое с реальным QuikTrader'ом - пока не знаю, не останавливал рабочий, запущенный несколькими часами ранее. На компе время корректное, тогда было 25. Что было в квике в правом углу в то время - не обратил внимания...

Думаю, виноват брокер. Завтра позвоню и узнаю, в чем проблема.

А пока что, может быть подскажете более робастый способ обрабатывать историю? Я пока что делаю это через подписку на CandlesFinished и обрабатываю пакеты, которые он возвращает по мере формирования свечек, до тех пор пока их время не станет = рыночному. GetLastCandles идеален, но как узнать, когда CandleManager закончил формировать нужные свечки?

// Обработчик новых свечек
private void ProcessCandles(CandleToken token, IEnumerable<Candle> candles)
{
    CancelActiveOrders();

    if (token != _candleToken) return;
    foreach (var candle in candles)
    {
        ...

        if (!Working)
            if (candle.Time + _timeFrame + _timeFrame > Trader.MarketTime)
            {
                Working = true;
                this.AddInfoLog("История обработана.");
                BeginCoreCycle();
            }
                        
    }

    Traded = false;
}

Буду очень признателен.

Спасибо:

Mikhail Sukhov

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


Church: Только что появилась проблема - Trader.MarketTime начал показывать вчерашнюю дату. Проблема появилась буквально несколько часов назад, в начале вечерки ее еще не было.

Для сравнения, вывел время свечек, которые приходят в CandleManager.CandlesFinished:

candle = 25.08.2011 10:53:00, market = 24.08.2011 23:32:40

> Соответственно, в квике все таблицы показывают корректную сегодняшнюю дату.

Может быть [это](http://stocksharp.com/forum/1811/MarketTime/)? А вообще нужно сделать по уму, как здесь [было предложено](http://stocksharp.com/forum/1425/BaseTrader-MartketTime--priedlozhieniie/). Все что-то ходят, мучаются с этим временем, ждут пока Саша сделает. Нет чтобы сделать и выложить на форум. Мы бы вставили в очередной релиз. Видимо все в Москве живут.
Спасибо:

Alexander

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


Mikhail Sukhov:

Church: Только что появилась проблема - Trader.MarketTime начал показывать вчерашнюю дату. Проблема появилась буквально несколько часов назад, в начале вечерки ее еще не было.

Для сравнения, вывел время свечек, которые приходят в CandleManager.CandlesFinished:

candle = 25.08.2011 10:53:00, market = 24.08.2011 23:32:40

> > Соответственно, в квике все таблицы показывают корректную сегодняшнюю дату.
> 
> Может быть [это](http://stocksharp.com/forum/1811/MarketTime/)? А вообще нужно сделать по уму, как здесь [было предложено](http://stocksharp.com/forum/1425/BaseTrader-MartketTime--priedlozhieniie/). Все что-то ходят, мучаются с этим временем, ждут пока Саша сделает. Нет чтобы сделать и выложить на форум. Мы бы вставили в очередной релиз. Видимо все в Москве живут.

Да, проблема как раз с этим связана.
Решил не делать получение времени через NTP сервер, т.к. там есть проблема с работой через прокси.
Спасибо:

Church

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


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

Спасибо:

Alexander

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


Church: Но у меня часовой московский часовой пояс... Вряд ли у сервера провайдера другой, время в таблицах совпадает с компьютерным.

Периодически время в левом углу квика работает неверно. В 3.2.11 будет кое-что на эту тему.

Спасибо:


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

loading
clippy