Скользящие средние с минимальным запаздыванием > DEMA (Double Exponential Moving Average) – двойная экспоненциальная скользящая средняя

Скользящие средние с попыткой избавиться от основной проблемы - запаздывания.
Аватара пользователя
evge
Администратор
Сообщения: 1807
Зарегистрирован: 04 фев 2016, 09:46
Откуда: Млечный путь, планета Земля
Благодарил (а): 83 раза
Поблагодарили: 361 раз
Контактная информация:

DEMA (Double Exponential Moving Average) – двойная экспоненциальная скользящая средняя

Непрочитанное сообщение evge » 07 фев 2016, 10:04

Двойная экспоненциальная скользящая средняя – индикатор, в котором осуществлена попытка минимизировать запаздывание при усреднении цен. Для этого считается ошибка (т.е. разница между входным рядом и EMA)

Полученное значение еще раз сглаживается и добавляется к EMA.

Пример:

DEMA-00.png
DEMA-00.png (26.02 КБ) 160740 просмотров


Исходный текст:

Код: Выделить всё

function Initialize()
{
 IndicatorName = "DEMA";                     
 AddInput("Input", Inputs.Price);     
 AddSeries("DEMA", DrawAs.Line, Color.Green);   
 PriceStudy = true;                           
 AddParameter("Period", 20, 1);          
 AddGlobalVariable("K", Types.Double, 0.0);
 AddGlobalVariable("EMAi", Types.Double, 0.0);
 AddGlobalVariable("EMAe", Types.Double, 0.0);
}

function Evaluate()
{
// AlfaDirect. 2015. OX
// EMA - экспоненциальная скользящая средняя.
if (CurrentIndex > 0)
{
   EMAi = (1.0 - K)*EMAi + K*Input[0];
   EMAe = (1.0 - K)*EMAe + K*EMAi;
  DEMA = 2.0*EMAi - EMAe;
}
else
{
   EMAi = Input[0];
   EMAe = Input[0];
    DEMA = Input[0];
    K = 2.0/(Period + 1.0);
}
}
никогда такого не было и вот опять

Вернуться в «Скользящие средние с минимальным запаздыванием»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 30 гостей