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

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

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

Добавлено: Prohar » 23 фев 2020, 04:42

Тема: Re: LinReg (Linear Regression) – линейная регрессия

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

simple.png
simple.png (38.47 КБ) 29174 просмотра

Ниже еще один из популярных приемов МНК.
Может быть не так наглядно как у вас, но на моем компе делает оптимизацию в несколько раз быстрее.

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

/**
линейная регрессия МНК

20200222 prohar
**/

function Initialize()
{
  IndicatorName = "i_LinReg";     
  PriceStudy = true;   
  AddInput("Input", Inputs.Price);     
  AddSeries("LinReg", DrawAs.Line, Color.Red);     
  AddParameter("Period", 20);
  AddParameter("Extr", 10);
}

function Evaluate()
{
   double S = SMA(Input, Period);
   double W = WMA(Input, Period);
   LinReg =  (6*(W-S)/(Period-1)) *((double)Period+Extr) + (S-3*(W-S)/(Period-1)*(Period+1));
}


Вроде можно упростить, но тогда регрессор и коэффициенты альфа и бета перестанут быть явными.

Up. если Extr = 0, то

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

function Evaluate()
{
   LinReg =  3*WMA(Input, Period) - 2*SMA(Input, Period);
}