楼主: 量化老KK
99 0

[程序化交易] 两小段代码轻松搞定网格交易法 [分享]

  • 0关注
  • 1粉丝

初中生

42%

还不是VIP/贵宾

-

威望
0
论坛币
20 个
通用积分
1.0006
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
143 点
帖子
7
精华
0
在线时间
10 小时
注册时间
2019-11-20
最后登录
2019-12-5

量化老KK 发表于 2019-12-3 17:51:48 |显示全部楼层
只要做量化交易有些年头的朋友,相信都遇到过行情震荡时,趋势策略不太有效、资金曲线出现连续回撤甚至创出历史最大回撤的经历。这时,大家都会想,要是能找到一些震荡策略,把回撤的这个坑填上,那整个交易系统就完美了。

其实真正难找的并不是策略本身,而是如何准确判断震荡的开始和结束,这才是圣杯难寻的根本原因。如果我们能清晰地判断出目前是震荡行情,或者某些品种的走势总体偏震荡,就可以轻松找到一种盈利能力很强的震荡策略,这就是今天要给大家介绍的——网格交易法。

01 网格交易法原理

网格交易法,又名渔网交易法,就像撒网捕鱼一样来捕捉行情,还是非常形象的。它的原理就是在预先判断的价格波动范围内设定密度合适的网格(买卖价格),来捕捉价格在整个网格中来回波动带来的盈利机会。在外汇交易市场,网格交易是一种很受青睐的交易策略。

这里,我们以股票买入或者期货做多为例,把网格交易的过程图示如下:

1.png


这里有几个要素:

1、网格交易起始点——也就是从什么价格开始买入。

2、网格密度或大小——就像捕鱼一样,网格太疏,小鱼(小震荡)容易漏掉,网格太密,大鱼(稍大的震荡)整个网格就兜不住了。

3、整个网格大小(网格数)——网格越大,能抓到的行情越大,但一旦整张网都兜不住了,风险也越大。

4、交易的方向,也就是做买,还是做卖——网格交易可以像上例一样单向布网,也可以提高效率双向布网。当然,双向布网可以简单理解为一个买入网格交易和一个卖出网格交易的组合策略。

02 网格交易法实现

网格交易是非常适合做程序化的,除非网格密度设得非常松,否则要靠人工盯盘来处理挂单、止盈是很难处理过来的,而用程序化来实现却非常简单。利用TBQuant的事件驱动来实现,除了基本设置,关键代码只要两段即可搞定!

1、首先把上面提到的和网格交易法密切相关的几个要素定义为参数。包括:交易的标的、网格起始价、网格大小(即密度)、网格数、做单方向等。 2.png



接下来除了一些变量定义和常规的初始化代码外,只要写好以下两段关键代码,就可以轻松实现一个可以实盘运行的基本网格交易策略了。

2、关键代码

代码一:启动网格交易,按设定的网格大小和交易方向,一次性布好所有开仓的挂单。


3.png



代码二:利用委托成交事件函数,对成交进行处理,主要分两种情况:

(1)如开仓挂单成交,则挂止盈单;

(2)如止盈挂单成交,则继续按原网格价格,把开仓单再补挂上。


4.png



看,足够简单吧!让我们看看这个简单策略能否直接交易吧。

03 实际交易

新建工作区,选择策略交易,新建策略单元,加载刚写好的公式,设置好参数,头寸管理关联好交易账户,点击启动自动交易,这个简单策略还真跑起来了。

这里我们以豆油2005合约为例,4元一格,平仓的频率看起来还挺不错。


5.png


当然这里介绍的只是网格交易策略这个工具的简单实现,围绕网格交易的各种应用,还需要在这个简单工具的基础上不断完善。最关键的还是如何应用,正如开篇所述,网格交易的应用是有一定前提的,这需要我们根据主观交易经验来辅助判断。

网格交易也有很多使用技巧,不但可以应用在典型的震荡品种或震荡行情中,也可以在趋势行情中和趋势策略进行各种巧妙的组合。除了策略本身的技巧,如何根据网格交易的特点,做好资金分配也是非常重要的一环。

总之,工具是死的,人是活的,但依靠工具的帮助,至少让我们在这个残酷市场中存活下来又多了一份把握。


您需要登录后才可以回帖 登录 | 我要注册

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2019-12-6 19:37