【问题标题】:talib ADX function errortalib ADX 函数错误
【发布时间】:2016-01-15 21:47:03
【问题描述】:

使用从雅虎财经下载的python pandas数据框(d),格式为:

日期、开盘价、最高价、最低价、收盘价、成交量、调整收盘价 2015-01-13,1.290,1.290,1.200,1.225,421600,1.225

我可以像这样成功使用 talib 函数:

talib.abstract.EMA(d, timeperiod=8, price='Close')
talib.abstract.SMA(d, timeperiod=13, price='Close')
talib.abstract.RSI(d, timeperiod=25, price='Close')

根据文档 (http://mrjbq7.github.io/ta-lib/func_groups/momentum_indicators.html),他们采用以下形式:

real = XYZ(close, timeperiod=14)

但是,当尝试将 talib 函数与表单一起使用时:

real = XYZ(high, low, close, timeperiod=14) such as the ADX I cant figure out the correct syntax needed.

我试过这个:

talib.abstract.ADX(d,high='High',low='Low',close='Close',Timeperiod=10)

异常:input_arrays 参数缺少必需的数据键:high、low、close

还有这个:

talib.abstract.ADX(high=d.High,low=d.Low,close=d.Close,Timeperiod=10)

TypeError: only length-1 arrays can be converted to Python scalars

对于这个和其他具有多个输入参数的 talib python 包装器所需的参数的正确格式有什么想法吗?

任何有关正确格式的帮助将不胜感激!!! 提前致谢

【问题讨论】:

    标签: python ta-lib


    【解决方案1】:

    在某些情况下取决于数组的形状。如果您确实需要该功能作为紧急事项,只需从库中调用它:

    import talib
    import numpy as np
    h = np.array(high)
    l = np.array(low)
    c = np.array(close)
    output_atr = np.array(talib.ATR(h,l,c,14))
    

    这很好用。

    【讨论】:

    • 感谢您的帮助。仅供参考 talib.abstract 与其他功能一起使用,但失败如下: talib.abstract.ADX(d.High.values,d.Low.values,d.Close.values,10) 但这有效:talib.ADX(d.High .values,d.Low.values,d.Close.values,10)....所以感谢 ajsp 为我指出正确的方向。
    猜你喜欢
    • 2020-07-27
    • 1970-01-01
    • 1970-01-01
    • 2020-03-24
    • 1970-01-01
    • 1970-01-01
    • 2022-06-27
    • 1970-01-01
    • 2022-11-09
    相关资源
    最近更新 更多