不想错过精彩课程?一键“订阅”,轻松学习!
大家好,欢迎来到金十交易学院《智能量化交易》课程。
摘要:在上一篇中,我们从麦语言的简介、基础语法、模型执行方式、模型分类等方面为大家讲解实现交易策略的前提部分,本篇我们将继续上篇内容,从常用的策略模块、技术指标,一步一步帮助大家实现一个可行的日内量化交易策略。
一、策略模块
想想一下,你是怎么用乐高积木碎片拼一个机器人的?你总不可能从上到下或者从下到上,一块一块拼起来。稍微有点常识的人都知道,应该把头、手臂、腿、翅膀等等,各自拼起来,然后再组合成一个完整的机器人。写程序也是一样的,把所需要的功能都写成一个个策略模块,然后再把一个个策略模块,组合成一个完整的量化交易策略。下面我就先列举些常用的策略模块:
1、阶段涨幅
阶段涨幅就是计算当根K线收盘价与前N个周期收盘价的差值的百分比。比如:计算最近10根K线阶段涨幅是多少,用代码可以写成:
2、再创新高
再创新高就是计算当根K线是否大于N个周期以来的最高价。比如:计算当根K线是否大于最近10根K线中的最高价,用代码可以写成:
3、放量上攻
放量上攻可以理解为价格上扬,成交量剧增。比如:如果当根K线的收盘价是前第10根K线的收盘价的1.5倍,即10天内涨了50%;成交量超过最近10根K线平均值的5倍。用代码可以写成:
4、窄幅整理
窄幅整理就是指近一段时期价格维持在一定幅度之内。比如:如果10个周期内的最高价与以10个周期内的最低价的差值,除以当根K线的收盘价,小于0.05左右。用代码可以写成:
5、均线多头排列
均线多头排列分为多头排列和空头排列,K线在5—10—20—30—60均线下支撑排列向上为多头排列,多头排列就是市场趋势是强势上升势。用代码可以写成:
6、前期高点及其位置
要获取前期高点,以及这个高点所在的位置,可以直接通过发明者量化工具的API直接获取。用代码可以这样写:
7、跳空缺口
跳空缺口就是两条K线的最高低价出现不衔接的情况,由两条K线组成,跳空缺口是日后支撑和压力点的参考价位。当一个跳空缺口出现时,可以假设一个沿着原来跳空方向上的趋势的加速已经开始了。用代码可以这样写:
二、常用技术指标
1、移动平均线
站在统计学的角度看,均线就是每天价格的算术平均,它是一条带有趋势性的价格轨迹。均线系统是大多分析者常用的技术工具,从技术角度看是影响技术分析者心理价位因素的,思维买卖的决策因素,是技术分析者的良好的参考工具,发明者量化工具支持多种不同类型的均线,如下图:
2、BOLL通道
BOLL又称布林带指标,也是利用统计学原理,先根据N日移动平均线计算出中轨,再根据标准差,计算出上轨和下轨。当BOLL通道由宽变窄,说明价格逐渐向均值回归。当BOLL通道由窄变宽,意味着行情开始发生变化,如果价格上穿上轨,表明买力增强,如果价格下穿下轨,表明卖力增强。
在所有的技术指标中,BOLL的计算方法是最复杂之一,其中引进了统计学中的标准差概念,涉及到中轨线(MB)、上轨线(UP)和下轨线(DN)的计算。其计算方法如下:
3、MACD指标
MACD指标是运用快速(短期)和慢速(长期)移动平均线及其聚合与分离的征兆,加以双重平滑运算。而根据移动平均线原理发展出来的MACD,一则去除了移动平均线频繁发出假信号的缺陷,二则保留了移动平均线的效果,因此,MACD指标具有均线趋势性、稳重性、安定性等特点,是用来研判买卖股票的时机,预测股票价格涨跌的技术分析指标 。其计算方法如下:
以上就是在开发量化交易策略中较常用的策略模块,当然其实远不止这些,通过以上的模块例子,也可以动手实现几个你在主观交易中最常用到的交易模块,方法都是通用的。接下来,我们就开始编写一个可行的日内量化交易策略。
三、策略编写
在外汇现货市场,曾经广为流传一种突破交易策略,它就是HANS123策略,它以其简洁的开盘后N根K线的高低点突破,作为交易信号触发的评判标准。这也是一种入场较早的交易模式。
四、策略逻辑
l 在开盘30分钟后准备入场;
l 上轨=开盘后30分钟高点;
l 下轨=开盘后30分钟低点;
l 当价格突破上轨,买入开仓;
l 当价格跌穿下轨,卖出开仓。
l 日内交易策略,收盘前平仓;
五、策略代码
下节预告:也许会有小伙伴感到困惑,密密麻麻的代码看不懂。别急,这些我们都已经替你想到了,在发明者量化工具中,还有一种编程语言,更适合小小白的用户使用,它就是可视化编程,顾名思义就是所见即所得,一起期待吧!
课后习题:
1. 试着动手实现几个你在主观交易中最常用到的交易模块。
2. 试着用发明者量化工具中的麦语言实现KDJ指标算法。
最后给大家一个温馨小提示:在课程和直播页面,点击“订阅”按钮,就可以及时接收提醒,不错过课程和直播的精彩内容!
金十交易学院,8点准时更新