RSS1RSS2 加入收藏
股票 必读教材第一步:新手疑惑第二步:开户买股第三步:必要名词第四步:看盘基础第五步:股市常识第六步:炒股书籍第七步:视频学习终极操盘 知识
您当前位置:首页 > 股票知识 > 炒股技巧

    指标的变形和深化

  • 时间:2015-07-14 17:46:25  来源:58gu.com  作者:58GU.com小编
  • 指标的变形和深化 指标的变形和深化
    本来准备写传统指标改造二,但写着写着发现思路和进程已不能用改造两字形容了,因为我发现在对传统指标的改造过程中,传统指标带我走到了一个新天地,于是我把传统指标改造的名字换了,叫做变形和深化。
    有人说编指标是打仗,用函数,理论和自己的聪明才智和阻挠你发现自然规律的神秘力量作战,有人说编指标是开药方,阴阳搭配,药到病除,我觉得编指标是对自己思维的一次否定和一次重新建立,然后再提升的过程,这个过程是一个痛苦而又快乐的过程,很多人希望从这个过程中获得财富,我的想法是先体会过程本身的快乐吧!
    闲话说了不少,进入正题了:
    一 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>b1 and a1>c1,a1+0.5*b1+0.25*d1,if(b1>a1 and 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>b1 and a1>c1,a1+0.5*b1+0.25*d1,if(b1>a1 and 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这一句的参数改了一下。
    page 改成这样,我还是不满意,想到要加一条线看金叉死叉多好!
    很简单的办法就是平均,平滑,用不同周期的线组成系统的上下看金叉死叉:
    图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>0 and asi2>0,pow(abs(asi1*asi2),0.5),-pow(abs(asi1*asi2),0.5)))linethick1;
    qq:(asi1+asi2)/2 linethick1
    在这里pp是几何平均pp等于根号a×b,qq是算术平均,qq=a加b的和除以2。pp和qq只有a和b相等是才相等,
    其他情况下不等,他们两条线的运动可以看出a和b之间现对关系。
    这里我发现了飞狐pow函数的一个bug,pow函数不能开负数的奇次方,比如-125的1/3次方等于-5,而飞狐的pow一概为负1,有兴趣的朋友可以试一试。
    三 深化
    上面的变化只是算法上的,更多的只是从认识方便的角度讲,所以我不想再讲下去了,公式变到这里,方便判断的目的达到了,尽管公式有很多不足,但是用多条件,优化参数等方法可以克服不少,下面我要讲的是发散的问题,是我从变化这个公式中的思考。
    1 k线有几种类型呢?
    一种类型:k线
    两种类型:阳k线和阴k线
    还有吗?
    2 股市的运动不同用什么判断呢?
    价格,
    成交量
    还有呢?
    3 我们判断一般问题的方法是什么呢?
    从一般到特殊,
    从特殊到一般,
    还有呢?
    这是我改造asi时想到的,我试图从这些问题中发现一些东西! 1物体运动,我们判断他用速度,加速度。股市中我也试图找到与这两个量相应的东西,我称作趋势力度和力度的东西。打个比方,昨天股价2块钱,今天4块,明天5块,从昨天到明天力度是增大的,但趋势是减小的,昨天到今天趋势力度是2块,今天到明天趋势力度是1块,这就是判断股市运动的一种方法。由这个想法我想到k线应该有这几种类型:page
    2 a 阳线趋势力度强,力度强
    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种情况。分别写上了解盘的话.解盘的语言是固定模式,但市场是活动的,所以我的话语尽量留了余地,用了高点,低点等需要使用者自己判断的词。
  • 点赞
  • 发表评论 共有条评论
    验证码: