NullReferenceException при вызове Strategy.Security.BestAsk.Price

NullReferenceException при вызове Strategy.Security.BestAsk.Price


В версии 4.0.23 при вызове Strategy.Security.BestAsk.Price получал нужную цену. Скачал самую последнюю версию 17334, с dev-ветки. Теперь Strategy.Security.BestAsk равно null и вылетает NullReferenceException


Теги:


Спасибо:


< 1 2 
pyhta4og

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


Судя по тому что у вас ошибка в 10:00:00 утра я думаю что у вас 1я свечка сформировалась до того как пришел первый стакан

Поэтому все-таки моя рекомендация случай Bid=null считать нормальным, во всяком случае на исторических данных. Вы можете просто пропустить эту свечу.

Сам CandleFinished который приходит ровно в 10:00:00 тоже подозрителен - это какие же тики вошли в эту свечу? которые были ДО 10:00:00 - так их быть не должно.

Возможно вам приходит свеча с нулевым объемом?

Спасибо:

Кот Матроскин

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


pyhta4og: Судя по тому что у вас ошибка в 10:00:00 утра я думаю что у вас 1я свечка сформировалась до того как пришел первый стакан Поэтому все-таки моя рекомендация случай Bid=null считать нормальным, во всяком случае на исторических данных. Вы можете просто пропустить эту свечу. Возможно вам приходит свеча с нулевым объемом? Сделал так, чтобы BestAsk спрашивался посередине дня в разное время - вылетает то же самое исключение. Так как Bid и Ask у Сбера не могут быть нулевые, ошибка в чем-то другом

pyhta4og: Сам CandleFinished который приходит ровно в 10:00:00 тоже подозрителен - это какие же тики вошли в эту свечу? которые были ДО 10:00:00 - так их быть не должно. Что Гидра с Финама скачала, то и юзаем)))))

Спасибо:

pyhta4og

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


Кот Матроскин:

pyhta4og: Судя по тому что у вас ошибка в 10:00:00 утра я думаю что у вас 1я свечка сформировалась до того как пришел первый стакан Поэтому все-таки моя рекомендация случай Bid=null считать нормальным, во всяком случае на исторических данных. Вы можете просто пропустить эту свечу. Возможно вам приходит свеча с нулевым объемом? Сделал так, чтобы BestAsk спрашивался посередине дня в разное время - вылетает то же самое исключение. Так как Bid и Ask у Сбера не могут быть нулевые, ошибка в чем-то другом

pyhta4og: Сам CandleFinished который приходит ровно в 10:00:00 тоже подозрителен - это какие же тики вошли в эту свечу? которые были ДО 10:00:00 - так их быть не должно. Что Гидра с Финама скачала, то и юзаем)))))

правильно я понимаю, что у вас в течение одного дня сначала BestBid!=null, а потом BestBid==null получается?

Можете прислать истор. данные за 1 день на которых такое поведение EmulationTrader? какая версия StockSharp?

Спасибо:

Кот Матроскин

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


pyhta4og: правильно я понимаю, что у вас в течение одного дня сначала BestBid!=null, а потом BestBid==null получается? Нет, BestBid == null постоянно (BestAsk тоже постоянно == null) pyhta4og: Можете прислать истор. данные за 1 день на которых такое поведение EmulationTrader? какая версия StockSharp? Версия вроде как stocksharp-17830

У вас, я так понял, не получается воспроизвести ошибку?

2012_04_02.RAR 231 KB (497)
Спасибо:

pyhta4og

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


Кот Матроскин:

pyhta4og: правильно я понимаю, что у вас в течение одного дня сначала BestBid!=null, а потом BestBid==null получается? Нет, BestBid == null постоянно (BestAsk тоже постоянно == null) pyhta4og: Можете прислать истор. данные за 1 день на которых такое поведение EmulationTrader? какая версия StockSharp? Версия вроде как stocksharp-17830

У вас, я так понял, не получается воспроизвести ошибку?

Воспроизввел. UseMarketDepth=false теперь значит вообще никаких стаканов не использовать, ни генерированных, ни настоящих.

Чтобы использовать настоящие ставьте UseMarketDepth=true, DepthGenerator-ы НЕ регистрируйте Чтобы использовать генерированные ставьте UseMarketDepth=true и зарегистрируйте генератор через RegisterMarketDepth(new TrendMarketDepthGenerator...)

при генерации стаканов в первом за день NewTrades BestBid/BestAsk будут null, потому что их еще не сгенерировали (генерация происходит после прихода сделки), но это только 1 раз за день.

Спасибо: Кот Матроскин
< 1 2 

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

loading
clippy