Каталог файлов форума

Список вложений в сообщениях, оставленных на этой конференции.

Все файлы форума: 1270

Добавлено: evge » 06 фев 2016, 15:32

Тема: EMA (Exponential Moving Average) – экспоненциальная скользящая средняя

Текст сообщения:

Экспоненциальная скользящая средняя (EMA – Exponential Moving Average) усредняет все цены с учетом веса Wi=exp(-i/P)

Экспоненциальная скользящая средняя (EMA) это разновидность фильтров с бесконечной импульсной характеристикой (БИХ), весовая функция которых является реакцией линейного дифференциального уравнения первого порядка на единичный импульс.

Пример:

EMA-00.png
EMA-00.png (26.43 КБ) 42006 просмотров


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

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

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

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


Индикатор EMA – является встроенным индикатором, поэтому создавать пользовательский индикатор не имеет смысла.