Диалог автора. Александр Смирнов. - страница 38

 
Prival:
Yurixx:
lna01:


Могу привести соответствующие аналитические рассчеты.


вот отсюда если не затруднит подробнее. с приходом новых данных коэфициенты А и В могут поменяться, вродебы, хотя я могу и ошибаться :-). Для ЛР вроде решили, а вот для параболической регресии как ?

sum=0.0;
for (i=0; i<p; i++)
{
    fx = A*i*i + B*i + C;
    dc = Close[i] - fx;
    sum += dc * dc;
}
sq = MathSqrt(sum / p);
 
Yurixx:


Очень хочу узнать, что может быть лишнее в этих формулах ? :-)

Что касается "реального выражения", то как вы думаете, откуда все эти формулы берутся ? Вот если подставить в это "реальное выражение" конечные формулы, полученные с помощью МНК для А и В, то как раз и получится приведенное выражение для СКО. Могу привести соответствующие аналитические рассчеты.

Хорошо, соглашусь, именно в этих - нет :)
По определению рекурсия это вычисление следующего значения с использованием предыдушего? Тогда подсчёт сумм нарастающим итогом есть самая натуральная рекурсия.
Дело в том, что мой расчёт по "реальному выражению" даёт некоторое несовпадение с этими формулами. Вот результаты для N=5 и N=20. Линии считались как ЛР + 3*СКО, для белой СКО брался как sqrt((СКО^2)*N/(N-2)). Красная линия - по моей формуле, белая - по вашей. Для N=20 красная практически не видна, можно считать, что результаты с хорошей точностью совпадают. А вот для N=5 различия вполне заметны.
 
ANG3110:
Да, можно посчитать сумму вначале один раз и просто вычетать последний элемент, и прибавлять новый первый. Тогда получается без цикла.

Сыр-бор разгорелся оттого, что в LRMA на каждом баре a и b считаются заново. То есть простой модификацией суммы ошибок обойтись нельзя.
 
ANG3110:
Prival:
Yurixx:
lna01:


Могу привести соответствующие аналитические рассчеты.


вот отсюда если не затруднит подробнее. с приходом новых данных коэфициенты А и В могут поменяться, вродебы, хотя я могу и ошибаться :-). Для ЛР вроде решили, а вот для параболической регресии как ?

sum=0.0;
for (i=0; i<p; i++)
{
    fx = A*i*i + B*i + C;
    dc = Close[i] - fx;
    sum += dc * dc;
}
sq = MathSqrt(sum / p);


Нет расчета коэфициента В. Хотя если добавить расчет его, то вродебы как приходим к исходному. Нет рекурсии, т.е. прибавления к прошлому значению какогото нового, расчитанного на 0 шаге. ANG3110 извини тут нет рекурсии
 
lna01:
ANG3110:
Да, можно посчитать сумму вначале один раз и просто вычетать последний элемент, и прибавлять новый первый. Тогда получается без цикла.

Сыр-бор разгорелся оттого, что в LRMA на каждом баре a и b считаются заново. То есть простой модификацией суммы ошибок обойтись нельзя.
А тот случай, с выражением, LRMA, - он чтобы сразу считать данные конца LR, и не предназначен для расчета СКО.
Но вычисление LRMA, без использования коэффициентов линии a и b, ничего в расчетных рессурсах не выигрывает, а в возможностях обедняет, потому что в формуле линейной регрессии b - это положение конца, а*i - это угол. И что еще важно, что по зная a и b можно легко считать СКО. А можно поступить обратным способом, и счтать чтобы СКО было бы постоянным, а период менялся бы, тогда получим регрессию, как костюм сшитый точно по размерам, под тренд.
 
ANG3110:
а период менялся бы, тогда получим регрессию, как костюм сшитый точно по размерам, под тренд.

Если есть индикатор обладающий этим свойством. Нельзя ли поделиться. Хотя я понимаю что это уже не то что выкладывают в общий доступ, но если вдруг Вы решитесь, желтые штаны и два раза ку при встрече + любимый Вами напиток в это время дня постараюсь достать :-)

З.Ы. нужна парабола, ЛР не интересует

 
Prival:
ANG3110:
Prival:
Yurixx:
lna01:


Могу привести соответствующие аналитические рассчеты.


вот отсюда если не затруднит подробнее. с приходом новых данных коэфициенты А и В могут поменяться, вродебы, хотя я могу и ошибаться :-). Для ЛР вроде решили, а вот для параболической регресии как ?

sum=0.0;
for (i=0; i<p; i++)
{
    fx = A*i*i + B*i + C;
    dc = Close[i] - fx;
    sum += dc * dc;
}
sq = MathSqrt(sum / p);


Нет расчета коэфициента В. Хотя если добавить расчет его, то вродебы как приходим к исходному. Нет рекурсии, т.е. прибавления к прошлому значению какогото нового, расчитанного на 0 шаге. ANG3110 извини тут нет рекурсии
А зачем эта рекурсия нужна в этом случае. Ну я понимаю когда в расчетах используется штук 10 - 20 регрессий сразу, ну тогда методы расчета без цикла, становятся актуальными, и решаются с помощью массивов очень легкою. Но для одной - двух линий, это типа нечего больше делать, как сочинять рекурсию. Я лично сижу у дочки на именинах и мне действительно больше нечего делать, вот жду когда они закончатся.
 
ANG3110:
...
А зачем эта рекурсия нужна в этом случае. Ну я понимаю когда в расчетах используется штук 10 - 20 регрессий сразу, ну тогда методы расчета без цикла, становятся актуальными, и решаются с помощью массивов очень легко, но для одной - двух линий. Это типа нечего больше делать, как сочинять рекурсию. Я лично сижу у дочки на именинах и мне действительно больше нечего делать, вот жду когда они закончатся.

мультивалютный анализ, с разными периодами циклов. Если считать циклы (период выборки) 1, 2, 8, 12, 24 и 120 часов + на 12 валют, то скорость расчета не последнее дело. Хотя (жаль смайлика нет с кружкой или рюмкой) у моей дочки 14 февраля 12 лет, так что пишу в промежутках между рюмкой и развлечением гостей (собрались все в субботу).
 
ANG3110:
Но вычисление LRMA, без использования коэффициентов линии a и b, ничего в расчетных рессурсах не выигрывает, а в возможностях обедняет,
...
И что еще важно можно считать СКО. А можно поступить обратным способом, и счтать чтобы СКО было бы постоянным, а период менялся бы, тогда получим регрессию, как костюм сшитый точно по размерам, под тренд.
Как раз алгоритмы LRMA из этой ветки в ресурсах выигрывают, и очень много. Добавка к алгоритму расчёта а, и СКО (b в моей версии считается) дополнительные ресурсы конечно возьмёт, но немного. Кстати картинка выше, с "полуканалами" была быстренько приготовлена из моей версии LRMA (то есть из MovingLR). Собственно мой интерес в этой ветке состоит именно в шлифовке форсированного алгоритма пересчитываемой на каждом баре регрессии, так чтобы СКО был постоянным я раньше пробовал и результатами удовлетворён не был.
 
А чего это мы к к-там a и b привязались? Есть же доказанная формула для ЛР - нет там никаких к-тов прямой. Есть тривиальные машки. Prival, я именно о ЛР говорю, давай сначала с ней разберемся.