【问题标题】:How to download monthly frequency stock closing price from yahoo finance using python如何使用python从雅虎财经下载月度股票收盘价
【发布时间】:2018-09-23 06:22:05
【问题描述】:

我正在尝试使用 fix_yahoo_finance 拉动任何股票代码的月度开盘价、收盘价、最高价、最低价,但以下代码未按月度获取数据。

知道如何获取这些数据。

下面是代码。

from datetime import date as d
from monthdelta import monthdelta
import datetime
from datetime import timedelta
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import pandas_datareader.data as web
import fix_yahoo_finance as fyf

to_period=d.today()
from_period=d.today() - datetime.timedelta(days=5*365)   


#######downloading data
TickerName = 'V'
stock_data=fyf.download(TickerName,start=from_period,end=to_period,interval='monthly')
stock_data = stock_data.iloc[:,0:4].round(2)
print(stock_data.tail(10))

【问题讨论】:

    标签: python-3.x stock


    【解决方案1】:

    请继续获取每日柱,然后您可以将resampleDataFrame 从每日变为每月。以下是我的完整代码:

    import pandas as pd
    from pandas_datareader import data as pdr
    import fix_yahoo_finance as yf 
    import datetime
    
    yf.pdr_override() 
    #these are the stocks we can choose in our portfolio
    stocks = [
    'AAPL'
    ]
    
    startD = '2017-01-01'
    endD = '2019-01-29'
    
    start_date = pd.to_datetime(startD) 
    end_date = pd.to_datetime(endD)
    data = pdr.get_data_yahoo(stocks, start=start_date, end=end_date)#['Adj Close']
    
    # using resample to group daily bar into monthly bar
    n = 1  
    mon_data=pd.DataFrame(data['Adj Close'].resample('BM').apply(lambda x: x[-1-n])) 
    
    end_of_months = mon_data.index.tolist()
    end_of_months[-1] = data.index[-1]
    mon_data.index = end_of_months
    
    mon_data.index = mon_data.index - datetime.timedelta(days=n)
    
    #downloading the data from Yahoo! Finance
    def download_data(stocks):
        data = pdr.get_data_yahoo(stocks, start=start_date, end=end_date)['Adj Close']  
        return data
    
    if __name__ == "__main__":
        data = download_data(stocks)
    
    print(mon_data)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-11-03
      • 1970-01-01
      • 2021-07-10
      • 2013-11-06
      • 2022-01-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多