Снова стакан
Atom
01.07.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

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


Теги:


Спасибо:


< 1 2 
Mikhail Sukhov

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


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

Спасибо:

Tauler

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


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

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

Спасибо:

Tauler

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


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

Спасибо:

Mikhail Sukhov

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


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

Спасибо:

Mikhail Sukhov

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


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

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

Спасибо:

Tauler

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


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

Спасибо:

Mikhail Sukhov

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


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

Спасибо:
< 1 2 

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

loading
clippy