12.2 编写双均线量化策略
下面通过编写双均线量化策略再进行回测。
12.2.1 量化策略的编辑页面
在浏览器的地址栏中输入"https : //www.joinquant.com",回车,进入JoinQuant (聚宽) 量化交易平台的首页页面。
单击菜单栏中的"我的策略/我的策略"命令,然后单击"新建策略"按钮,弹出下拉菜单,在其中单击"股票策略",进入量化策略的编辑页面,如图12.1 所示。

在左侧列表框中,可以看到Python 代码,这里的代码编写方法很简单,直接在列表框中输入即可。如果出现编写错误,修改方法与Word 文档相同。
为了编写代码方便,这里还提供了一些常用快捷键。单击列表框上方的出按钮,弹出"快捷键"面板,如图12.2 所示。

为了方便代码的修改,还提供了查找功能。单击列表框上方的Q 按钮,弹出"查找"面板,如图12.3 所示。


12.2.2 双均线量化策略的初始化函数
双均线量化策略的初始化函数的具体代码如下:

在初始化函数中,首先定义全局变量保存要操作的股票,在这里操作的股票是万科A( 000002) ,然后设置基准为沪深300 、设置开启动态复权模式、设置成交量比例,接着设置交易手续费,具体是买入时佣金的万分之三、卖出时佣金的万分之三加干分之一印花税、每笔交易佣金最低扫5 元钱,最后调用定时函数run_daily 。
12.2.3 双均线量化策略的交易程序函数
在定时函数run_daily 中,调用了交易程序函数trade ,该函数的具体代码如下:


首先获取要操作的股票,然后调用attribute history 函数获取要操作股票的收盘价格,再通过mean()函数获取5 日均线值和10 曰均线值,接着获取当前账户的资金。
然后通过M 语句实现,当5 日均线大于10 曰均线肘,调用order_value函数全仓买入股票,并记录这次买入;当5 日均线小于10 日均线肘,调用order_ value 函数全部卖出股票,并记录这次卖出。
最后调用record 函数,绘制5 日和10 日均线。