Pandas TA EMA 计算不准确。

5
使用Pandas TA计算EMA时,我发现与Trading View上的EMA不匹配。 考虑任何具有200个EMA的股票。接下来,使用任意数量的蜡烛计算最后的EMA。如果仅传递200个蜡烛,则在特定时间戳处的值与Trading View上相同的时间戳不准确。传递500个蜡烛会显着提高准确性。传递1000个蜡烛可以使准确度相对精确。
我还意识到,您的EMA长度越大,需要获得准确结果的蜡烛数也越多。例如,使用50的EMA,如果仅使用200个左右的蜡烛,则可以得到相对准确的结果。
我的问题是,如果您使用与EMA长度相同或甚至是两倍于EMA长度的蜡烛数量,为什么与Trading View相比,EMA值不准确?为什么它必须要这么多?
如果有人想测试一下,我使用了Binance交易所和ADAUSDT。
以下是我的EMA计算:
import pandas as pd
import pandas_ta as ta


def calculate_TA_values(closes, date):
    close_series = pd.Series(closes)
    ema = ta.ema(close_series, 200)
    print(ema)
    print(date)


这是真的,我也看到了这个问题。我们需要传递更多的蜡烛数据以获得准确的结果。如果有人正在使用,请建议是否已经确定了问题? - Magesh Narayanan
我注意到了pandas_ta中的这个问题,即使在包含1k+行的长数据框中也存在ALMA和EMA的问题。 - undefined
1个回答

1

EMA的计算取决于您作为参数传递的系列,您必须使用较长的系列,如您所述,并且为了获得与Binance或Tradingview相同的结果,我将最大长度系列传递后,然后获得与Binance和Tradingview完全相同的EMA。我知道从API获取数据需要更多时间,但是EMA的数学计算是从系列的开头开始的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接