Ошибка сглаживания ATR

Ошибка в атр

  1. Robin&Bobin

    Регистрация:
    28.02.19
    Сообщения:
    22
    Был на сайте:
    22.09.23

    Добрый день. Нашел следующий баг при расчете встроенного АТР. Ставлю тип мувинга для сглаживания атр любой другой - ноль реакции.

    Длина атр пересчитывается нормально.

    Теже действия с MA приводят к корректному пересчету.

    Например так:

    _ATRSi.TypeCalculationAverage = MovingAverageTypeCalculation.Exponential;
    _ATRSi.Lenght = 10;
    _ATRSi.Reload();
    _SMASi3.TypeCalculationAverage = MovingAverageTypeCalculation.Exponential;
    _SMASi3.Reload();

    Перепробовал все типы в атр, ноль реакции.

    Создаю индикаторы так:

    _SMASi3 = new MovingAverage(name + "SMASi3", false) { Lenght = 3,PaintOn = true};
    _SMASi3 = (MovingAverage)_tabSi.CreateCandleIndicator(_SMASi3, "Prime");
    _SMASi3.Save();
    _ATRSi = new Atr(name + "ATRSi", false) { Lenght = 10, PaintOn = true, TypeCalculationAverage = MovingAverageTypeCalculation.Adaptive};
    _ATRSi = (Atr)_tabSi.CreateCandleIndicator(_ATRSi, "AtrArea");
    _ATRSi.Save();


    Начал сам сравнивать код расчета индикаторов и на всякий случай сообщаю вам.

    Сборка последняя 1.5.

    Robin&Bobin
    12.04.2019 14:31
    #1
  2. Алексей Ван Команда форума

    Регистрация:
    02.02.13
    Сообщения:
    1172
    Был на сайте:
    24.04.24
    Цитата: Robin&Bobin

    Добрый день. Нашел следующий баг при расчете встроенного АТР. Ставлю тип мувинга для сглаживания атр любой другой - ноль реакции.

    Длина атр пересчитывается нормально.

    Теже действия с MA приводят к корректному пересчету.

    Например так:

    _ATRSi.TypeCalculationAverage = MovingAverageTypeCalculation.Exponential;
    _ATRSi.Lenght = 10;
    _ATRSi.Reload();
    _SMASi3.TypeCalculationAverage = MovingAverageTypeCalculation.Exponential;
    _SMASi3.Reload();

    Перепробовал все типы в атр, ноль реакции.

    Создаю индикаторы так:

    _SMASi3 = new MovingAverage(name + "SMASi3", false) { Lenght = 3,PaintOn = true};
    _SMASi3 = (MovingAverage)_tabSi.CreateCandleIndicator(_SMASi3, "Prime");
    _SMASi3.Save();
    _ATRSi = new Atr(name + "ATRSi", false) { Lenght = 10, PaintOn = true, TypeCalculationAverage = MovingAverageTypeCalculation.Adaptive};
    _ATRSi = (Atr)_tabSi.CreateCandleIndicator(_ATRSi, "AtrArea");
    _ATRSi.Save();


    Начал сам сравнивать код расчета индикаторов и на всякий случай сообщаю вам.

    Сборка последняя 1.5.

    Спасибо. Там архаизм тип машки в АТР. Убрал.

    Атр у нас рассчитывается как в ВелсЛаб. И способа выбрать машку для сглаживания - нет.

    Алексей Ван
    15.04.2019 07:50
    #2