我一直在尝试将一些pinescript指标重写为Python脚本,但是还没有弄清楚如何在自引用变量中工作。
原始Pinescript:
ObservableChangeSet
我最初的想法是用零初始化一个熊猫系列,然后在下一行中的自引用期间移动。
示例:
ld=input(34, title="Signal Length")
osl=10
calc_abssio( ) =>
A=iff(close>close[1], nz(A[1])+(close/close[1])-1,nz(A[1]))
M=iff(close==close[1], nz(M[1])+1.0/osl,nz(M[1]))
D=iff(close<close[1], nz(D[1])+(close[1]/close)-1,nz(D[1]))
iff (D+M/2==0, 1, 1-1/(1+(A+M/2)/(D+M/2)))
abssi=calc_abssio()
abssio = (abssi - ema(abssi,lma))
alp=2.0/(ld+1)
mt=alp*abssio+(1-alp)*nz(mt[1])
ut=alp*mt+(1-alp)*nz(ut[1])
s=((2-alp)*mt-ut)/(1-alp)
d=abssio-s
当我这样做时,python的最终计算结果与pinescript不匹配。会有更好的翻译方法吗?