前一篇文章通达信公式系列:手把手编写一个完整的北上资金指标(1)中,我们了解了如何根据数据的特性进行初步加工,将北上资金持股变成了可以在个股之间横向比较的数据,即北上资金持股数占流通盘的比例。
但是,我们的目标是设计出一个可以用于指导交易的指标,所以这个指标必须要有统一的买入、卖出信号标准。而北上资金持股数占流通盘的比例只是一个比例,对于不同的个股,由于其股本结构千差万别,所以我们不大可能找到一个统一持股比例来指导买卖,比如10%以上就属于超买了,毕竟有的上市公司已经全流通,而且也符合外资的买入标准,北上资金可能买入更高的比例。
比如格力电器,2018年北上资金持股比例突破10%之后,这一比例仍在持续增加:
相反,还有很多个股自陆港通开通以来,比例从没有超过10%过,那就会出现这些个股永远不会发出卖出信号,比如:
所以,仅用比例的方式,仍然无法将北上资金改造成有实战意义的指标。
既然通过比例来处理的方式依然还不够,那么我们只有进一步将其相对化,也就是通过和自身的历史数据相比,目前的持股比例处于什么样的状态。
当我说到这里的时候,有没想到一些我们之前学到的内容?
对!
就是我们此前一直讲的KDJ指标中的RSV值,KDJ指标的代码如下:
其中RSV计算过程如下:
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
翻译成人话就是:
(收盘价减去一段时间的最低价)除以(一段时间的最高价减去一段时间的最低价)再乘以100
如果我们有心自己去计算一下,就会发现:虽然每只个股的价格都不一样,近阶段的最高价与最低价也各不相同,但是RSV的计算结果永远在0~100之间。
如果我们取N为20,RSV值的意思就是收盘价在20日内的最低价和最高价之间的相对位置,并用百分比表示。
回到RSV本身:如果RSV为50是什么意思呢?这就就意味当前的价格距离20天内的最高价以及最低价的距离是相同的,如果低于50那么就意味着离最低价的距离更近一些。
所以我们不难理解,为什么KDJ指标会用20、80来作为超卖和超买的标准了。
受到RSV值的启发,我们试着来改造一下我们的北上资金指标:
首先,因为北上资金占流通盘比例也是和股价一样的时间序列,所以我们将RSV计算过程中的价格换成北上资金持股数占流通盘的比例即可:
(最近的北上资金持股比减去一段时间的最低北上资金持股比)除以(一段时间的最高北上资金持股比减去一段时间的最低北上资金持股比)再乘以100。
接下来,我们就可以将这段文字翻译成通达信公式代码即可,这里我们要先使用到赋值语句产生个类似RSV的中间变量:即北上资金持股比(BSZJCG)
BSZJCG:=REF(GPJYVALUE(6,1,1)/TOTALCAPITAL,1);
下面就能够简洁的将上面的文字翻译成如下公式代码:
BSZJZD:=(BSZJCG-LLV(BSZJCG,N))/(HHV(BSZJCG,N)-LLV(BSZJCG,N));
BSZJ:MA(BSZJZD,M);
写进公式编辑器:
我们打开万科、平安银行的走势图,副图打开北上资金指标:
可以看到,这个指标已经固定在0~1之间波动,同时我们也发现,大致上这个指标在顶部的时候股价似乎也在阶段高点,而底部的时候股价则在阶段低点:
这个指标就已经具备了发出信号的条件了,比如:高于0.8,则认为处于超买阶段,应该适当离场;而低于0.2则处于超卖阶段,可以适当关注。
至此,我们已经将一项数据,成功的改造成了一个可以发出买入卖出信号的技术指标,大家可以试试用通达信中其他的数据来做指标。
需要提请大家注意的是该指标适用于学习交流,用于实战,还需要从自身策略以及情况而定。
手把手搭建通达信交易系统01:一个完整的投资策略是怎么诞生的
通达信指标公式怎么写?手把手教您编写上市公司股权质押比例指标