← Back

Не отрисовывается ADX

Доброго времени суток. Ни как не могу отрисовать график индикатора 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}
                    }));
            }
        }


Comments (7)

Login or Create account, Log in or register to leave a comment

esper
esper

У вас на графике 2 свечки, индикатор сформироваться то успевает?

shumak
shumak Author

Там очень много свечей. Вот только показываются первые 2.

esper
esper

Попробуйте выполнить масштабирование двойным кликом мыши. Какая версия?

shumak
shumak Author

Линий получается нету, а значения с правой стороны присутствуют. Версия 4.14

shumak
shumak Author

А по листингу все правильно? Ни каких определенных функций не требуется подключать при отрисовке 2го area ?

esper
esper

shumak: А по листингу все правильно? Ни каких определенных функций не требуется подключать при отрисовке 2го area ?

На первый взгляд правильно. После масштабирования, когда видны все свечки, так же не видно значений индикатора? На осях показывается последнее значение для индикатора, поэтому на первых двух свечках его и нет, т.к. он еще не сформирован.

shumak
shumak Author

Спасибо! Разобрался! Оказывается действительно масштабирование помогает. Я скролом не смог накрутить.