InvestitoreComune

Fractal Dimension Adaptive Moving Average (D-AMA)

etfhq.com/blog/2012/...oving-average-d-ama/

Overall the D-AMA produced results that were near identical to that of the FRAMA but the D-AMA is a slightly faster average.
It is very difficult to pick between the FRAMA and the D-AMA but becuase the FRAMA offers a slightly longer trade duration it the best Moving Average we have tested so far.
开源脚本

本着真正的TradingView精神,该脚本的作者将其开源发布,以便交易者可以理解和验证它。为作者喝彩!您可以免费使用它,但在出版物中重复使用此代码受网站规则的约束。 您可以收藏它以在图表上使用。

免责声明

这些信息和出版物并不意味着也不构成TradingView提供或认可的金融、投资、交易或其它类型的建议或背书。请在使用条款阅读更多信息。

想在图表上使用此脚本?
//@version=2
study("Fractal Dimension Adaptive Moving Average",shorttitle="D-AMA",overlay=true)
price=input(hl2)
len=input(defval=126,minval=1)
fast=input(defval=1,minval=1)
slow=input(defval=30,minval=1)
change=abs(price-price[len])
len1 = len/2
H1 = highest(high,len1)
L1 = lowest(low,len1)
N1 = (H1-L1)/len1
H2 = highest(high,len)[len1]
L2 = lowest(low,len)[len1]
N2 = (H2-L2)/len1
H3 = highest(high,len)
L3 = lowest(low,len)
N3 = (H3-L3)/len
dimen1 = (log(N1+N2)-log(N3))/log(2)
diff = iff(N1>0 and N2>0 and N3>0,dimen1,nz(dimen1[1]))
volatility=sum(diff,len)
ER=change/volatility
fastestSC=(2/(fast+1))
slowestSC=(2/(slow+1))
SC=pow(ER*(fastestSC-slowestSC)+slowestSC,2)
out=nz(out[1])+SC*(price-nz(out[1]))

plot(out,color=teal,title="D-AMA",linewidth=2)