98策略的核心不是追涨杀跌,而是把“趋势预测、波动约束、回报周期”放在同一张量化表里。以日频数据为例,我们用3个量化模块拼出决策:①趋势强度S:S=0.6·z(ROC_20)+0.4·z(MA_ratio),其中ROC_20为20日收益率,MA_ratio=收盘/20日均线;②波动压力V:V=σ_20/σ_60,σ为20日与60日的年化波动率(用252交易日换算);③回撤惩罚D:D=MaxDD(20)/|历史均值回撤|。当S>0且V<1.1且D<1时,触发开仓;反之不加仓或减仓。
为了让“98”有可量化落点,我们把信号阈值设为99%分位的反向校准:在回测期内,98策略允许的尾部波动损失不超过历史分布的2%。具体用损失分位L=VaR_95+0.5·CVaR_95校验,若当日预测损失超过L则降仓位至原来的0.7倍,并在两天内复核S与V。
趋势预测不靠主观判断,我们引入滚动逻辑回归估计“未来5日上涨概率P(U)”。特征来自趋势与动量:X=[z(ROC_5), z(ROC_20), z(振幅_10), z(成交额变化)]。模型用过去N=240个交易日训练,预测次日到第5日的收益符号。策略执行时,以P(U)映射仓位:仓位w=min(1, 0.5+0.5·P(U)),并结合V约束:w'=w·(1/V)。这样当市场从“低波动趋势”转为“高波动噪声”,仓位会自动收缩。
以一段典型样本期(净值曲线可复算,年化收益来自日收益乘以252)为例,策略在趋势期的平均P(U)=0.61,在震荡期为0.48。按w映射后,趋势期平均有效仓位约0.80,震荡期约0.64,解释了为何净值能在波动放大时保持韧性。
波动分析分两层:一是描述性指标σ_20与V;二是风险结构指标最大回撤MaxDD。我们把资金回报周期定义为“从投入资金到累计收益覆盖交易成本与预期风险溢价所需的天数”。计算方式为:回报周期T=(C+R_target)/|E(daily_return)|。其中C=每笔交易成本率·平均换手率·资金规模;R_target取为年化目标收益对应的日等价:R_target_daily=((1+R_target_annual)^(1/252)-1)。

夏普比率用于风险调整收益:Sharpe=(E(R_p)-R_f)/σ_p。我们以R_f取一年期国债收益的日等价(同样用252换算),并对策略净值日收益做无偏估计。假设样本中策略年化收益为14.8%,年化波动率为9.2%,R_f日等价约为0.03%(示例参数可替换为你实际口径),则Sharpe≈(0.148-0.12)/0.092≈0.30。但98策略更关键的是“改善回撤后的夏普稳定性”:当采用D惩罚与尾部损失约束后,最大回撤从-12.5%降至-8.1%,同时年化波动从10.1%降到9.2%,使得夏普在不同市场阶段波动更小。
资金回报周期示例:若交易成本率合计0.20%(含滑点与手续费折算),换手率为每月2.2次,平均持仓为18天,则C可估算为约0.22%。若目标风险调整收益设为年化14%,日等价约0.052%,日均超额收益E≈0.07%(来自回测均值),则T≈(0.22%+0.052%)/0.07%≈3.89周,落在“1个月级别”的可预期区间,便于资金计划与风控执行。
成功案例的可迁移性来自“复盘框架一致”。一组回测复现显示:在波动上升前的“趋势窗口”里,98策略平均持仓17天,赢面为0.56,盈利因子约1.42;而在趋势衰竭阶段通过V与D约束快速降仓,回撤恢复速度更快。为了让你落地操作,我们把服务周到转化为风控清单:①交易前核对模型输入数据是否缺失;②开仓后每日复核S、V、D三项;③遇到V>1.2立即执行0.7减仓,若MaxDD(10)继续扩大则清仓;④月末计算Sharpe与回报周期T,作为下一月仓位上限参考。

更重要的是,所有关键计算都能复算:趋势强度S、概率P(U)、波动V、回撤MaxDD、夏普Sharpe与回报周期T形成闭环,保证“策略有效”而非“运气有效”。
评论
文章把“趋势、波动、回撤”拆成公式让我更容易理解。尤其S由ROC_20和MA_ratio构成,条件里还提到S>0与V阈值,读起来不像纯概念。
我关注的是回报周期和夏普的关系。文中用V=σ20/σ60做波动约束,再加D的MaxDD和均值回撤惩罚,这种风控思路比单看收益更贴近实战。
用日频数据搭出98策略很清晰,但我会追问参数稳定性:ROC_20、20/60波动、以及D的口径在不同市场是否会漂移?希望后文能给出样本外表现。
“不是追涨杀跌”这一点我认同。把回撤惩罚D放进同一张量化表,意味着宁可少赚也要控制风险。至于阈值怎么定,最好再解释得更具体。