簡體   English   中英

yfinance只能下載2欄嗎?

[英]Can yfinance download 2 columns only?

現在,我想下載一些代碼的歷史價格,但我不需要完整的下載,只需要日期和收盤價。

目前我正在這樣做:

with open("tickers_list.txt") as fp:
    Lines = fp.readlines()
    for line in Lines: #for each line = ticker
        line = line.strip() #remove "/n" in the line
        data = yf.download(line,period = '10y', interval='1d')
        del data["Open"] #remove useless column
        del data["High"] #remove useless column
        del data["Low"] #remove useless column
        del data["Adj Close"] #remove useless column
        del data["Volume"] #remove useless column
        data.to_csv('download/'+line+'.csv')

# close the file
fp.close()

如您所見,我下載了整個“包”,然后刪除了無用的列。 這種方式未來的問題是:如果我需要下載10'000家公司的數據,我在這個過程中有時會丟失很多。

正常下載

yf.download(line,period = '10y', interval='1d')
Date        Open        High         Low       Close   Adj Close  Volume
2012-04-23  409.200012  410.899994  398.700012  402.399994  331.590271  203708
2012-04-24  408.600006  412.299988  406.700012  408.500000  336.616821  204588

我在找什么

yf.download(line,period = '10y', interval='1d', [Date], [Close])
Date        Close
2012-04-23  402.399994
2012-04-24  408.500000
df = yf.Ticker("IBM").history(start="2017-01-01", end="2017-04-30", frequency='1dy')['Close']

只返回一個價格

Output:

Date
2017-01-03    125.567116
2017-01-04    127.121788
2017-01-05    126.701187
2017-01-06    127.324532
2017-01-09    125.912628
                 ...    
2017-04-24    121.685005
2017-04-25    121.412483
2017-04-26    121.162666
2017-04-27    121.359474
2017-04-28    121.336777

另外,如果你請求所有的數據,你可以嘗試立即刪除不需要的

data = yf.download("AAPL", start="2017-01-01", end="2017-04-30", auto_adjust=True)
data = data[['Close']]
print(data)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM