А.Г., как вы относитесь к тому, чтобы размесить это в разделе "Новые направления"?
Ответить
Ответы и комментарии
Форум
Отправлено
C1am
,
16:11:40 20/06/2002
:
Осредненный ROC.
Идея индикатора:
Оценка изменений цены по данным OHLC нескольких последовательных баров.
Метод:
Расчет среднего (Js) всевозможных комбинаций изменения
по Op-Открытие H-максимум L-минимум C-закрытие. Например, для 4 баров (12 точек):
X(1) = (Op(0)-Op(-1))
X(2) = (Op(0)-Op(-2))/2
X(3) = (Op(0)-Op(-3))/3
X(4) = (H(0)-H(-1))
X(5) = (H(0)-H(-2))/2
X(6) = (H(0)-H(-3))/3
X(7) = (L(0)-L(-1))
X(8 )= (L(0)-L(-2))/2
X(9) = (L(0)-L(-3))/3
X(10) = (C(0)-C(-1))
X(11) = (C(0)-C(-2))/2
X(12) = (C(0)-C(-3))/3
Далее, расчет ошибки оценки по 12 точкам
mjs=Sqrt(Cумма((X(i)-Js)^2)/11/12)
Оценка средней ошибки оценки mja как среднего от mjs по числу vs-точек (vs-параметр)
mja=Cреднее(mjs,vs);
Оценка доверительного интервала с помощью квантиля dv (dv-параметр)
Js-dv*mja < Js < Js+dv*mja
Интерпретация:
1. Если Js-dv*mja>0, то наблюдалась тенденция к росту в рамках 4 баров
2. Если Js+dv*mja<0, то наблюдалась тенденция к падению в рамках 4 баров
3. Иначе — были колебания в диапазоне без ярко выраженной тенденции
Изменяемые по желанию пользователя параметры:
p1:=Input("Использовать Log:1",0,1,1);
vs:=Input("Число точек для расчета дисперсии",1,9999,20);
dv:=Input("3начение квантиля",0,99,3.5);
Пути совершенствования индикатора:
1. Использование урезанного среднего.
Урезанное среднее является промежуточным между медианой
(наиболее устойчивой оценкой) и выборочным средним
(оптимальной оценкой для нормального случая).
Подходит для случая загрязненного нормального распределения.
Можно, например, выбросить верхнюю и нижнюю четверть, оставшуюся
внутреннюю половину усреднить.
2. Выбор именно 4 или 9 баров — произвол.
Cледует выписать процедуры для произвольного числа баров ( N )
и подумать о выборе адекватного N при помощи некоторого критерия.
Тексты программ
Текст индикатора для Метастока
по 4 барам
{OcRoc-4}
p1:=Input("Использовать Log:1",0,1,1);
vs:=Input("Число точек для расчета дисперсии",1,9999,20);
dv:=Input("3начение квантиля",0,99,3.5);
Xo:=If(p1>0,Log(O),O);
XH:=If(p1>0,Log(H),H);
XL:=If(p1>0,Log(L),L);
XC:=If(p1>0,Log(C),C);
js:=(ROC(Xo,1,$)+ROC(Xo,2,$)/2+ROC(Xo,3,$)/3+
ROC(XH,1,$)+ROC(XH,2,$)/2+ROC(XH,3,$)/3+
ROC(XL,1,$)+ROC(XL,2,$)/2+ROC(XL,3,$)/3+
ROC(XC,1,$)+ROC(XC,2,$)/2+ROC(XC,3,$)/3)/12;
mjs:=Pwr((Pwr(ROC(Xo,1,$)-js,2)+Pwr(ROC(Xo,2,$)/2-js,2)+Pwr(ROC(Xo,3,$)/3-js,2)+
Pwr(ROC(XH,1,$)-js,2)+Pwr(ROC(XH,2,$)/2-js,2)+Pwr(ROC(XH,3,$)/3-js,2)+
Pwr(ROC(XL,1,$)-js,2)+Pwr(ROC(XL,2,$)/2-js,2)+Pwr(ROC(XL,3,$)/3-js,2)+
Pwr(ROC(XC,1,$)-js,2)+Pwr(ROC(XC,2,$)/2-js,2)+Pwr(ROC(XC,3,$)/3-js,2))/132,0.5);
mja:=Mov(mjs,vs,TRI);
js-mja*dv;
js+mja*dv;
js;
Текст индикатора для Метастока
по 9 барам
{OcRoc-9}
p1:=Input("Использовать Log:1",0,1,1);
vs:=Input("Число точек для расчета дисперсии",1,9999,30);
dv:=Input("3начение квантиля",0,99,3.5);
Xo:=If(p1>0,Log(O),O);
XH:=If(p1>0,Log(H),H);
XL:=If(p1>0,Log(L),L);
XC:=If(p1>0,Log(C),C);
js:=(ROC(Xo,1,$)+ROC(Xo,2,$)/2+ROC(Xo,3,$)/3+ROC(Xo,4,$)/4+ROC(Xo,5,$)/5+
ROC(Xo,6,$)/6+ROC(Xo,7,$)/7+ROC(Xo,8,$)/8+
ROC(XH,1,$)+ROC(XH,2,$)/2+ROC(XH,3,$)/3+ROC(XH,4,$)/4+ROC(XH,5,$)/5+
ROC(XH,6,$)/6+ROC(XH,7,$)/7+ROC(XH,8,$)/8+
ROC(XL,1,$)+ROC(XL,2,$)/2+ROC(XL,3,$)/3+ROC(XL,4,$)/4+ROC(XL,5,$)/5+
ROC(XL,6,$)/6+ROC(XL,7,$)/7+ROC(XL,8,$)/8+
ROC(XC,1,$)+ROC(XC,2,$)/2+ROC(XC,3,$)/3+ROC(Xc,4,$)/4+ROC(Xc,5,$)/5+
ROC(Xc,6,$)/6+ROC(Xc,7,$)/7+ROC(Xc,8,$)/8 )/32;
mjs1:=(Pwr(ROC(Xo,1,$)-js,2)+Pwr(ROC(Xo,2,$)/2-js,2)+Pwr(ROC(Xo,3,$)/3-js,2)+
Pwr(ROC(XH,1,$)-js,2)+Pwr(ROC(XH,2,$)/2-js,2)+Pwr(ROC(XH,3,$)/3-js,2)+
Pwr(ROC(XL,1,$)-js,2)+Pwr(ROC(XL,2,$)/2-js,2)+Pwr(ROC(XL,3,$)/3-js,2)+
Pwr(ROC(XC,1,$)-js,2)+Pwr(ROC(XC,2,$)/2-js,2)+Pwr(ROC(XC,3,$)/3-js,2));
mjs2:=(Pwr(ROC(Xo,4,$)/4-js,2)+Pwr(ROC(Xo,5,$)/5-js,2)+Pwr(ROC(Xo,6,$)/6-js,2)+
Pwr(ROC(XH,4,$)/4-js,2)+Pwr(ROC(XH,5,$)/5-js,2)+Pwr(ROC(XH,6,$)/6-js,2)+
Pwr(ROC(XL,4,$)/4-js,2)+Pwr(ROC(XL,5,$)/5-js,2)+Pwr(ROC(XL,6,$)/6-js,2)+
Pwr(ROC(XC,4,$)/4-js,2)+Pwr(ROC(XC,5,$)/5-js,2)+Pwr(ROC(XC,6,$)/6-js,2));
mjs3:=(Pwr(ROC(Xo,7,$)/7-js,2)+Pwr(ROC(Xo,8,$)/8-js,2)+
Pwr(ROC(XH,7,$)/7-js,2)+Pwr(ROC(XH,8,$)/8-js,2)+
Pwr(ROC(XL,7,$)/7-js,2)+Pwr(ROC(XL,8,$)/8-js,2)+
Pwr(ROC(XC,7,$)/7-js,2)+Pwr(ROC(XC,8,$)/8-js,2));
mja:=Mov(Sqrt((mjs1+mjs2+mjs3)/31/32),vs,TRI);
js-mja*dv;
js+mja*dv;
js;
Авторы А.Г.,СергейЮ, C1am
HowToTrade
2002
Ответы и комментарии:
К сожалению не все знают Метасток может
IT
,
20:44 20 июня 2002
(0)
Сделано (см. ссылку)
А. Г.
,
17:05 20 июня 2002
(0)
Re: А.Г., как вы относитесь к тому, чтобы размесить это в разделе "Новые направления"?
СергейЮ
,
16:40 20 июня 2002
(0)
Как хотите, но мне представляется, что Вы
C1am
,
17:12 20 июня 2002
(0)
Заменить сообщение не проблема
А. Г.
,
17:14 20 июня 2002
(0)
Я поступил чуть иначе, учитывая возможности Интернета
А. Г.
,
17:08 20 июня 2002
(0)
Спасибо. Вы просто волшебник, :). ()
C1am
,
17:15 20 июня 2002
(0)
Нет проблем, но я не автор
А. Г.
,
16:24 20 июня 2002
(0)
Да, лучше в «Технический (статистический) анализ».+
C1am
,
16:46 20 июня 2002
(0)
[an error occurred while processing this directive]
Форум
Начало
Ответить
Назад
Вперед