От теории к практике - страница 530

multiplicator
2018
multiplicator  
Yuriy Asaulenko:

Но строит ее отвратительно.) Однако, для многих приложений и этого более чем достаточно.

Тем не менее, ЕМА остается лучшим среди прочих "стандартных" МАшек абсолютно по всем параметрам. Единственно, у нее с периодом сглаживанием нелады - он реально ничему не соответствует. Из за этого сравнивать ЕМА с другими МА при одинаковых Т абсолютно некорректно и бессмысленно.

индикатор по полиному и индикатор машка сравнивать за тот же период тоже не корректно.
multiplicator
2018
multiplicator  
здесь писали, что в алглибе можно делать регрессию на любую функцию.

я в этой библиотеке нашел только линейную регрессию.
http://alglib.sources.ru/dataanalysis/

как использовать метод МНК в алглибе, задавая свою функцию?
Yousufkhodja Sultonov
6884
Yousufkhodja Sultonov  
Smokchi Struck:
здесь писали, что в алглибе можно делать регрессию на любую функцию.

я в этой библиотеке нашел только линейную регрессию.
http://alglib.sources.ru/dataanalysis/

как использовать метод МНК в экселе, задавая свою функцию?

Чтобы использовать МНК, Вы должны свою функцию предварительно линеаризовать. 

multiplicator
2018
multiplicator  
Yousufkhodja Sultonov:

Чтобы использовать МНК, Вы должны свою функцию предварительно линеаризовать. 

как?


как линеаризовать функцию  y=ax2+bx+c?

Georgiy Merts
8826
Georgiy Merts  
Smokchi Struck:
 

как линеаризовать функцию  y=ax2+bx+c?

Да методом МНК !  Что там сложного ? Задаешь свою параболу, и по ней в экселе аппроксимируешь прямую. По идее, даже можно вывести непосредственно формулу.

И, дружище, ты бы нормальное имя себе завел вместо твоего дурацкого ника... А то непонятно, какой струк ты там смокчать предлагаешь...

multiplicator
2018
multiplicator  
Georgiy Merts:

Да методом МНК !  Что там сложного ? Задаешь свою параболу, и по ней в экселе аппроксимируешь прямую. По идее, даже можно вывести непосредственно формулу.

имелось ввиду , как сделать в mql, средствами библиотеки ALGLIB.

Georgiy Merts:

И, дружище, ты бы нормальное имя себе завел вместо твоего дурацкого ника... А то непонятно, какой струк ты там смокчать предлагаешь...

лингвист чтоли? )))

Georgiy Merts
8826
Georgiy Merts  
RRR5:

имелось ввиду , как сделать в mql, посредстваими библиотеки ALGLIB.

лингвист чтоли? )))

Ну, не то, чтобы лингвист, но интересуюсь.

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

Лично я сделал регрессию без применения ALGLIB, тогда ее еще не было.  Прикрепляю класс LSMCore - ядро аппроксимации, вычисляет по массиву точек коэффициенты в полиноминальной регрессии от нулевой до третьей степени по выбору.

Необходимо пронаследоваться от этого класса, и перегрузить функции:

virtual uint   _N() = 0;                // Число точек
virtual double _X(uint uiIdx) = 0;      // Значение X точки с индексом uiIdx
virtual double _Y(uint uiIdx) =0;       // Значение Y точки с индексом uiIdx

После этого - вызываешь функцию _CountLSM(ELSMType ltType);

Она принимает тип регрессии - от флета до кубика, и возвращает коэффициенты полинома в структуре SLSMPowers.

Пользуйся. Все приведенные выше графики аппроксимаций - используют именно этот класс.

Файлы:
LSMCore.mqh 14 kb
LSMCore.mq5 36 kb
Yuriy Asaulenko
9254
Yuriy Asaulenko  
Georgiy Merts:

Ну, не то, чтобы лингвист, но интересуюсь.

Вот, хотя бы такой ник - и то гораздо лучше.

Лично я сделал регрессию без применения ALGLIB, тогда ее еще не было.  Прикрепляю класс LSMCore - ядро аппроксимации, вычисляет по массиву точек коэффициенты в полиноминальной регрессии от нулевой до третьей степени по выбору.

Необходимо пронаследоваться от этого класса, и перегрузить функции числа элементов, и получения пар X-Y.

Писатели.)) Проще через ДЛЛ стороннюю библиотек вызвать и далее никогда с этим не заморачиваться.

multiplicator
2018
multiplicator  
Georgiy Merts:

Ну, не то, чтобы лингвист, но интересуюсь.

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

Лично я сделал регрессию без применения ALGLIB, тогда ее еще не было.  Прикрепляю класс LSMCore - ядро аппроксимации, вычисляет по массиву точек коэффициенты в полиноминальной регрессии от нулевой до третьей степени по выбору.

Необходимо пронаследоваться от этого класса, и перегрузить функции:

После этого - вызываешь функцию _CountLSM(ELSMType ltType);

Она принимает тип регрессии - от флета до кубика, и возвращает коэффициенты полинома в структуре SLSMPowers.

Пользуйся. Все приведенные выше графики аппроксимаций - используют именно этот класс.

это сложно, хотелось бы в ALGLIB.
secret
872
secret  
RRR5:

вы не знаете в какой момент флет сменится трендом.

я-то знаю, чо