探索定投囤币方案之基于指标择时定投
上篇文章测试了在加密货币市场上定期定额定投的表现,以求能囤到足够价码的加密货币。
本文我们继续这个话题,尝试基于技术指标定投。
在币圈你会看到一些 KOL 喜欢推崇 DCA,定期定额投入不要考虑时机。于是,我就想实际测试,是不是择时真的无效,无法战胜定期定额的 DCA 呢?
注意:本文仅为个人随笔与思考,不构成任何投资建议。市场有风险,投资需谨慎,请务必独立研究。
如果你对本文中的回测代码感兴趣,请访问代码仓库:dcastrategy_backtest。希望没有错误。
提前说明
定期定额方案最大优势是,能保证在固定时间内能投入足够金额购买加密货币,最大化资金利用。但这种方式在成本价上没有任何优化。
如果加入择时能力,是否降低囤币的成本价呢?
指标定投是带有择时的能力的,但指标定投时机不确定,无法明确特定时间范围得的投资次数,这是指标定投的最大缺点。
为便于和定期定额比较,我们只比较买入的成本价。最基本的目标,成本价要能战胜定期定额。
还有,为了尽量保证指标定投能买入到足够金额的币,记录下整个定投周期的定投次数,反推每期定投的金额,尽可能防止每期投入过多或太少,导致资金不足或剩余太多现金。
如你的工资是每月3000 美金,每月有 1000 美金可用于投资加密货币,那五年的总投入总额就是 6 万美金。
假设回测过去五年,满足定投的次数有 600 次,那每笔定投的金额就控制在100美金即可。
如果出现连续几个月的时间没有机会,每月积累的资金可用来套利,等待时机进行定投。
当然,有可能刚开始定投就遇到了连续出现定投机会,这时候可能出现预算不足的情况,这时要抉择是否预支接下来几个月的资金满完成定投计划了。
本文将尝试分析基于指标定投的策略表现,主要用趋势和震荡指标进行定投。
品种和时间线
为了和上文的定期定额进行比较,回测品种依然是 BTC,而回测时间还是从 2020-01-01 到 2024-12-01。
震荡指标定投
首先是基于震荡指标定投,选择两个最常用的震荡指标: RSI 和布林带。定投规则是,只有在处于超跌状态才进行定投。

这两个指标超跌状态的定义:
- 对于 RSI,RSI < 30 表示当前处于超跌状态;
- 对于布林带,当前价格位于布林带下轨表示当前处于超跌状态;
如下是 RSI 的定投表现。
| 周期 | 成本 | 定投次数 |
|---|---|---|
| 每周 | 20498.27 | 5 |
| 每日 | 17984.03 | 59 |
| 每四时 | 21246.42 | 464 |
| 每小时 | 22992.13 | 1980 |
如下是布林带的定投表现。
| 周期 | 成本 | 定投次数 |
|---|---|---|
| 每周 | 21168.85 | 5 |
| 每日 | 21792.87 | 83 |
| 每四时 | 23619.99 | 669 |
| 每小时 | 24136.93 | 2682 |
上篇文章测试定期定额的成本价,普遍在 2.3 万附近,这里通过指标定投的大部分成本价都在 2.2 万以下,基本都能战胜定期定额。
总体而言,基于日线 RSI 超跌状态的定投次数最合理,5年时间一共有 59 次定投机会,同时成本价 17984 也是最低的,相较于定期定额的 2.3 万成本价,这个优势还是更强的。
看起来基于超跌指标定投是个不错的方案。
不过在测试 ETH 的定投时,我发现在 2020-01-01 到 2024-12-31 期间,ETH 的定期定额(成本价 800 多)优于指标定投(成本价是 900 多)的,这里的重要原因就是 ETH 在2020 年的涨幅太大,从 120 附近暴涨涨到了 900 多,拉高了超跌定投的成本价。
不过那种暴涨毕竟是少数,如果去掉这一年,从 2021-01-01 开始,超跌定投明显优于定期定额。
如果你想自己测试,对应的代码地址:RSI 定投,布林带定投。
趋势指标定投
虽然说在上面的测试中,超跌指标优于定期定额。但如果仔细观察图表会发现,经常有在超跌状态出现依然会持续很长一段时间的下跌。
能不能等出现趋势反转时,再入场定投呢?从而防止抄底抄在半山腰呢?

我们验证下这个想法吧。
如果定义可能的趋势反转状态呢?我想到的就是长期下跌后出现趋势反转的信号。
首先,如何定义长期下跌?
简单点,就是短期均线长期位于长期均线下方。
如何定义反转呢?
就是短期均线和长期均线发生金叉。
当然你可以选择其他定义,我这里就测试这一个就行了。这逆势反转的定义,参数较多,相对比超跌复杂,你的选择对表现影响应该是挺大的。
我长期观察,短期10 EMA 均线和长期 20 EMA 均线对趋势判断效果不错,这里就用这个参数来测试。
定投时机的定义是,如果短期 10 EMA 位于长期 20 EMA 超过 20 个时间周期后出现金叉,进行定投。
如下是测试结果:
| 周期 | 成本 | 定投次数 |
|---|---|---|
| 每周 | 22932.91 | 1 |
| 每日 | 19812.84 | 15 |
| 每四时 | 21617.82 | 94 |
| 每小时 | 23392.95 | 414 |
看起来效果还不错,总体还是日线定投的效果最好,依然是大部分周期都能战胜定期定额的 2.3 万的成本价。
不过相较于直接在超跌就定投并没有什么优势。这或许是因为 BTC 长期上涨的趋势比较好,超跌信号的有效性比较强。
如果在 ETH 上测试,等反转信号出现在进行定投的表现会优于超跌状态就定投的表现,应该是因为 ETH 最近几年一直处于大的震荡区间。
我这里没有做任何参数优化,就是长期观察,拍脑袋得到的参数。如果你有兴趣,可以考虑做一些参数优化,或是基于这个大思路定义你的长期下跌会趋势反转量化方式。
如果你想自己测试,对应的代码地址:EMA 回测。
最后
本文回测了采用指标择时定投的思路,总体表示还是优于无脑的定期定额,不过这里如果要保证足额投入,还要从回测的定投次数去反推每期的定投金额,防止过于自信,早早把手里的子弹耗尽。
最后,希望本文能给你带来一些不一样的思考。
