一,背景

该算法基于的背景是每月投资一百五十元左右的纳指和标普基金而设计的。旨在降低投资风险,避免单年出现过高亏损。

二,算法

理论基础

以下是和该算法相关的一些指标

指标 公式 含义
MA20 / MA60 最近 20 / 60 日收盘价均值 短期/中期持仓成本线
趋势 MA20 > MA60 → 多头排列,否则空头排列 中期趋势方向
回撤 DD (现价 − 近120日最高) ÷ 近120日最高 × 100% 相对近期高点的下跌深度
修复进度 (现价 − 近60日最低) ÷ (近60日最高 − 近60日最低) 从坑底爬回的比例(0~1)
回撤持续时间 距最近一次创”运行新高”(全部历史最高)的交易日数 市场多久没创新高了,区分 V 型急跌 vs L 型阴跌

决策选择

回撤 DD 档位 信号
DD ≥ 0% -1 高位不追,持有
-5% ≤ DD < 0% 0 观望
-10% ≤ DD < -5% 1 建议加仓1档
-15% ≤ DD < -10% 2 建议加仓2档
DD < -15% 3 建议加仓3档

② 趋势过滤(防接飞刀):档位 ≥1 且空头排列(MA20<MA60)→ 档位降 1,提示”趋势未企稳,建议分批”。

③ 修复确认(右侧辅助):修复进度 ≥0.6 且 回撤 ≤-5% → 追加提示”企稳修复确认,可右侧加仓”。

④ 长回撤暂停(防 L 型阴跌):回撤持续时间 ≥ 120 个交易日(约半年)趋势空头 → 暂停额外加仓(C类不买,A类定投照常)。依据:市场长时间不创新高 + 空头排列,更可能反映结构性下行(2022 式阴跌)而非临时回调;用可观测的”持续时间”替代不可靠的”预计修复周期”。--pause-days 可调(0=关闭,250≈一年)。

执行

规则 默认值 说明
A类 每基金 10(或 3) 元 默认定投照常,长期持有,不看信号
C类买入 档位 ≥ 2 时买 10(或 3) 元 “大规模加仓”= 动用 C 类额度;7 天内刚买过则跳过
C类止盈 回撤修复至 -2%以内(接近新高)且 MA20 > MA60 时 建议卖出;不足 7 天提示”赎回费 1.5%,别卖”
赎回费 <7天 1.5% / 7~29天 0.5% / ≥30天 0% 决定卖出时机的硬约束

三,效果验证

分别使用纳斯达克和标普500收益最差的一年的数据来模拟,分别为2022和2008年。从收益率和预测效果来验证。

收益率

2022年纳斯达克100的全年跌幅为-33.0%,如果使用该算法定投全年收益率为-14.8%。
2008年标普500的全年跌幅为-38.5%,如果使用该算法定投全年收益率为-24.9%。

预测效果

指数 年份 1档信号后60日 2档信号后60日 3档信号后60日
纳指100 2022 -9.5% -2.2% -2.2%
标普500 2008 -12.6% -8.4% —

四,优点

1.实现起来简单

该算法本质上是一种简单的低买高卖结合上一些if else决策。不管是自己写还是用ai来完成都很容易。数据可以从新浪美股上获得。

2.帮助减少亏损效果显著

由实验数据可知该算法不会出现追涨杀跌的情况,能够有效减少亏损。

五,缺陷

1.该算法本质上还是依赖定投的效果,策略并没有特别大的创新

2.实验不严谨

仅仅验证了最差时候的效果,没有对于每一年的数据进行对比。而且没有和纯定投进行对比,无法证明选择性加仓定投确实优于纯定投。

3.策略过于保守

加仓与否完全取决于是否是在回撤,如果当年是牛市,这种谨慎的策略显然会错过很多机会。

六,总结

接下来应该就会以该策略来进行投资,同时会再做一些实验来验证和优化。同时也可以尝试其他方案,比如每天投5元(广发纳斯达克),根据算法运行结果来判断当天是否额外买入。对于卖出这一块其实可以看个人,如果卖出过快可能会错过一些机会。希望这篇文章可以为读者以及后续阅读的自己提供一些灵感。