gpt4 book ai didi

python - 如何使用 Ta-lib 或 Pandas 正确计算股票的 EMA?

转载 作者:行者123 更新时间:2023-12-03 14:55:53 36 4
gpt4 key购买 nike

编辑!

对于任何想知道同样事情的人,我想通了。下面的实现没有任何问题。事实上,EMA 需要超过 21 个数据点来计算 20 个数据点指数移动平均线。原因是较早的数据点会影响您尝试计算的数据点。简单来说,你我测试过,你需要大约 40-50 个数据点才能获得与 100+ 个数据点相同的 20 天 EMA。

我正在尝试计算一只股票的 EMA(指数移动平均线),但我的计算有问题。我已经为 AAPL 导出了过去 22 天以上的股票数据,当我尝试为此计算 EMA 时,每次都会出现问题。

这是我的示例的数据:https://pastebin.com/raw/2MsgCeQx

以下是我尝试计算 20 天 EMA 的解决方案。

#Imported the data as "data".
#With Ta-lib
data["EMA20Talib"] = talib.EMA(data.uClose, timeperiod = 20)

#And with pandas
data["EMA20Pandas"] = data["uClose"].ewm(span=20, adjust = False).mean()

我这里是数据和结果的图像。
https://i.imgur.com/pFtc7x8.png

如您所见,Real20EMA 与 TA-lib 或 pandas 20EMA 不匹配。我究竟做错了什么?

uClose 是计算 EMA 的列,“Real20EMA”取自交易 View (与市场观察交叉引用以确保其正确)。

我注意到早些时候这里有一个类似的问题,同样的问题: Pandas' EMA not matching the stock's EMA? .当你对索引进行排序时,问题就在那里解决了,我已经确保我已经正确排序了,但是我仍然遇到同样的问题。

我想使用某种工具获得与其他金融网站相同的数字。奇怪的是,即使我尝试过的这两种方法也没有返回相同的结果。

最佳答案

我建议使用 Pandas TA在python中计算技术指标。我发现它比 TA-Lib 更准确且更容易安装。
使用 Pandas TA,20 周期指数移动平均线计算如下:

import pandas_ta as ta

data["EMA20"] = ta.ema(data["uClose"], length=20)

关于python - 如何使用 Ta-lib 或 Pandas 正确计算股票的 EMA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55910760/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com