如何运行‘import data’操作?及指定Python脚本运行方法咨询
运行你的股票组合脚本&实现数据导入指南
嘿,我来帮你搞定这两个核心问题——顺利运行现有脚本,以及实现import data的操作,一步步来:
一、先把你的脚本跑起来
首先,我帮你把提供的基础代码整理成规范的格式,确保结构清晰:
#------------必要变量--------------# import datetime as dt symbols = ['INTC','VZ','AAPL', 'AMZN', 'MSFT', 'CAT', 'AXP', 'BA', 'GE', 'CVX', 'HD', 'NKE', 'PFE', 'MMM', 'TRV', 'UTX', 'MRK', 'DIS', 'DWDP', 'JNJ'] allocations = [25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25] start_date = dt.date(2017, 1, 3) # 基准指数 bench_symbol = "SPY" # RF格式:6 MO、2 YR等 rate = '1 YR' rf_start_date = dt.date(2017, 1, 3) # 这里补全了未写完的日期,你可按需调整
运行步骤:
- 把上面的代码保存成一个
.py文件,比如命名为portfolio_analysis.py - 打开终端/命令行,进入文件所在的文件夹
- 执行命令:
python portfolio_analysis.py(如果你的系统默认Python3是python3,就用python3 portfolio_analysis.py)- 目前这个脚本只是定义变量,运行后不会有输出,你可以加一行
print(symbols)来测试是否能正常执行
- 目前这个脚本只是定义变量,运行后不会有输出,你可以加一行
二、实现import data操作(导入股票历史数据)
你需要的应该是导入这些股票的历史行情数据,这里推荐用yfinance库(免费稳定,无需API密钥),具体操作如下:
1. 先安装依赖库
在终端执行:
pip install yfinance pandas
2. 在脚本中添加数据导入代码
把下面的代码加到你的变量定义之后,就能实现完整的数据导入:
import yfinance as yf import pandas as pd # 定义数据导入函数 def import_stock_data(symbols, start_date): # 将datetime.date格式转为yfinance需要的字符串格式 start_str = start_date.strftime("%Y-%m-%d") # 下载股票的复权收盘价数据(最常用的分析数据) stock_data = yf.download(symbols, start=start_str)['Adj Close'] # 单独下载基准指数SPY的数据 bench_data = yf.download(bench_symbol, start=start_str)['Adj Close'] return stock_data, bench_data # 调用函数导入数据 stock_prices, bench_prices = import_stock_data(symbols, start_date) # 可选:打印前5行数据验证导入结果 print("股票组合数据预览:") print(stock_prices.head()) print("\n基准指数SPY数据预览:") print(bench_prices.head())
3. 关于无风险利率(RF)的导入
如果需要获取你指定的1 YR国债收益率,用yfinance也能轻松实现:
# 导入1年期国债收益率数据(代码为^IRX) rf_data = yf.download('^IRX', start=rf_start_date)['Adj Close'] print("\n1年期无风险利率数据预览:") print(rf_data.head())
这样你就能完整实现数据导入,后续可以基于这些数据做组合收益率计算、回测等分析啦。
内容的提问来源于stack exchange,提问作者ASH
相关产品推荐
相关产品推荐

