1. 多资产数据获取与清洗#
使用yfinance同时获取阿里巴巴(BABA)、京东(JD)在2021-2023年的完整交易日数据:
-
验证数据集是否存在缺失值
-
用向前填充法处理Open/High/Low/Close的缺失数据
-
对Volume字段缺失值填充0
code
import yfinance as yf
import pandas as pd
tickers = ['BABA', 'JD']
raw_data = yf.download(tickers, start='2021-01-01', end='2023-12-31')2. 波动率曲面分析#
获取英伟达(NVDA)2020-2023年日线数据:
-
计算20日、60日、120日历史波动率(收益率标准差)
-
将波动率序列与股价走势绘制在双坐标轴图表
-
添加图例说明不同窗口长度的波动率特征
code
nvda = yf.download('NVDA', start='2020-01-01')['Close']3. 收益分布特征分析#
对比分析特斯拉(TSLA)与通用汽车(GM)在新冠疫情期间(2020-2021)的收益率分布:
-
计算两股票的日收益率偏度与峰度
-
绘制叠加直方图比较分布形态
-
添加正态分布曲线作为基准参考
code
import numpy as np
from scipy.stats import norm
pandemic_data = yf.download(['TSLA', 'GM'], start='2020-01-01', end='2022-01-01')['Close']4. 移动平均策略回测#
选取标普500ETF(SPY)2015-2020年数据:
-
构建双均线策略(20日与200日)
-
计算每日策略信号(短期均线上穿/下穿长期均线)
-
绘制价格与均线系统交互示意图
-
标注典型的金叉/死叉发生位置
code
spy = yf.download('SPY', start='2015-01-01', end='2020-12-31')['Close']5. 交易量异常检测#
分析苹果(AAPL)过去五年的交易量数据:
-
计算交易量的20日Z-Score指标:
-
标记Z-Score绝对值超过3倍的异常交易日
-
在价格走势图上用垂直标记线标注异常量能日
code
aapl_volume = yf.download('AAPL', period='5y')['Volume']