Скользящие средние SMMA

Подробнее
9 года 11 мес. назад - 9 года 11 мес. назад #15 от AlexLan
Михаил, добрый день. Подскажите пожалуйста.
Попытался сделать индикатор SMMA как в квике SMMAi = (sum(Pi) - SMMAi-1 + Pi) / n,
Что то получился громоздко и правильно ли..
Проверьте пожалуйста

function SMMA_(array, period, sd)
{
if (BarCount <1 )
{
SUM1 = Sum (array, period);
SMMA1 = SUM1 / period;
SMMA= (SUM1 - Ref(SMMA,- 1) + array)/ period;
PREVSUM = SMMA * period;
SMMA = (PREVSUM - Ref(SMMA, - 1) + array) / period;
} else
{
SUM1 = Sum (array, period);
SMMA1 = SUM1 / period;
SMMA= (SUM1 - Ref(SMMA1,- 1) + array)/ period;
SMMA = (Ref(SMMA,- 1) * (period - 1) + array) / period;
}
return Ref(SMMA,-sd);
}
Подскажите пожалуйста, как эту формулу написать правильно.
С уважением, Александр.
Последнее редактирование: 9 года 11 мес. назад пользователем AlexLan.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
9 года 11 мес. назад - 9 года 11 мес. назад #16 от admin
admin ответил в теме Скользящие средние SMMA
Здравствуйте, Александр. Честно скажу, что делает функция, я не разбирался, просто механически поправил.

function SMMA_(array, period, sd)
{       local SUM1,SMMA;

	SMMA1 = (SUM1 = Sum (array, period))/ period;
	return Ref((Ref((SUM1 - Ref(SMMA1,- 1) + array)/ period,- 1) * (period - 1) + array) / period,-sd);
}
Последнее редактирование: 9 года 11 мес. назад пользователем admin.
Спасибо сказали: AlexLan, darshan

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
9 года 11 мес. назад #17 от AlexLan
Михаил,.Спасибо. Как всегда быстро и конкретно.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Модераторы: admin