Доброго времени суток. Ни как не могу отрисовать график индикатора ADX. На дополнительном area не рисуются линии индикатора, в чем может быть проблема ?
Код
_area = new ChartArea();
_areaADX = new ChartArea();
Chart.Areas.Add(_area);
Chart.Areas.Add(_areaADX);
...
_candlesElem = new ChartCandleElement();
_tradeElement = new ChartTradeElement { BuyColor = Colors.Red, SellColor = Colors.Blue, IsLegend = true };
_adxElem = new ChartIndicatorElement
{
Color = Colors.Silver,
IsLegend = true,
Indicator = new AverageDirectionalIndex(new DirectionalIndex { Length = 10 }, new WilderMovingAverage { Length = 10 }),
Title = "ADX ({0})".Put(10),
StrokeThickness = 1,
IndicatorPainter = new AverageDirectionalIndexPainter(),
};
_area.Elements.Add(_tradeElement);
_area.Elements.Add(_candlesElem);
_areaADX.Elements.Add(_adxElem);
candleManager.Processing += DrawCandle;
...
private void DrawCandle(CandleSeries series, Candle candle)
{
if (candle.State == CandleStates.Finished)
{
var val = _adxElem.Indicator.Process(new CandleIndicatorValue(candle) { IsFinal = true});
var adxValue = new ChartIndicatorValue(_adxElem.Indicator, val);
//Debug.WriteLine(adxValue.Indicator.);
this.GuiAsync(
() => Chart.ProcessValues(candle.OpenTime, new Dictionary<IChartElement, object>
{
{_candlesElem, candle},
{_adxElem, adxValue}
}));
}
}