查看全集:💎Quantopia量化分析56讲
# 示例代码:使用yfinance获取苹果和微软的收盘价数据
import yfinance as yf
import matplotlib.pyplot as plt
# 获取2014年数据(日频)
data = yf.download(['AAPL', 'MSFT'], start='2014-01-01', end='2015-01-01')
# 提取收盘价并绘图
close_prices = data['Close']
close_prices.plot(figsize=(10, 6))
plt.title('Apple vs Microsoft Closing Prices (2014)')
plt.ylabel('Price (USD)')
plt.show()
成交量是指在一定时间内某资产成交的总数量。例如:
假设某股票在三笔交易中分别成交:
import numpy as np
shares = np.array([30000, 60000, 10000])
prices = np.array([30, 31, 33])
# 计算美元成交量
dollar_volume = np.dot(shares, prices) # 输出:3,090,000美元
# 计算成交量加权平均价
vwap = np.dot(shares, prices) / shares.sum() # 输出:30.9美元
通过分析分钟级成交量数据,可以发现:
# 获取SPY的分钟级数据
data = yf.download('SPY', start='2023-01-03', end='2023-01-04', interval='5m')
# 绘制单日成交量
plt.plot(data['Volume'])
plt.title('Intraday Volume Pattern')
plt.ylabel('Shares Traded')
典型特征:
当大额订单难以立即成交时,市场价格会朝不利方向移动:
因素 | 影响方向 |
订单规模 ↑ | 滑点 ↑ |
市场深度 ↓ | 滑点 ↑ |
波动率 ↑ | 滑点 ↑ |
假设策略预期以30美元买入:
流动性好坏取决于:
# 比较不同资产的流动性
assets = ['AAPL', 'CL=F', 'GC=F'] # 苹果股票、原油期货、黄金期货
data = yf.download(assets, period='6mo', interval='1d')['Volume']
data.plot(figsize=(10,6))
plt.title('Comparative Liquidity Across Assets')
plt.ylabel('Daily Volume')
典型特征:
# 练习:计算微软股票2022年的日均成交量
msft = yf.download('MSFT', start='2022-01-01', end='2023-01-01')
avg_daily_volume = msft['Volume'].mean()
print(f"Microsoft 2022 Average Daily Volume: {avg_daily_volume:,.0f} shares")
关键公式总结:
通过本指南,您已掌握市场微观结构的关键要素。在实际交易中,建议持续监控流动性指标,并建立动态调整机制以适应市场变化。