我想用yfinace建立一个历史库存数据库来测试一些策略。不,我在使用api时遇到了一些历史数据的问题。这种情况主要发生在没有交易的股票,而不是美国市场。
例如,如果我使用以下方法获得“BOE.L”的历史数据:
boel = yf.Ticker("BOE.L")
boelHist = boel.history(period='max')返回的最早收盘价是2001-06-11,即:2.191053e-06,而在雅虎网站上,这个值是:2,347.00 (就此日期而言)。
有人知道这是怎么回事吗?
发布于 2021-04-18 09:01:37
观察到了与“SAP.DE”类似的行为。
ticker = yf.Ticker("SAP.DE")
hist = ticker.history(start="2019-04-16", end="2021-04-16")回溯到过去两年(2021-04-16),在派息之前,价格似乎是正确的。在这种情况下,在2020-05-22 (1,58)、2020-05-21 (1,58)和2019-05-15 (1,50)年支付了股息。这一差额几乎(但不是100%)与股息数额有关。
以下屏幕截图显示了与“公开”价格的差异:
您可以观察到“打开”、“高”、“低”和“关闭*”的区别,但是"Adj Close**“似乎是正确的。
如果使用参数interval="1h",则“开放”价格(108,36)是正确的(2020-05-21):
hist = ticker.history(interval="1h", start="2020-05-19", end="2020-05-25")2020年-05-21 108.360001 108.360001 107.599998 107.739998 175957
2020年-05-21 107.900002 108.040001 107.300003 107.680000 416473
2020年-05-21 107.459999 107.839996 107.300003 107.400002 433919
2020年-05-21 107.580002 107.639999 107.120003 107.300003 158440
2020年-05-21 107.480003 107.559998 107.059998 107.320000 227438
2020年-05-21 107.379997 108.019997 107.199997 107.739998 189142
2020年-05-21 107.500000 108.339996 107.500000 107.879997 336406
2020年-05-21 108.059998 108.339996 107.120003 107.279999 454079
2020年-05-21 107.779999 107.779999 106.400002 106.720001 542355
也许以下几点可以解释这些差异:
1.)修正闭合的计算:https://help.yahoo.com/kb/SLN28256.html
2.)来源:https://finance.zacks.com/adjusted-closing-price-vs-closing-price-9991.html
“虽然股息对股东有利,但它们实际上降低了每一家公司股票的价值。导致股息减少的原因是,派息降低了公司的价值,因为他们将资金或股票转移到股东手中,而不是投资于公司。与收盘价不同,调整后的收盘价反映了股利支付导致的贬值。”
关于这一点的进一步讨论:
似乎,有一个参数"back_adjust=True",它应该提供调整的值,但不能得到调整值?
hist = ticker.history(interval="1d", start="2020-05-19", end="2020-05-23", back_adjust=True)https://stackoverflow.com/questions/65496947
复制相似问题