我尝试用Python和Pandas实现Kaufman效率比(ER)。在
在Pandas数据帧中,我有两列:
Date Close 2016-01-05 10310.10 2016-01-06 10214.02 2016-01-07 9979.85 2016-01-08 9849.34 2016-01-11 9825.07 2016-01-12 9985.43 2016-01-13 9960.96 2016-01-14 9794.20
我需要的是第三列,其中包括给定周期n的ER
ER的定义:
^{pr2}$其中:
Direction = ABS (Close – Close[n])
Volatility = n * ∑ (ABS(Close – Close[1]))
n = The efficiency ratio period.
下面是一个n=3句点ER的示例(取自http://etfhq.com/blog/2011/02/07/kaufmans-efficiency-ratio/):
我在纠结的是如何用Python和熊猫来做这个? 最后,根据上面的计算,我的数据帧应该是这样的:
Date Adj Close ER(3) 2016-01-04 10283.44 2016-01-05 10310.10 2016-01-06 10214.02 2016-01-07 9979.85 0.9 2016-01-08 9849.34 1.0 2016-01-11 9825.07 1.0 2016-01-12 9985.43 0.0 2016-01-13 9960.96 0.5 2016-01-14 9794.20 0.1
如何让Pandas回顾前面n行的ER所需的计算?在
非常感谢任何帮助! 提前谢谢你。 德克
无需编写滚动函数,只需使用
diff
和rolling_sum
:我认为代码很容易解释。如果你需要解释,请告诉我。在
^{pr2}$这看起来像你要找的。在
相关问题 更多 >
编程相关推荐