一、网格交易历史来源
网格交易的思路来源于信息论之父香农,上世纪 40 年代的某一天,香农在黑板上给大家演示了他的投资理论:
在任何一个价位,用资金的 50% 买入资产作为起始仓位,当价格上涨一定幅度就卖出一部分仓位套现,当价格下跌一定幅度就买入一部分仓位补仓,保持仓位和现金的比例始终为 50%:50%,香农始终采用了半仓的持仓方式,保持每年复利 29%,直到 50 岁得了老年痴呆症,才没能延续辉煌。
二、网格策略
根据香农仓位和现金 1:1 交易思路拓展为 n:1,n 表示网格数量,1 表示一份投资金额,把投资金额平均分布在 n 个网格上,随着行情在网格范围内波动,行情下跌时逐步加仓,行情上涨时逐步减仓,持仓会跟着行情动态变化,通过低买高卖赚取利润。
如下表一个 10 个格子的网格策略列表,价格排列为 等比数列,每格投资金额一样,从表格中可以看出当前网格卖出数量和下一格买入数量是相同的(例如序号 1 的卖出数量 0.265 和序号 2 的买入数量 0.265 是一样的),也就是低价买入,高价卖出相同数量仓位来赚取利润,如果行情在网格价格范围内振荡越频繁,收益就越高。
网格序号 | 买卖价格 | 买入数量 | 卖出数量 |
---|---|---|---|
0 | 400 | 0 | 0.257 |
1 | 389 | 0.257 | 0.265 |
2 | 378 | 0.265 | 0.272 |
3 | 367 | 0.272 | 0.28 |
4 | 357 | 0.28 | 0.288 |
5 | 347 | 0.288 | 0.297 |
6 | 337 | 0.297 | 0.305 |
7 | 327 | 0.305 | 0.315 |
8 | 318 | 0.315 | 0.324 |
9 | 309 | 0.324 | 0.333 |
10 | 300 | 0.333 | 0 |
三、网格类型
1. 普通网格交易
普通网格交易是一种动态调仓位的自动化交易策略,设定网格上限、下限和网格数量,根据网格上下限按一定方式 ( 等比、等差 ) 分为 N 个格,把总投资金额平均分散到每个格子,在低价买入高价卖出来赚取利润,如下图所示。
适用场景
只适合横盘振荡行情,不适合大涨或大跌行情,当行情上涨或下跌超过网格范围后,网格就会在等待状态,需要等到行情重新回到网格范围内才会交易。
优点
- 行情在网格价格范围内不需要判断行情方向就可以实现盈利。
- 启动网格后自动化交易。
缺点
- 相比持币待涨方式,资金利用率低,收益率也低。
- 行情大跌的时候很快满仓造成亏损比较大,行情大涨时很快清仓完,导致盈利低下。
- 需要使用者判断当前行情是否在心理上的中低价位,如果不挑选时刻盲目进场,入场时行情价格刚好在高位,很容易造成亏损。
2. 趋势网格交易
趋势网格是在普通网格交易基础上,添加网格自动跟随行情往上移动功能,以入场价为起点,当行情上涨超过网格最大值时,自动生成新网格,使得网格可以继续交易赚取利润,不需要人工干预,当行情下跌超过当前网格最小值后,网格会在等待状态,等到行情回到当前网格范围内才可以继续交易,如下图所示。
适用场景
只适合振荡上涨行情,因此需要用户选择恰当时机结束趋势网格来实现利润。因为行情持续下跌时的浮动盈亏会抵消到原来振荡上涨时赚取的利润,甚至亏损。
优点
- 行情在振荡或上涨情况下都可以实现盈利。
- 启动网格后自动化交易。
缺点
- 相比持币待涨方式,资金利用率低,收益率也低。
- 行情大跌的时候很快满仓造成亏损比较大。
- 行情下跌超出当前网格范围,造成网格会在等待状态,无法继续交易。
- 需要使用者判断当前行情是否在心理上的中低价位,如果不挑选时刻盲目进场,进场时行情价格刚好在高位,很容易造成亏损。
- 需要使用者判断当前行情是否在心理上为高位,结束网格来实现利润。
3 . 无限网格
无限网格和趋势网格交易类似,网格只有下限,没有上限,只需设置网格下限值和每格收益率,生成一个网格,当行情超过网格最大值时,买入一定仓位,自动挂更高的卖单,只要行情一直涨,都会跟随行情上涨下去。
适用场景
无限网格适合波动比较大、整体上涨的行情,适合连续执行半年以上。设置心理底价后直接进场,当行情下跌后分批抄底,当行情上涨至少也可以赚取利润。
优点
- 在波动比较大的行情下也不容易进入等待状态,可以持续套利盈利。
- 设置好参数运行后,不需要再关注行情,让其长期自动交易。
缺点
- 相对于网格交易,资金利用率更低,收益率也更低。
- 需要使用者判断当前行情是否在心理上的中低价位,如果不挑选时刻盲目进场,进场时行情价格刚好在高位,很容易造成亏损。
四、计算特定条件的最优网格
网格最理想情况是碰到反复振荡行情,遇到振荡行情,如果网格参数设置不合理,同样无法获得收益,甚至亏损。如果设置网格数少,并且网格间隔太大,虽然每格收益率大,但受制于行情振荡幅度,交易机会很小,收益也会少;如果网格数比较多,并且网格间隔太小,虽然交易机会比较多,但每次低买高卖的利润都不够手续费,造成亏损。因此设置好的网格参数不是随便设置网格数量、最小价格和最大价格就可以有收益了,需要平衡每格收益率和交易机会,与投资金额、买卖最小金额、手续费、当前行情价格、目标收益率有关,根据已知条件抽象出一条计算最优网格参数题目,如下所示:
已知品种 ethusdt 的当前价格 380,投资总金额 totalSum=100,每次买入或卖出最小金额 limitVolume=10,每次成功的买入或卖出订单手续费为 0.1%,网格在低价买入,然后高价卖出称为一次套利 arbitrage,套利减去买和卖手续费后得到利润 profit,每格收益率 profitRate=profit÷arbitrage×100%,要求 profitRate>0.1%,计算出最优的网格参数:
- (1) 网格数量 num,其中 5 <=num<=60;
- (2) 网格平均间距 intervalPrice,网格价格间隔越小,在行情震荡时出现套利机会越多;
- (3) 最优网格对应的最低价格 minPrice、最高价格 maxPrice、网格价格分布序列。
注:profitRate 越小,并且 intervalPrice 也越小时得到的网格参数认为最优。
根据已知条件计算得出最优网格参数如下:
- 网格数 num: 10
- 网格最低价格 minPrice: 370.88 USDT
- 网格最高价格 maxPrice: 401.28 USDT
- 网格平均间距 intervalPrice: 3.04 USDT
网格序列如下:
网格序号 | 买卖价格 | 买入数量 | 卖出数量 |
---|---|---|---|
0 | 401.28 | 0 | 0.025117 |
1 | 398.13 | 0.025117 | 0.025316 |
2 | 395.01 | 0.025316 | 0.025516 |
3 | 391.91 | 0.025516 | 0.025718 |
4 | 388.83 | 0.025718 | 0.025922 |
5 | 385.78 | 0.025922 | 0.026127 |
6 | 382.75 | 0.026127 | 0.026333 |
7 | 379.75 | 0.026333 | 0.026541 |
8 | 376.77 | 0.026541 | 0.026751 |
9 | 373.81 | 0.026751 | 0.026963 |
10 | 370.88 | 0.026963 | 0 |
根据投入金额和每格收益率即可计算出网格参数(最小价格、最大价格、网格数),通过程序方式计算出来的网格参数可以适合各种不同手续费的交易所,因此可以做到自动化生成网格策略的效果。
五、总结
普通网格、趋势网格、无限网格适应不同行情类型,各有优缺点,不能说哪种更好,如果行情在某个范围内频繁振荡,使用普通网格交易、趋势网格最适合,收益更高,如果行情长期出现大幅涨跌情况,选择无限网格更适合,无论哪种网格策略,选择进场的时机 (行情在低位) 非常重要。
世界上还没有完美的交易策略可以长期应对不可预测的行情,网格策略可以应对某种特定行情的一种交易策略,因为行情不可预测,通过广撒网方式去捕捉行情,网格交易需要人工判断哪条河有鱼(行情),才能把网撒出去,不能随便撒网,因为撒网需要成本的,随便撒网大多数结果是竹篮打水一场空(亏损)。
本文源自 https://zhuyasen.com/post/gridStrategy.html