yfinance 国内使用,下载雅虎财经数据

本文基于2021年发布的FinRL框架,在第一步下载数据便遇到了问题

要么时区获取不到:No timezone found, symbol may be delisted

要么数据没有:No data found for this date range, symbol may be delisted

其实都是代理问题

FinRL: Deep Reinforcement Learning Framework to Automate Trading in Quantitative Finance

代码使用yfinance从雅虎财经获取股票数据,但国内访问不了,需要代理。

下面总结遇到的问题和解决方法

 

首先要有一个代理,然后找到代理的IP和端口,具体地:

yfinance 国内使用,下载雅虎财经数据_第1张图片

 这里端口号取决于自己的proxy,9981是我的

如果使用pycharm,则可以配置一下代理:

yfinance 国内使用,下载雅虎财经数据_第2张图片

 

重要的来了,pip安装的相当于是yfinance稳定版,在代理配置上有问题,因此,需要前往github找到其hotfix/proxy分支并下载覆盖至本地yfinance

https://github.com/ranaroussi/yfinance/tree/hotfix/proxy

yfinance 国内使用,下载雅虎财经数据_第3张图片

 找到本地Lib,替换这些就行,我的是conda   X:\Anaconda\envs\frlib\Lib\site-packages\yfinance

然后在download处添加proxy参数就可以了

temp_df = yf.download(tic, start=self.start_date, 
    end=self.end_date, threads=True, proxy='127.0.0.1:9981')

yfinance 国内使用,下载雅虎财经数据_第4张图片

 目前股票数据可以,指数还不行。

你可能感兴趣的:(python,算法,数据分析,数据挖掘)