Вывод стакана
Atom Reply
7/16/2010


Всем привет. Подскажите плиз как правильно выводить стакан и
регистрироваться на событие его изменение(котировок стакана)?
Делаю все примерно так:
1. При подключении к квику стартую вывод таблицы текущих параметров
quik.Connected += () =>
{
quik.StartDde(quik.SecuritiesTable);
ToLog("conneced...");
_isConnected = true;
};
2. При появлении новой секурити
quik.NewSecurities += securities =>
{
if (sber == null)
sber = securities.FirstOrDefault(sec =>
sec.Code == secCode);
if (sber != null)
{
ToLog("Инструмент появился.");
stak = new MarketDepth(sber);
stak.QuotesChanged += new
Action<OrderDirections, System.Collections.Generic.IDictionary<int,
Quote>>(stak_QuotesChanged);
quik.StartDde(sber); // здесь квик начинает
вывод стакана по дде
}
};
3. И пытаюсь текст боксе увидеть результат обновления стакана


Tags:


Thanks:




3 Answers
Serg

Avatar
Date: 7/16/2010
Reply


пардон .... не дописал)
пункт 3.
void stak_QuotesChanged(OrderDirections arg1,
System.Collections.Generic.IDictionary<int, Quote> arg2)
{
foreach (var qoute in quik.GetMarketDepth(sber))
{
ToLog("Направление " + qoute.OrderDirection + " Объем
"+ qoute.Volume +" Цена "+ qoute.Price);
}
}

Результат моей работы:
в текст боксе ничего не появляется
при отладке приложения и просмотре внутренних полей stak было
замечено что все поля нулевые кроме конечно Security

Topic starter
Thanks:

MCTuTeJ|19951995

Avatar
Date: 7/16/2010
Reply


Возможно я что-то путаю, но по-моему чтобы отслеживать изменения
котировок нужно вызвать либо trader.RegisterQuotes(security), либо
GetMarketDepth(security).

Thanks:

Serg

Avatar
Date: 7/16/2010
Reply


ооо эврика))) долго же я размышлял над этой темой)) спасибо
Topic starter
Thanks:


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

loading
clippy