我想对任何在线索引使用查找,包括带数字的索引。一个随机的例子是:
https://uk.finance.yahoo.com/quote/YSM6.AX/futures?p=YSM6.AX
一种天真的方法是使用pandas-datareader:
from pandas_datareader import data as datareader
online_data = datareader.DataReader('YSM6.AX', 'yahoo', start, end)
然而,这不起作用。我认为自动收报机中的数字处理不当。这个命令适用于例如“AAPL”。
如何让它适用于任何索引?
答案 0 :(得分:1)
如果查看您提供的链接,YSM6是ASX的期货合约。具体来说,它是M6到期,意味着2016-06。雅虎在他们的网站上已经没有关于此合同的数据了 - 可能是因为它已经过期,或者可能是因为从来没有任何可用的数据。此外,该产品(3年期非盟利率互换期货)似乎已被交易所终止。
您的问题是您想要“库存”数据。以下是带有数字符号的实际库存示例:
答案 1 :(得分:1)
YSM6.AX链接显示此股票没有数据。 如果您想获取多个股票,并获得专门调整后的收盘价,您可以使用此代码。它考虑了任何具有“ - ”的有趣股票代码,或者在YSM6.AX的情况下,“。”。在自动收报机内。
import pandas as pd
import datetime
from pandas_datareader import data, wb
tickers = ["BRK.B", "AAPL", "MSFT", "YHOO", "JPM"]
series_list = []
start = datetime.datetime(2012, 4, 5)
end = datetime.datetime(2017, 3, 28)
for security in tickers:
s = data.DataReader(security.replace(".","-"),"yahoo",start, end )["Adj Close"]
s.name = security
series_list.append(s)
df = pd.concat(series_list, axis=1)
stocks= pd.DataFrame(df)
stocks