量化炒股10:技术指标的运用2
今天这篇文章主要讲述两个方面内容,一个技术指标的历史排序,另一个是副图上的技术指标。
一、技术指标的历史排序
我们在复盘的时候,有时可能会有如此想法:对过去的某个日期的全部股票或部分股票的某些指标进行排序。举例来说,想看一下2021年6月1日的沪深300板块中300只股票的涨幅排名。这时我们可以通过下面的方法来实现:
首先,如下图找到沪深300板块:
之所以选择沪深300板块,是因为这个板块只有300只股,一会儿的计算速度会快一些,大家也可以选择自己想查看的板块,甚至全部4000多只A股也可以。
在沪深300板块中,随便在某一只股票上点击右键,点击弹出菜单中间位置的“历史行情.指标排序”,如下图:
点击之后,可能会提示您需要下载完整的数据,点击确定下载等待其下载完毕即可,之后我们可以看到界面发生了变化,如下:
再在这个界面中点击右键,弹出如下菜单:
选择其中的“选择交易日”,就会弹出一个窗口:
这时咱们就可以输入想要排序的历史日期了,本例中,选择2021年6月1日,将日期修改完毕之后,点击“确定”,这时所有的股票数据就都是6月1日的了,一般默认的是那一天的涨幅从大到小排序,软件默认给出的几个数据除了当日涨幅之外,还有收盘价、成交量等数据,我们可以选择自己需要的指标排序。
但是,软件默认提供的指标太少,没有咱们想排序的指标,特别是没有咱们自己编写的指标怎么办?下面讲一下如何将自己编写好的指标公式进行历史排序。
还是举个例子,比如我们建立了一个指标,这个指标是想表达过去10个交易日的振幅,这时我们先按照上一章介绍的步骤,建立一个新的指标公式,取名叫“振幅”,在指标公式编辑器中输入语句:
振幅:HHV(H,10)/LLV(L,10);
我们将10日内的最大值除以10日内的最小值定义为“振幅”。将指标保存关闭。
再在任意一只股上点击右键,在弹出菜单中选择“更改排序指标”:
点击“更改指标排序”之后,弹出如下窗口:
下拉进度条找到刚刚编辑好的指标公式“振幅”,一般都在最后一个。点击右侧的“确定”,这时我们发现页面中的最右侧就出现了“振幅”这个指标公式的取值:
我们可以通过点击右上角的“振幅”二字,对其进行排序,点击一次从大到小排序,再点击一次就可以从小到大排序。
如果想退出当前的历史排序界面,按一下键盘上的“Esc”键即可退出。
上面就是技术指标公式如何实现历史排序的过程,大家可以自己实验,这个功能可以帮助我们复盘和选股。比如,一个交易策略如果是:买入上个月最后一日成交量最大的前3只股票,持有一个月,到下个月再重复这个规则(只是举例!)。那么这个策略的历史测试可能不是很方便了,就需要咱们手动测试或复盘这个方案是否可以,这时历史指标排序功能就派上用场了。
二、副图上的技术指标的运用
上一章我们讲述了如何在K线图的主图上显示技术指标的过程,那么如何在副图上显示我们想要的技术指标呢,过程和主图的显示很类似。
我们打开某一只股后,一般默认是上中下三个窗口,最上面的是K线,被称之为“主图”,中间和下方的都被称之为“副图”,一般软件默认的两个副图是成交量和MACD。
我们也可以根据自己的需要将窗口的个数进行增减,在主图空白处,点击右键,选择自己需要的窗口个数:
下面我们还是通过举例来说一下技术指标在副图上的运用。拿最下面的副图来说,我们一般看到的MACD的副图是这个样子的:
而一些交易策略,特别是缠论衍生的一些背离或背驰理论,经常会用到MACD,特别是MACD顶或底的数值比较,比如想快速知道上图中白色圈中MACD的最大值和黄色圈中MACD的最大值,都分别是多少,这时如果可以将具体的数值显示在上面方便多了。
我先将修改后的样子展示出来:
下面说一下具体的实现过程:
我们首先按照上一章讲述的建立技术指标公式的步骤建立一个新的技术指标,注意这时建立的技术指标就不需要修改下面红色圈的地方了:
画线方法的地方还是保持其默认的“副图”。本技术指标起名为“MACD顶底”。
在编辑器中输入如下语句:
DIFF:EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
MACD顶:=MACD>REF(MACD,1)&&MACD>REF(MACD,2)&&MACD>REFX(MACD,1)&&MACD>REFX(MACD,2)&&MACD>=0;
DRAWNUMBER(MACD顶,MACD,MACD),COLORRED,DRAWABOVE;
MACD低:=MACD<REF(MACD,1)&&MACD<REF(MACD,2)&&MACD<REFX(MACD,1)&&MACD<REFX(MACD,2)&&MACD<=0;
DRAWNUMBER(MACD低,MACD*0.99,MACD),COLORGREEN;
其中前三行就是MACD的定义(取其常用参数),其实软件已经给出了很多常用的技术指标,大家有兴趣的话可以在公式管理器中查看,需要什么基本指标可以直接复制过来再修改成自己需要的指标。比如MACD的定义在下图中可以找到:
我们继续说上面的语句,除了MACD的定义之外,还有四行语句用于定义MACD的顶和底,拿MACD顶来说,定义为:当前的MACD比前两根都要大,比后两根也要大,并且当前的MACD值是大于0的,所以语句写成:
MACD顶:=MACD>REF(MACD,1)&&MACD>REF(MACD,2)&&MACD>REFX(MACD,1)&&MACD>REFX(MACD,2)&&MACD>=0;
这行语句中,用到了未来函数REFX(这个函数就是对后面第N根K线进行取值),这里先提醒一下,未来函数的使用一定要谨慎再谨慎,用于这种副图的显示还可以,千万不要用于交易模型中,切记!以后将会专门说一下未来函数的问题。这里之所以用未来函数也是想将数值显示在合适的位置。
定义完MACD顶之后,再将其显示出来:
DRAWNUMBER(MACD顶,MACD,MACD),COLORRED,DRAWABOVE;
这时使用了DRAWNUMBER函数,具体函数的使用说明可以参见软件的函数说明。
同理,对于MACD底的定义和显示也类似,在这里就不再赘述了,有兴趣的朋友可以自行研究一下。
在写完技术指标之后,将其保存,在MACD副图的区域(注意一定要在MACD这个副图的区域,不要在K线主图上点击右键),点击右键,弹出如下窗口:
点击“选择副图指标”,弹出框如下:
选择之前我们创建技术指标公式的位置,一般我都习惯保存在“其他类型”中(创建指标时已做过选择),点击“其他类型”前面的“+”号,选择我们刚刚建立的“MACD顶底”后,点击右侧的“确定”,我们就可以发现之前的默认的MACD副图变成新编辑的带有阶段顶底数字的图形了。
上面是一个修改MACD指标的例子,大家也可以根据自己的需求来创建需要的副图指标,以帮助复盘或交易。比如:在成交量副图上画出一些自己需要的曲线,用以最近是否有放量的情形等。
至此,关于技术指标公式的运用就全部讲完了,本来之后应该讲公式管理器中的最后一个部分“条件选股公式”,但我考虑了一下,在讲选股公式前,还是先讲一下未来函数和过度优化这两个问题。以免大家落入未来函数和过度优化陷阱。
总之,我还是以前提到的宗旨,我写这些文章没有别的诉求,唯有希望节省大家的时间并且少走弯路。