load data[3089, 2] = lunwen\99201.txt@读入数据@
datr = data[2:3089, 2]:
@计算个数@
obv = (int((rows(datr)-1)/100)*100)+2
print obv
@通计算对数回报率@
datn = (ln(datr[2:obvl./datr[l:obv-1]))
obv = obv-1
@计算AR(1)@
yi = datn[2:obv]
xi = datn[l:obv-1]
xi2 = xi^2
ybar = meanc(yi)
xbar = meanc(xi)
xly = yi.*xi
sxx = obv*sumc(xi2) - (sumc(xi))_2
sxy = obv*(sumc(xly)) - sumc(xi)*sumc(yi):
slope = sxy/sxx const = ybar-slope*xbar
datx = datn[2:obv] - (const + slope*datn[l:obv-1]):
clear datn obv = rows(datx)
@计算R/S值@
I = 4
do while i<obv-1
i = i+l n = floor(obv/i) num = (obv/i):
if n<num:
goto repeat
endif
x1 = reshape(datx, n, i)
mu = meanc(xl)
xl = xl - mu
sig = stdc (xl)
sum = cumsumc(xl)
max = maxc(sum) min = minc(sum):
r=max-min
rs=r/sig
a=log(meanc(rs))b=log(i)
c=a^b^i
?c
repeat:endo
两种办法,一是自己写公式,我试过,但是只能在大周期上显示,改变了周期后要调整参数,就是四根均线,然后将均线乘以一个系数。另一种方法是用Mt4中的envelopes指标,改变周期和偏差值也可以,这两种办法都需要在不同周期上使用不同的参数。不一定非要用薛斯通道,只要方法合适,能在图表上拟合出来就可以了,我也百度了很久,也始终找不到。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)