成本函数,COST和WINNER
成本分布原理:
投资者一般对股票平均成本感兴趣,移动平均MA、指数平滑移动平均EMA等算法都是计算股票平均成本的算法,但是这些算法没有考虑到成交量对平均成本的影响,例如,假设最近一段时间某股票在10-20元间波动,其平均价MA为15元,但观察其成交量发现在20元附近成交量巨大,而在10元附近成交量稀少,我们认为其平均成本显然应该比15元更高才合理,为此我们可以引入换手率移动平均概念;以当天的换手率作为平滑因子计算指数平滑移动平均,用公式来表示为:
Y:=(1-A)*Y’+A*C
A表示换手率,C表示收盘价,Y和Y’分别表示今日平均价和昨日平均价。
加权平均的计算方法是:Zax,其中x为待统计数值,a为x占总量的比例,当日的平均成本Y可以表示为两个部分,当日买入的和以前买入的,当日买入的成本为收盘价C,以前买入的成本为Y’,而当日买入的占总流通盘的比例为换手率A,而以前买入的则占1-A,因此今日的加权平均成本为(1- A)*Y’+A*C,因此,用这个公式更能反映股票的真实成本。
但现在还有两个问题需要解决,其一使用收盘价不能真实表示当日成本,其二是不能了解整个成本的分布情况,即我们只知道平均成本是多少,不知道整个持仓的成本分布情况,而这个分布情况有时是非常有用的。例如某股票的所有持仓成本均为10元,而另一个股票则由50%以5元买入,50%以15元买入,这两只股票均价都是10元,但其表现必然有很大差别。
移动成本分布
移动成本分布就是为解决以上问题提出来的,它将平均成本概念从一条平均线扩展为一个分布图,表示当前所有持仓量的成本分布情况,用等间距的水平线表示分布情况,水平线的垂直位置表示成本所处价位,长度表示相对比例,其中最长的线条占满显示区,其余按照相同比例显示。
成本分布的算法与前面以换手率作为平滑因子计算指数平滑移动平均的基本原理是一样的,主要差别就在于它计算的不是一个而是一组数值,即当日成本不是收盘价,而是从最低价到最高价之间的一组数据。
成本分布算法是基于以下假设计算的:
a)每天的成本平均地分布在最低价到最高价之间,画成移动成本图就是一个最低价到最高价的矩形,这个矩形我们称为当日成本;
b)每天的换手是等概率发生的,即不论买入时机如何,对于股票持有者不管是套牢还是获利,当日抛出的概率是相同的。
成本分布画法:
a)上市每一天的成本分布图就是当日成本,即最低价到最高价间的一个矩形。
b)其后每一天的成本分布图满足Y=(1-A)*Y’+A*B,A表示当日换手,B表示当日成本,Y、Y’分别表示当日和上一日的成本分布,注意,此处 BYY’均表示一个分布情况,而不是一个数值。
COST(N)
表示当日N%获利盘的价格是多少,即有N%的持仓成本在该价格以下,其余(100-N)%的持仓成本在该价格以上,是套牢盘
限制:仅在日线分析周期有效
参数:N:常量,取值范围0-100
例:COST函数根据获利盘和套牢盘的比例得出其分界线,我们可以由此得到90%的成本集中在COST(5)-COST(95)之间,而70%的成本集中在COST(15)-COST(85)之间;COST(50)表示平均成本,因此COST(95)-COST(5)/COST(50)就表示90%成本分布于平均成本附近的某个范围之内,该数值描述了成本分布的密集程度。
WINNER(A)
获利盘比例:表示以A价格卖出时获利盘比例是多少,返回0,1表示10%获利盘。
限制:A:常量或变量
例:WINNER(10.5)表示10.5元价格的获利盘比例
WINNER(CLOSE)表示以当前收市价卖出获利盘的比例
WINNER与COST是正好相反的两个函数,前者由价格求获利盘比例,而后者由获利盘比例求得价格,灵活应用这两个函数,可以定量地进行成本分析计算。
筹码分布选股
成本分布可谓是分析家的一大特点,通过一种数学模式尽可能地接近和模拟市场的事实的购筹码的分布结构,虽然做不到“知道所有人的底牌”,但是做得到“了解大部分的其他人手中的牌”
!分析家为客户自己定量地描述市场提供了两个成本函数,COST和WINNER,从而完成了对这一部分的自由和开放的平台制作。
在函数表中我们已有对这些函数的计算原理和计算方法有一个完整的介绍,所以这里不再赘述,直接通过以下的一些例子来了解这些函数的用法!
2、61 当日收盘价的获利盘的比重?
含义解释为在本周期收盘价之下的获利筹码的比例是多少?这样计算的原因在于通过具体的数值分析求得更加明确的权市场的成本构成状况。
COST(CLOSE):
同样原理有:
COST(OPEN); COST(HIGH); COST(MA(CLOSE,5));
2、62 当日90%的成本获利的价位?
在此价位之下的90%的筹码在不计入交易费用的前提下都已经实现了帐面上的盈利。
WINNER(90); 同理: WINNER(10); WINNER(50);
2、63 单峰密集形态
在《高级实战技法》我们提及了两种密集形式:单峰高位密集、但逢低位密集,这两种密集形式分别代表了不同的基本含义。当发生在相对的高位的时候,几率较大的后市行情是下跌即将来到,而低位则刚刚相反。
条件选股之一:单峰密集
如下图所示,股价一直在一段区域内上下振幅不大的波动,在狭窄的区间内发生了大量的换手,并且延续了相当的一段时间,在业界有许多种的称呼,或者其他较为形象的描述,例如,长期的横盘整理,时间换空间等等,该形态被视为一种主力以低成本吸筹,以耐心换取筹码的典型手法,但是一直缺乏一种定量的描述方法,而移动成本分布的模型的建立为简单解决这个问题带来了契机,COST和WINNER函数则真实地实现了统计意义上的解决手段。
我们要找出70%的筹码集中在很小的区域内(一个容易进行横向的对比的区间内),也就是分布集中度较高的区域。
在两个假设的前提下,按照以下的方法做:
先找出85%的筹码获利的价格线:
A1:=COST(85);
找出15%的筹码获利的价格线:
A2:=COST(15);
70%的获利空间为:
A3:=A1-A2;
85%和15%的获利价格区间的中价为:
A4:=(A1+A2)/2;
将表达式改为百分比的形式并进行界定,让70%的筹码分布在它们中价的10%的范围内:
A3/A4*100<10;
如果大家已经很熟悉分析家的公式编写了,那么我们就不用那么多的中间表达式了,前提是清楚公式的架构,我们可以直接采用以下的表达方式:
分布集中度:
(COST(85)-COST(15))/(COST(85)+COST(15))/2<0.1
注意:分析家在移动成本分布右下角标注的“70%的筹码分布在X元(+、-)Y%的范围内”,其中的X值就是我们在上式中计算的中价A4,Y就是集中度。
因为在原来的假设前提下,每一天的筹码分布都是不断的累加和迭算,期间的计算量相当巨大,这就是我们之所以采用以上的简单计算方法的原因了。因为细心的用户一定会想到,筹码绝对不会像我们所说的那样简单地集中分布在85-15的区间内,但是一定是近似的分布在这个区间内,因为它们的分布符合正态分布的原理。
条件选股之二:低位的单峰密集
即对单峰密集加入低位的概念。我们有许多的方式进行低位的条件限定,我们可以通过对历史上的最高点进行对比或者其它的指标公式的引用,或者采用的参照对象是一段时间内的高点,以下将使用最后一种方式来完成这一步工作。
建立低位的模型:
“在过去一段长时间的交易周期内,采用250天,85%和15%的获利价格区间的中价的价位在其波动范围的下半部位,也即是低于250天振幅的 50%”。
B1:=HHV(HIGH,250);
B2:=LLV(LOW,250);
B3:=B1-B2;
(A4-B2)最终的低位单峰密集的公式组为:
A1:=COST(85);
A2:=COST(15);
A3:=A1-A2;
A4:(A1+A2)/2;
A5:=A3/A4*100<10;
B1:=HHV(HIGH,250);
B2:=LLV(LOW,250);
B3:=B1-B2;
B4:=(A4-B2)A5 AND B4
其中的周期250和集中度10%,我们都可以设为参数调整,选到最佳的周期和分布集中度。
条件选股三:跌破市场成本的反弹:
当一段下降的趋势形成之后,随着成交不断的发生在低位、更低位,从而整个股票的重心不断的下移,但是并不是所有的重心下移都是一样的,如果从市场的交投情况来看(WWW·TCDZQ·COM),成交量明显缩小的、换手率偏低的个股,它的重心就下降得很慢,甚至于出现减速、平走的情况。我们目前已经可以证明,在所有的“V”字反转当中,60%-70%或者更高的比率都会出现上述的情况。(当使用不同的数据测试的时候,有不同的结果)
也许从不同的市场角度,可以归纳出不同原因来解释,但是无论如何,我们看一下在分析家当中怎样来用公式系统编制这样的技术形态。
首先,图中有一条指标线,该技术指标是为了我们更好的观察这种现象而编制的成本线指标,用以作为一个辅助性指标:
B:COST(50);
指标线B是连接日线周期上所有的50%筹码获利的价格的一条连线,我们也可以将它称为市场的绝对平均成本线。
显而易见,在下图当中由于超跌所引起的反弹在市场平均价格线的衬托下,技术形态的特征十分容易寻找,当CLOSE背离B线达到一定程度的时候,就进入到了技术上的超跌反弹区域。它和传统的rsi等等指标的最大不同,也是其根本不同,统计的对象一个是单纯的价格,一个是累加了成交量变化的价格均线。
在以下的举例当中,我们进行了一些测量,反弹点距B线的差距当时已经达到了15%的比例。
所以有以下公式:
超跌反弹选股:量化模型为:当收盘价与绝对平均成本线的距离的百分比低于-15%,为一个超卖区间,可以考虑买入;反之,如果高于15%,为一个超买区间,应该考虑回避风险。
买入条件:
A1:=COST(50);
crOSS(A1,-15);
卖出条件:
A1:=COST(50);
CROSS(15,A1)
自编公式实现Winner函数
CC := DYNAINFO(7); { 今日收盘 }
ww := IF(L>CC, 0, IF(H<CC, 1, (CC-L+0.01)/(H-L+0.01))); { 每日获利盘 }
Winner: DMA(ww, vol/CAPITAL)*100; { 获利盘 }