1

此代码返回过去 7 天的 1 分钟数据,但它只返回今天的单引号。有没有办法获取今天的 1 分钟柱形数据?

import yfinance as yf

from datetime import datetime, timedelta
x=datetime.now()
date_N_days_ago = datetime.now() - timedelta(days=7)
print(date_N_days_ago)
msft = yf.Ticker("MSFT")
data_df = yf.download("MSFT",start=date_N_days_ago.strftime("%Y"+"-"+"%m"+"-"+"%d"), interval="1m", end=x.strftime("%Y"+"-"+"%m"+"-"+"%d"))

data_df.to_csv('ds.csv')
4

1 回答 1

1

默认情况下 yfinanceperiod='max'作为参数。要在开盘时间仅获得最后一天或盘中,您必须自己指定此参数。在你的情况下:

data_df = yf.download("MSFT",start=date_N_days_ago.strftime("%Y"+"-"+"%m"+"-"+"%d"), interval="1m", end=x.strftime("%Y"+"-"+"%m"+"-"+"%d"))

只需打开该功能以获取更多详细信息。这是可能的值period- 始终取决于您的interval

period : str
            Valid periods: 1d,5d,1mo,3mo,6mo,1y,2y,5y,10y,ytd,max
            Either Use period parameter or use start and end

例如period='6m', interval='1d',雅虎使用 1d 蜡烛提供的最大数量

于 2020-09-08T05:53:48.430 回答