You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

蒙特卡洛模拟脚本出现“data_source is not implemented error”报错

解决pandas_datareader的"data_source is not implemented error"问题

嘿,这个报错我之前踩过坑,问题根源就在这行代码里:

prices = web.DataReader('AAPL', 'Googl', start, end)['close']

核心问题拆解

  • 首先是拼写错误:你把谷歌财经的数据源名称写成了'Googl',正确拼写应该是'google'。但这里有个关键提醒:pandas_datareader已经移除了对谷歌财经数据源的支持——因为谷歌调整了财经API的接口规则,所以哪怕改对拼写,大概率还是会报错。

可行的解决方案

推荐换成雅虎财经数据源('yahoo'),不过需要先安装配套依赖库,现在pandas_datareader对接雅虎API需要借助yfinance。

步骤1:安装依赖

在终端里运行:

pip install yfinance pandas-datareader

步骤2:修改代码

把数据源参数改成'yahoo',同时注意雅虎返回的列名是大写的'Close'(不是小写的'close'),调整后的完整代码如下:

import pandas_datareader.data as web
import pandas as pd
import datetime as dt
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import style

style.use('ggplot')
start = dt.datetime(2018, 1, 3)
end = dt.datetime(2018, 3, 3)

# 改用雅虎财经数据源,列名对应大写的Close
prices = web.DataReader('AAPL', 'yahoo', start, end)['Close']
returns = prices.pct_change()
last_price = prices[-1]

# 继续你的蒙特卡洛模拟代码...

额外小贴士

如果之后雅虎数据源也出现访问问题,还可以考虑用'fred'(美联储经济数据)或者'stooq'这类稳定的数据源,不过它们覆盖的股票范围略有不同,按需选择即可。

内容的提问来源于stack exchange,提问作者Amateur Python Learner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:37:09