← 返回

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

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

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

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

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

本主题对您有帮助吗?

分享主题

评论 (8)

登录创建账户, 登录或注册以发表评论

Alexander
Alexander

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

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

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

Church
Church 作者

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
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/). Все что-то ходят, мучаются с этим временем, ждут пока Саша сделает. Нет чтобы сделать и выложить на форум. Мы бы вставили в очередной релиз. Видимо все в Москве живут.
Alexander
Alexander

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
Church 作者

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

Alexander
Alexander

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

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