Снова стакан

Снова стакан
Atom
7/1/2010
Tauler


Иногда в стакане BestBid.Price или BestAsk.Price равны нулю. Стаканы яполчаю в конструкторе и для рассчета текущих сигналов использую только их вот код

public BasketSignalCalculator(TradedBasket basket, TikerController tikerController, bool isSigmaCalculated) { this.isSigmaCalculated = isSigmaCalculated; this.trader = tikerController.Trader; this.basket = basket; this.tikerController = tikerController; leftSideMD = trader.GetMarketDepth(trader.Securities.First(sec => sec.Code == basket.Basket.LeftSide[0].Asset.Name)); rightSideMDs = trader.GetMarketDepth(trader.Securities.First(sec => sec.Code == basket.Basket.RightSide[0].Asset.Name)); }

вот код одного из методов

public decimal CalcSumCurrentBids() { decimal delta = 0; foreach (TradedBasketItem tradedBasketItem in basket.CurrentPart.RightSide) { decimal koef = GetTikerKoef(tradedBasketItem.Tiker); double bid = rightSideMDs.BestBid.Price; delta = delta + bid * tradedBasketItem.Weight * koef; if (delta <= 0) {

TradeBasketHelperLogger.Logger.Debug(String.Format("Delta = 0, koef = {0}, BB = {1}, TotalVol = {2}, TotalPrice {3}", koef, bid, rightSideMDs.TotalVolume, rightSideMDs.TotalPrice)); } } return delta; }

и вот лог

14:06:57,421 - Delta = 0, koef = 1, BB = 0, TotalVol = 667149, TotalPrice 1487,4 14:09:05,515 - Delta = 0, koef = 1, BB = 0, TotalVol = 659359, TotalPrice 1486,44 14:10:23,468 - Delta = 0, koef = 1, BB = 0, TotalVol = 522221, TotalPrice 1486,02

что это за глюк и как с ним бороться?


Tags:


Thanks:


< 1 2 
Mikhail Sukhov

Avatar
Date: 7/1/2010
Reply


Ок, посмотрю чуть по-позже. Надо еще глянуть на частоту обновления инструментов... Главное, чтобы этот код точно приводил к баге.

Thanks:

Tauler

Avatar
Date: 7/1/2010
Reply


Иожно вообще слип убрать и отлавливать моменты когда бестбид или бестаск равны 0. еще вот я заметил тоталволюм парур раз 0 проскакивал.

вероятно если подписаться на событие QoutesChanged таког не будет, н оу Workflow со событиями как то не айс работа, на то он и flow.

Thanks:

Tauler

Avatar
Date: 7/1/2010
Reply


а MarketDepth потокобезопасный? может я в него лезу как раз в тот момент , ктога он обновляет эти свойства?

Thanks:

Mikhail Sukhov

Avatar
Date: 7/1/2010
Reply


Потокобезопасный.

Thanks:

Mikhail Sukhov

Avatar
Date: 7/2/2010
Reply


Две новости. Хорошая - у меня работает. Плохая (но не для меня) - у меня версия 2.1. Вот так =)

Действительно, посмотрел старый код. Такое поведение могло быть. Обновление котировок было не атомарно.

Thanks:

Tauler

Avatar
Date: 7/2/2010
Reply


а долго ожидать релиза 2.1?

Thanks:

Mikhail Sukhov

Avatar
Date: 7/2/2010
Reply


Я в процессе документирования. Думал на этой неделе сделаю, а у вас все проблемы да проблемы... Думаю 2-3 дня.

Thanks:
< 1 2 

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy