← Atrás

Не отрисовывается 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}
                    }));
            }
        }


¿Le resultó útil este tema?

Compartir tema

Comentarios (7)

Iniciar sesión o Crear cuenta, Inicie sesión o regístrese para dejar un comentario

esper
esper

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

shumak
shumak Autor

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

esper
esper

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

shumak
shumak Autor

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

shumak
shumak Autor

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

esper
esper

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

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

shumak
shumak Autor

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