仓位管理决定生存底线
中线波段操作持有周期通常在数周至数月,价格波动空间较大。单笔交易风险敞口不得超过总资金的2%,总持仓风险不超过6%。股票账户中,单只个股仓位上限设为20%,同一行业板块合计不超过40%。期货账户因杠杆效应,名义本金暴露需压缩至账户权益的3倍以内。使用凯利公式的分数版本计算最优仓位:
# 计算中线波段仓位比例
win_rate = 0.55 # 历史胜率
reward_risk = 2.5 # 盈亏比
kelly = win_rate - (1 - win_rate) / reward_risk
position = max(0, min(kelly * 0.5, 0.2)) # 半凯利,上限20%
print(f"建议仓位: {position:.2%}")
动态调整依据账户净值曲线,连续回撤超过8%时,仓位系数乘以0.7。期货保证金监控每日进行,当可用资金低于维持保证金的150%时,强制减仓。
止损与止盈的量化设定
中线波段止损不能依赖固定百分比。股票使用ATR(平均真实波幅)的2倍作为初始止损,期货使用1.5倍ATR。入场后价格反向运动触及止损位,无条件离场。移动止损在浮盈达到1倍ATR后启动,跟踪止损距离为1.2倍ATR。
import numpy as np
def atr_stop(high, low, close, period=14):
tr = np.maximum(high - low, np.abs(high - close.shift(1)))
tr = np.maximum(tr, np.abs(low - close.shift(1)))
atr = tr.rolling(period).mean()
return atr
# 股票多头止损 = 入场价 - 2 * ATR
# 期货空头止损 = 入场价 + 1.5 * ATR
止盈采用分批离场。第一目标为2倍ATR,减仓50%;第二目标为3.5倍ATR,再减30%;剩余20%用20日均线跟踪。期货因合约到期,需在交割月前一个月逐步平仓。

波动率过滤与信号确认
中线波段避开高波动率环境。VIX指数高于30时,股票仓位减半;期货品种的20日历史波动率超过过去一年80分位数时,禁止新开仓。使用布林带宽度过滤:当带宽(上轨-下轨)/中轨 > 0.15,视为趋势过热,等待收缩。
量化信号需三条件共振:日线MACD金叉或死叉、价格站上20日均线、成交量突破5日均量1.5倍。期货额外检查持仓量变化,持仓量连续3日下降则信号失效。
def signal_filter(close, volume, macd, signal, ma20):
cond1 = macd > signal
cond2 = close > ma20
cond3 = volume > volume.rolling(5).mean() * 1.5
return cond1 & cond2 & cond3
杠杆与保证金风险
期货中线波段杠杆控制在3倍以内。若使用5倍杠杆,价格反向波动20%即爆仓。保证金占用率不超过60%,留出40%缓冲应对跳空。股票融资买入时,维持担保比例低于130%将遭强制平仓,中线波段融资比例不超过自有资金的30%。
跨品种对冲降低系统性风险。持有股票多头时,可做空对应股指期货, Beta对冲比例 = 股票组合Beta / 股指期货Beta。期货跨期套利中,近月与远月价差超过历史均值2倍标准差时,进行反向操作。
回撤管理与心理纪律
设定账户最大回撤阈值15%。达到10%时,所有仓位减半;达到12%时,只保留盈利仓位;达到15%时,清仓并停止交易一周。每日记录净值曲线,计算滚动最大回撤。
def max_drawdown(equity):
peak = equity.cummax()
dd = (equity - peak) / peak
return dd.min()
心理纪律通过规则自动化实现。禁止在亏损仓位上加仓,禁止在止损后立即反向开仓。每笔交易前写下入场理由、止损位、止盈位、仓位大小。交易日志每周复盘,统计胜率、盈亏比、最大连续亏损次数。
流动性风险与滑点控制
股票选择日成交额大于5亿元的品种,期货选择主力合约。开仓使用限价单,避免市价单冲击成本。滑点预算为ATR的0.1倍,超过则放弃该笔交易。
夜盘与日盘交替时段,期货流动性下降,中线波段调仓避开开盘后15分钟与收盘前15分钟。股票避开集合竞价阶段。
事件驱动风险对冲
财报发布、央行议息、地缘冲突等事件前,中线波段仓位降低50%。使用期权保护:持有股票多头时,买入虚值看跌期权,权利金不超过持仓市值的1.5%。期货持有空头时,买入虚值看涨期权。
量化监控事件日历,自动触发减仓。事件过后波动率下降,重新评估信号入场。
组合层面风险预算
将总资金分配到3-5个不相关的中线波段策略:股票趋势、期货套利、跨品种对冲、波动率均值回归。每个策略风险预算相等,单个策略亏损达到总资金的3%时,暂停该策略两周。
风险价值(VaR)计算:95%置信度下,组合单日VaR不超过总资金的2%。使用历史模拟法,取过去250个交易日收益率分布。
def var_95(returns):
return np.percentile(returns, 5)
压力测试:假设股票指数单日下跌7%,期货商品单日下跌5%,计算组合损失。若损失超过总资金10%,调整仓位结构。
执行与监控系统
建立自动化监控看板,实时显示:总仓位、净暴露、止损距离、保证金占用率、滚动回撤、波动率分位数。每15分钟刷新一次。期货夜盘时段,设置价格预警,触发止损条件时自动发送指令至交易接口。
代码层面,使用事件驱动回测引擎验证中线波段规则。回测包含滑点、手续费、冲击成本。样本外测试至少覆盖一轮牛熊周期。
风险控制的核心是承认不确定性。任何模型都有失效期,中线波段操作者需保留现金储备,在极端行情中拥有抄底或补仓能力。现金比例不低于总资金的20%。