股票

指标的变形和深化

  指标的变形和深化

  指标的变形和深化

  本来准备写传统指标改造二,但写着写着发现思路和进程已不能用改造两字形容了,因为我发现在对传统指标的改造过程中,传统指标带我走到了一个新天地,于是我把传统指标改造的名字换了,叫做变形和深化。

  有人说编指标是打仗,用函数,理论和自己的聪明才智和阻挠你发现自然规律的神秘力量作战,有人说编指标是开药方,阴阳搭配,药到病除,我觉得编指标是对自己思维的一次否定和一次重新建立,然后再提升的过程,这个过程是一个痛苦而又快乐的过程,很多人希望从这个过程中获得财富,我的想法是先体会过程本身的快乐吧!

  闲话说了不少,进入正题了:

  一asi指标的简介和特点

  asi指标是welles wilder所创的,他的本意是用股市中最高,最低,收盘和开盘四个数据构筑一条能真实反映市场运动的线,在飞狐中他的算法是:

  LC:=REF(CLOSE,1);

  AA:=ABS(HIGH-LC);

  BB:=ABS(LOW-LC);

  CC:=ABS(HIGH-REF(LOW,1);

  DD:=ABS(LC-REF(OPEN,1);

  R:=IF(AA>BB AND AA>CC,AA+BB/2+DD/4,IF(BB>CC AND BB>AA,BB+AA/2+DD/4,CC+DD/4);

  X:=(CLOSE-LC+(CLOSE-OPEN)/2+LC-REF(OPEN,1);

  SI:=16*X/R*MAX(AA,BB);

  ASI:SUM(SI,0);

  正统的算法是:

  a1:=abs(h-ref(c,1);

  b1:=abs(l-ref(c,1);

  c1:=abs(h-ref(l,1);

  d1:=abs(ref(c,1)-ref(o,1);

  e1:=c-ref(c,1);

  f1:=c-o;

  g1:=ref(c,1)-ref(o,1);

  x:=e1+0.5*f1+g1;

  k:=max(a1,b1);

  r:=if(a1>b1and a1>c1,a1+0.5*b1+0.25*d1,if(b1>a1and b1>c1,b1+0.5*a1+0.25*d1,c1+0.25*d1);

  l1:=3;

  si:=16*(x/r)*(k/l1);

  asi:=sum(si,0);

  大同小异,形态看基本一样,只是数值不同,于是我在下面的变化中用的是飞狐的算法。

  对造k线看,asi的形态和大多时候的k线是一样的,仅凭一条上下跑的线我们很难判断,即使是书上讲的作者的用法,内似obv N字转向的方法,跌破新低或涨上新高也很难判断。在我看来,顶底背离有时可以看一下。

  但asi有个很好的优点,这也是我们改造他的一个重要依据,就是asi很灵敏,有时甚至提前或与股价同时判断出低或高点。图2。就是由于这一特点的存在,使得我们下几步变化得以展开。

  二一般的变化

  首先我的要求是要看的明确,起码要看的清位置,指示,最起码的要求也应该是有方便之处,循这这条思路我把他的参数首先优化了一下:图3

  我们可以看到,优化后线的变化更加灵敏,更加活跃。优化后源码:

  1:=abs(h-ref(c,1);

  b1:=abs(l-ref(c,1);

  c1:=abs(h-ref(l,1);

  d1:=abs(ref(c,1)-ref(o,1);

  e1:=c-ref(c,1);

  f1:=c-o;

  g1:=ref(c,1)-ref(o,1);

  x:=e1+0.5*f1+g1;

  k:=max(a1,b1);

  r:=if(a1>b1and a1>c1,a1+0.5*b1+0.25*d1,if(b1>a1and b1>c1,b1+0.5*a1+0.25*d1,c1+0.25*d1);

  l1:=3;

  si:=16*(x/r)*(k/l1);

  asi:=sum(si,20);

  就是把sum这一句的参数改了一下。

  改成这样,我还是不满意,想到要加一条线看金叉死叉多好!

  很简单的办法就是平均,平滑,用不同周期的线组成系统的上下看金叉死叉:

  图4,非常灵敏,比同图的macd早一天,跟中期kd同一天指示。

  源码:

  LC:=REF(CLOSE,1);

  AA:=ABS(HIGH-LC);

  BB:=ABS(LOW-LC);

  CC:=ABS(HIGH-REF(LOW,1);

  DD:=ABS(LC-REF(OPEN,1);

  R:=IF(AA>BB AND AA>CC,AA+BB/2+DD/4,IF(BB>CC AND BB>AA,BB+AA/2+DD/4,CC+DD/4);

  X:=(CLOSE-LC+(CLOSE-OPEN)/2+LC-REF(OPEN,1);

  SI:=16*X/R*MAX(AA,BB);

  ASI:=SUM(SI,20);

  asi1:100*wma(asi,10)linethick1;

  asi2:100*wma(asi,3)linethick1;

  不过灵敏与迟钝是个矛盾,太灵敏的指标虽然上涨时指示的早,但他在上涨途中不断出现的神经质似的金叉死叉信号着实很讨厌,迟钝的指示虽然克服了这些问题,但指示时间过晚有很容易买点指到了头部。图5

  克服这一问题的方法我一般就是加线,缩小金叉的条件。

  这个公式中我加了一条算术平均线和几何平均线,看四条线的排列,有的金叉虽然差了,看四条线的排列不对不算,或者如果股价没动,多等一天,看看以后的走势。图6。

  一下是我加的源码:

  LC:=REF(CLOSE,1);

  AA:=ABS(HIGH-LC);

  BB:=ABS(LOW-LC);

  CC:=ABS(HIGH-REF(LOW,1);

  DD:=ABS(LC-REF(OPEN,1);

  R:=IF(AA>BB AND AA>CC,AA+BB/2+DD/4,IF(BB>CC AND BB>AA,BB+AA/2+DD/4,CC+DD/4);

  X:=(CLOSE-LC+(CLOSE-OPEN)/2+LC-REF(OPEN,1);

  SI:=16*X/R*MAX(AA,BB);

  ASI:=SUM(SI,20);

  asi1:100*wma(asi,10)linethick1;

  asi2:100*wma(asi,3)linethick1;

  pp:(if(asi1>0and asi2>0,pow(abs(asi1*asi2),0.5),-pow(abs(asi1*asi2),0.5)linethick1;

  qq:(asi1+asi2)/2linethick1

  在这里pp是几何平均pp等于根号a×b,qq是算术平均,qq=a加b的和除以2。pp和qq只有a和b相等是才相等,

  其他情况下不等,他们两条线的运动可以看出a和b之间现对关系。

  这里我发现了飞狐pow函数的一个bug,pow函数不能开负数的奇次方,比如-125的1/3次方等于-5,而飞狐的pow一概为负1,有兴趣的朋友可以试一试。

  三深化

  上面的变化只是算法上的,更多的只是从认识方便的角度讲,所以我不想再讲下去了,公式变到这里,方便判断的目的达到了,尽管公式有很多不足,但是用多条件,优化参数等方法可以克服不少,下面我要讲的是发散的问题,是我从变化这个公式中的思考。

  1k线有几种类型呢?

  一种类型:k线

  两种类型:阳k线和阴k线

  还有吗?

  2股市的运动不同用什么判断呢?

  价格,

  成交量

  还有呢?

  3我们判断一般问题的方法是什么呢?

  从一般到特殊,

  从特殊到一般,

  还有呢?

  这是我改造asi时想到的,我试图从这些问题中发现一些东西!

  1物体运动,我们判断他用速度,加速度。股市中我也试图找到与这两个量相应的东西,我称作趋势力度和力度的东西。打个比方,昨天股价2块钱,今天4块,明天5块,从昨天到明天力度是增大的,但趋势是减小的,昨天到今天趋势力度是2块,今天到明天趋势力度是1块,这就是判断股市运动的一种方法。由这个想法我想到k线应该有这几种类型:

  2a阳线趋势力度强,力度强

  b阴线……

  c

  d等8种情况,这8种情况反映了股市运动的不同状态。研究不同状态是我们研究问题的方法吗?

  3我们研究问题,从一般到特殊是一种,分类判断也是一种很重要的方法。太极两仪再到八卦,推而演64卦在我看来就是一种分类研究的方法分开研究,研究透了,在和起来,整个问题也就解决了。

  讲回到公式了,k线有八种情况,我们k以作8种不同颜色的k线来研究,那趋势力度和力度如何判断呢?

  我是这样写:

  asi:=(asi1-ref(asi1,1)/ref(asi,1);

  pp:=asi*ref(asi,1)*ref(asi,2)*ref(asi,3)*ref(asi,4);

  qq:=pow(abs(pp),1/5);

  xx:=if(pp>0,qq,-qq);

  asi是变化率,下面是平滑的过程。

  对力度,用一下平均就可以了,

  ASIp:=SUM(SI,20);

  li:=100*wma(asip,15);

  xiao:=100*wma(asip,7);

  这样一写,一划分,我们得到了四种情况,

  趋势力度强,力度强

  弱强

  强弱

  弱弱,

  加上阴线阳线,8种情况,可以画成8彩的k线。

  但画成8彩k线,我们人认识和直观感受的问题又出来了,8种颜色在一起,哪种颜色意味着什么,对我们来说还是糊涂的,更无从讲知道操作了,于是我想到了解盘,解盘如果仅用8种类型肯定覆盖面积是不够大的,没办法,文王演八卦吧,推而广之。可惜如果演成64种情况,工作量太大,不同情况写解盘是项十分繁琐和浩大的工程,再说很多种情况出现的几率非常之小,写出来实际意义也不大。所以我把8彩k线演成了32种情况,

  分别是阴线阳线两种,

  价格趋势力度强弱两种,

  价格力度强弱两种,

  量趋势力度强弱两种,

  量力度强弱两种,

  组合共32种情况。分别写上了解盘的话。解盘的语言是固定模式,但市场是活动的,所以我的话语尽量留了余地,用了高点,低点等需要使用者自己判断的词。