量化交易的知识框架与方法论体系,包含策略生成器、评估器、信号系统、回测引擎等核心模块
| 定位 | 内容 |
|---|---|
| 知识框架 | 理论体系、方法论、策略逻辑 |
| 实施路径 | 策略执行脚本、配置模板 |
| 研究平台 | Streamlit可视化界面(独立项目 quant-platform) |
quant-method/
├── src/
│ ├── core/ # 核心层:数据模型、配置、策略基类
│ ├── strategy/ # 策略层:生成器、评估器、因子注册
│ │ ├── generator/ # 策略生成器
│ │ │ ├── factor_registry.py # 因子注册中心
│ │ │ └── rule/ # 规则策略
│ │ │ ├── template_engine.py # 策略模板引擎(14种策略)
│ │ │ ├── small_cap.py # 小市值策略族
│ │ │ ├── market_risk.py # 大盘风控
│ │ │ └── rebalance.py # 调仓调度
│ │ └── evaluator/ # 策略评估器
│ │ ├── strategy_evaluator.py # 多策略对比评估
│ │ └── platform_adapter.py # 平台适配器(聚宽/米筐/QMT)
│ ├── signals/ # 信号层:技术指标、信号评分、缠论
│ ├── risk/ # 风险层:VaR/CVaR、Greeks、资金管理
│ ├── backtest/ # 回测层:向量化/事件驱动回测
│ ├── analysis/ # 分析层:因子库、绩效归因
│ └── utils/ # 工具层:日志、格式化、验证
├── docs/ # 文档:GS Quant知识体系、平台对比分析
├── configs/ # 配置模板
├── examples/ # 示例代码
└── tests/ # 测试用例
| 类别 | 策略 | 说明 |
|---|---|---|
| 趋势跟踪 | 均线交叉 | MA5/MA20金叉死叉 |
| 突破策略 | 20日高点突破 | |
| MACD策略 | MACD信号线交叉 | |
| 动量策略 | 12个月动量 | |
| 均值回归 | 均值回归 | 价格偏离均值 |
| RSI策略 | RSI超买超卖 | |
| 布林带策略 | 布林带突破 | |
| 小市值 | 经典小市值 | 流通市值选股 |
| 稳健小市值 | 低波动+小市值 | |
| 激进小市值 | 高增长+小市值 | |
| 低价小市值 | 低股价+小市值 | |
| 换手小市值 | 高换手+小市值 | |
| 量价 | 量价策略 | 成交量异常放大 |
from quant_method import TemplateType
# 趋势跟踪类
TemplateType.TREND_MA_CROSS # 均线交叉
TemplateType.TREND_BREAKOUT # 突破策略
TemplateType.TREND_MACD # MACD策略
TemplateType.TREND_MOMENTUM # 动量策略
# 均值回归类
TemplateType.MEAN_REVERSION # 均值回归
TemplateType.MEAN_RSI # RSI策略
TemplateType.MEAN_BOLLINGER # 布林带策略
# 小市值类
TemplateType.SMALL_CAP_CLASSIC # 经典小市值
TemplateType.SMALL_CAP_STABLE # 稳健小市值
TemplateType.SMALL_CAP_AGGRESSIVE # 激进小市值
TemplateType.SMALL_CAP_LOW_PRICE # 低价小市值
TemplateType.SMALL_CAP_TURNOVER # 换手小市值pip install quant-method或从源码安装:
git clone https://github.com/your-org/quant-method.git
cd quant-method
pip install -e .from src.quant_method import (
QuantitativeAnalyzer,
StrategyTemplateEngine,
StrategyEvaluator,
TemplateType
)
# 创建分析器
analyzer = QuantitativeAnalyzer()
# 分析股票
result = analyzer.analyze('000001.SZ')
print(f"共振评分: {result.resonance.total_score}")
# 生成策略
engine = StrategyTemplateEngine()
config = engine.create_strategy(
strategy_type=TemplateType.TREND_MA_CROSS,
stock_pool=['000001.SZ', '600519.SH'],
start_date='2024-01-01',
end_date='2024-12-31'
)
# 评估策略
evaluator = StrategyEvaluator()
result = evaluator.evaluate(config)
print(f"年化收益: {result.annual_return:.2%}")from quant_method import StrategyEvaluator, MetricsCalculator
# 多策略对比
strategies = [
TemplateType.TREND_MA_CROSS,
TemplateType.MEAN_RSI,
TemplateType.SMALL_CAP_CLASSIC
]
evaluator = StrategyEvaluator()
comparison = evaluator.compare_strategies(
strategies=strategies,
stock_pool=['000001.SZ', '600519.SH'],
start_date='2024-01-01',
end_date='2024-12-31'
)
# 雷达图对比
evaluator.plot_radar_chart(comparison)from quant_method import FactorRegistry, register_factor, compute_factor
# 注册自定义因子
@register_factor('my_factor')
class MyFactor(BaseFactor):
def compute(self, data: pd.DataFrame) -> pd.Series:
return data['close'] / data['open'] - 1
# 计算因子
factor_values = compute_factor('MA5', data)from quant_method import StrategyTemplateEngine, TemplateType
engine = StrategyTemplateEngine()
# 创建均线交叉策略
config = engine.create_strategy(
strategy_type=TemplateType.TREND_MA_CROSS,
params={
'fast_ma': 5,
'slow_ma': 20,
'position_pct': 0.3
}
)from quant_method import MarketRiskController, RiskMode
risk_controller = MarketRiskController(
mode=RiskMode.HYBRID,
ma_periods=[20, 60],
momentum_periods=[20, 60]
)
# 检查是否需要止损
should_stop = risk_controller.should_stop_loss(market_data)from quant_method import RebalanceScheduler, RebalanceFreq
scheduler = RebalanceScheduler(
frequency=RebalanceFreq.WEEKLY,
day_of_week=5, # 周五
hour=15
)
# 获取下次调仓日期
next_rebalance = scheduler.get_next_rebalance_date()from quant_method import StrategyExporter, Platform
exporter = StrategyExporter()
exporter.export(
strategy_config=config,
platform=Platform.JOINQUANT,
output_path='strategy.py'
)- 技术面:均线、MACD、KDJ、RSI、布林带
- 基本面:财务指标、估值、业绩
- 资金面:资金流向、主力动向
- 形态面:K线形态、缠论
- 风险面:VaR、CVaR、Greeks
- 7维度加权评分
- 0-100分制
- 级别标注:强共振/中性/弱信号
参考 BigQuant 分类:
- 选股策略:因子选股、小市值、价值投资
- 择时策略:均线择时、MACD择时
- 套利策略:配对交易、统计套利
pandas>=1.5.0
numpy>=1.21.0
tushare>=1.3.0
akshare>=1.10.0
scikit-learn>=1.0.0
xgboost>=2.0.0
arch>=7.0.0
MIT License