Живые свечи
Atom
9/19/2012
topman


Господа, может кто подскажет, как правильно строить свечи real-time, чтобы последняя свеча изменялась при каждой сделке (как в терминалах)? Нигде в документации не нашел стандартных решений.
Вот к примеру есть событие

series.ProcessCandle += candle => this.GuiAsync(() => wnd.Chart.Candles.Add(candle))

оно отрабатывает только при появлении новой свечки. А есть метод отлавливать событие сделки, ну допустим _trader.NewTrades и функция перерисовки последней свечки?
ЗЫ. Маньячил пример SampleSmartCandles, ниче не придумал ((

Tags:


Thanks:


OvcharenkoVI

Avatar
Date: 9/19/2012
Reply


series.ProcessCandle += candle =>
{
if(candle.State == CandleStates.Finished)
{
this.GuiAsync(() => wnd.Chart.Candles.Add(candle));
}

if(candle.State == CandleStates.Changed || candle.State == CandleStates.Started)
{
this.GuiAsync(() =>
{
wnd.Chart.Candles.RemoveAt(wnd.Chart.Candles.Count - 1);
wnd.Chart.Candles.Add(candle);
});
}
};

Как то так
Thanks:

topman

Avatar
Date: 9/19/2012
Reply


Спасибо, нижняя часть действительно идея!
Но проблема в том, что событие series.ProcessCandle вызывается только когда появляется новая свечка. Как сделать так, чтобы оно вызывалось при любом изменении?
Thanks:

OvcharenkoVI

Avatar
Date: 9/20/2012
Reply


candleManager.Processing += (series, candles) => { };
Thanks: topman

topman

Avatar
Date: 9/20/2012
Reply


OvcharenkoVI
candleManager.Processing += (series, candles) => { };
Блин, но почему-то у меня это событие происходит при каждой новой свечке, а не сделке..

Thanks:

OvcharenkoVI

Avatar
Date: 9/20/2012
Reply


Trader.RegisterTrades(security);

Не знаю как в коннекторе смарткома работает candleManager
Thanks:


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

loading
clippy