← Voltar

Как начать работу только со "свежими" данными

В NinjaTrader все было просто if (Historical) return; пропускалась вся история и начинаешь работать только со свежими данными. Как это сделать тут ? Пытался сделать вот так,

    private DateTimeOffset _startTime;

    protected override void OnStarted()
    {
        Connector.NewTrades += Connector_NewTrades;
        _startTime = this.StartedTime.DateTime;//+TimeSpan.FromMinutes(1);//ждем 1 мин что бы все подгрузилось, но так тоже не очень хорошо
        Console.WriteLine(@"Время старта = {0}", _startTime.DateTime);
        base.OnStarted();
    }
private void Connector_NewTrades(IEnumerable<StockSharp.BusinessEntities.Trade> trades)
    {
        foreach (var trade in trades)
        {
           if (trade.Time.DateTime<=_startTime) return;
          // но пока грузятся данные уже проходят изменения 
         ......
        }

}

Как лучше (правильнее) пропустить все исторические данные и начать работать только со свежими (вновь поступившими) данными ?

Este tópico foi útil?

Compartilhar tópico

Comentários (1)

Entrar ou Criar conta, Faça login ou cadastre-se para deixar um comentário

Support
Support

TimeSpan _timeError = TimeSpan.FromSeconds(3); // погрешность синхронизации локального и биржевого времени

private void Connector_NewTrades(IEnumerable<StockSharp.BusinessEntities.Trade> trades) { foreach (var trade in trades) {

 if (DateTimeOffset.Now - trade.Time > _timeError) return;
    // но пока грузятся данные уже проходят изменения 

...... }