缠论一买、三买选股公式(飞狐+悟多公式)_第1页
缠论一买、三买选股公式(飞狐+悟多公式)_第2页
缠论一买、三买选股公式(飞狐+悟多公式)_第3页
缠论一买、三买选股公式(飞狐+悟多公式)_第4页
缠论一买、三买选股公式(飞狐+悟多公式)_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MA10:=MA(CLOSE,10);MA5:=MA(CLOSE,5);MA1:=MA5-MA10;MA2:=MA10;MA3:=MA10;DATANUMBER:=DATATYPE;DATANUMBER1:=DATATYPE;DATANUMBER2:=DATATYPE;DATANUMBER3:=DATATYPE;LING:=HIGH;0)thenbianhua=1nvalue=nvalue+vbma(i)elsebianhua=2nvaluefu=nvaluefu+vbma(i)endifif(oldbianhua=bianhua)thenelsevbma3(i)=mm=0if(bianhua

2、=1)thenvbma2(i)=nvaluefunvaluefu=0nvaluefu=0elsevbma2(i)=nvaluenvalue=0nvalue=0endifendifoldbianhua=bianhuanext(ma2)=vbma2(ma3)=vbma3(ling)=vbling%DRAWNUMBER(REF(MA2,0)0AND0=1,LLV(LOW,5),REF(MA2,0)*1000,0),colorFF00;DRAWNUMBER(REF(MA2,0)0AND0=1,LLV(LOW,5)-DATANUMBER,REF(MA3,0),0),colorFFFF;DRAWNUMBE

3、R(REF(MA2,0)0AND0=1,HHV(HIGH,5),REF(MA2,0)*1000,0),colorFF;DRAWNUMBER(REF(MA2,0)0AND0=1,HHV(HIGH,5)+DATANUMBER,REF(MA3,0),0),colorFFFF;DRAWNUMBER(REF(MA2,0)0AND0=1,HHV(HIGH,5)+DATANUMBER*2,REF(MA2,0)*1000/REF(MA3,0),0),colorFF;MA1:=MA5-MA10;WEIHE:=LING;WEIPING:=LING;0)thenDoWhile(vbma(m)0)nvalue=vbm

4、a(m)+nvaluei=i+1m=m-1if(m0)thenexitdoendifLoopelseDoWhile(vbma(m)0)nvalue=vbma(m)+nvaluei=i+1m=m-1if(mDRAWNUMBER(WEIHE0AND0=1,IF(WEIHE0,HIGH,LOW),WEIHE*1000,0),colorFF;DRAWNUMBER(WEIHE0AND0=1,(IF(WEIHE0,HIGH,LOW)-DATANUMBER*2,WEIPING*1000,0),colorFF00;DRAWNUMBER(WEIPING0AND0=1,(IF(WEIHE0,HIGH,LOW)-D

5、ATANUMBER,WEIHE/WEIPING,0),colorFFFF;DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);DEA:=EMA(DIFF,9);MACD:=2*(DIFF-DEA);MA1:=MACD;MA2:=MACD;MA3:=MACD;MA1WE:=MACD;HE:=MA2;WEIHEMACD:=0;WEIPINGMACD:=0;H1:=HIGH;L1:=LOW;FOXH:=HIGH;FOXL:=LOW;FOXBAOHAN:=LING;FOXBAOHAN1:=LING;FOXGUANXI:=LING;FOXFENXING:=LING;FOXFENXING1

6、:=LING;FOXFENNUMBER:=LING;FOXQUEKOU:=LING;FOXBICOUNT:=LING;FOXWEIBI:=LING;vbh(m-1)andvbl(m)vbl(m-1)thenvbguanxi(m)=1elseif(vbh(m)vbh(m-1)andvbl(m)=vbh(m-1)andvbl(m)=vbh(m-1)andvbl(m)nlast)thenExitDoendifloop第一个包含的位置lastfenxing=ibao=0existbao=0form=itonlastif(vbbaohan(m)0)thenbao=bao+1if(bao=2)thenif

7、(vbbaohan(m)=2andvbbaohan(m-1)=1orvbbaohan(m)=-2andvbbaohan(m-1)=-1)thenvbbaohan1(m)=baoif(bao2)thenexistbao=BAOfori=1tobaovbh(m-bao+i)=vbh(m)vbL(m-bao+i)=vbl(m)if(i=1ori=bao)thenelsevbbaohan1(m-bao+i)=-3endifnextendifdowhile(bao1)vbh(m-bao+1)=vbh(m)vbL(m-bao+1)=vbl(m)if(existbao=BAOorbao=existbao-1

8、)thenelsevbbaohan1(m-bao+1)=-3endifbao=bao-1loopbao=0endifendifelsebao=0endifnext分型预处理existbao=vbguanxi(0)andandformandandif(vbh(m-1)=vbh(m-2)andvbh(m-1)=vbh(m)andvbl(m-1)=vbl(m-2)vbl(m-1)=vbl(m)orvbh(m-1)=vbh(m-2)andvbh(m-1)=vbh(m)vbl(m-1)vbl(m-2)andvbl(m-1)=vbl(m)thenendifif(vbguanxi(m)existbao)th

9、enif(vbguanxi(m-1)=1)thenvbfenxing(m-1)=1顶elsevbfenxing(m-1)=-1底endifexistbao=vbguanxi(m)endifnext以上分型预处理form=0tonlastvbfenxing1(m)=vbfenxing(m)vbfenxing1(m)=0nexti=0dowhile(vbfenxing(i)=0)i=i+1if(inlast)thenExitDoendiflooplastfenxing=i取第一个分型位置下面去掉连续的顶或底form=lastfenxing+1+nlasttonlastif(vbfenxing(m)

10、0)thenif(vbfenxing(m)vbfenxing(lastfenxing)thenlastfenxing=melseif(vbfenxing(m)=1)thenif(vbh(m)vbh(lastfenxing)thenvbfenxing(lastfenxing)=0lastfenxing=melsevbfenxing(m)=0endifelseif(vbl(m)vbl(lastfenxing)thenvbfenxing(lastfenxing)=0lastfenxing=melsevbfenxing(m)=0endifendif顶要高的底要低的相等时要选时间在前面的vbfenxin

11、g(m)=0endifendifnext以下处理分型间距离不小于4的要求同时处理连续的顶和底的问题bao=0i=0n=0existbao=vbfenxing(0)m=0dowhile(vbbaohan1(i)nlast)thenExitDoendiflooplastbaohan=i第一个包含位置i=0dowhile(vbfenxing(i)=0)i=i+1if(inlast)thenExitDoendifloop第一个预备分型位置lastfenxing=ilastfenxing1=lastfenxingi=0form=lastfenxing+1tonlastif(vbbaohan(m)=0)t

12、henbao=bao+1elseif(vbbaohan1(m)=2)thenn=n+1endifendifvbfenxing1(m)=bao+n包含关系只视为一个k线vbfenxing1(m)=vbbaohan1(m)if(m735)thenexitforendifif(vbfenxing(m)0)thenif(bao+n=4)then分型间距离大于等于4符合要求if(vbfenxing(m)vbfenxing(lastfenxing)thenvbfenxing1(m)=vbfenxing(m)n=0bao=0lastfenxing1=lastfenxinglastfenxing=melsei

13、f(vbfenxing(m)=1)thenif(vbh(m)vbh(lastfenxing)thenexitforvbfenxing(lastfenxing)=0n=0bao=0lastfenxing1=lastfenxinglastfenxing=melsevbfenxing(m)=0endifelseif(vbl(m)vbl(lastfenxing)thenvbfenxing(lastfenxing)=0n=0bao=0lastfenxing1=lastfenxinglastfenxing=melsevbfenxing(m)=0endifendif顶要高的底要低的相等时要选时间在前面的en

14、dif将上一个分开型位置数据更新为当下位置else分型间距离小于4要看情况若与前分型不同且破坏前笔,可保留其它情况要去掉破坏前笔即相邻分型不同且高于上上个顶或低于上上个底if(vbfenxing(m)vbfenxing(lastfenxing)thenvbfenxing1(m)=vbfenxing(m)i=lastfenxing-1dowhile(vbfenxing(i)vbfenxing(m)i=i-1if(i=0)thenExitDoendiflooplastfenxing1=lastfenxingi=lastfenxing1if(vbfenxing(m)=1)thenif(vbl(m)v

15、bl1(m)thent1=vbl1(m)elset1=vbl(m)endifif(vbh(i)vbh1(i)thent2=vbh(m)elset2=vbh1(m)endifif(t1t2)thenn=0bao=0lastfenxing1=lastfenxinglastfenxing=melsevbfenxing(m)=0endifelseif(vbh(m)vbh1(m)thent1=vbh(m)elset1=vbh1(m)endifif(vbl(i)vbl1(i)thent2=vbl(m)elset2=vbl1(m)endifif(t1t2)thenif(vbh(m)vbh(lastfenxi

16、ng)thenexitforvbfenxing(lastfenxing)=0n=0bao=0lastfenxing1=lastfenxinglastfenxing=melsevbfenxing(m)=0endifelseif(vbl(m)nlast)thenExitDoendiflooplastfenxing=i取第一个分型位置下面去掉连续的顶或底form=lastfenxing+1+nlasttonlastif(vbfenxing(m)0)thenif(vbfenxing(m)vbfenxing(lastfenxing)thenlastfenxing=melseif(vbfenxing(m)

17、=1)thenif(vbh(m)vbh(lastfenxing)thenvbfenxing(lastfenxing)=0lastfenxing=melsevbfenxing(m)=0endifelseif(vbl(m)nlast)thenExitDoendiflooplastfenxing=iform=lastfenxing+1tonlastif(vbfenxing(m)0)thenif(vbfenxing(m)0)thenif(vbh(m)vbl(lastfenxing)then满足条件顶底lastfenxing=melse不满足条件顶底两个全置为0,并查下一个vbfenxing(m)=0v

18、bfenxing(lastfenxing)=0m=m+1dowhile(vbfenxing(m)=0)m=m+1if(mnlast)thenExitDoendiflooplastfenxing=mendifelseif(vbl(m)vbh(lastfenxing)then满足条件底顶lastfenxing=melse不满足条件底nlast)thenExitDoendiflooplastfenxing=mendifendifendifnexti=0form=0tonlastif(vbfenxing(m)0)theni=i+1vbfennumber(m)=iendifnextvbfennumber

19、(nlast)=0vbfenxing(nlast)=-vbfenxing(lastfenxing)x1=0 x2=0 x3=0 x4=0 x5=0 x6=0 x7=0bi=0maxbi=0zhsh=0先取三个分型数据,然后进入循环处理a=0DoWhile(vbfenxing(a)=0anda=nlast)DoWhile(anlast)if(vbfenxing(a)0)thenexitdoendifa=a+1Loopx1=aa=x1+1DoWhile(anlast)if(vbfenxing(a)0)thenexitdoendifa=a+1Loopx2=aa=x2+1DoWhile(anlast)

20、if(vbfenxing(a)0)thenexitdoendifa=a+1Loopx3=aa=x3+1bi=0zhshbegin=x1zzg=0zzd=0zgg=0zdd=0zg=0zd=0gg=0dd=0FORm=aTOnlast(1)开始按照找出不能形成线段(中枢)的连续三笔中的中间那笔是两个线段(中枢)的分界标志其它则是不同级别的中枢和线段的思路设计在大盘和指数中分笔与1分中1分级别要大一些,在个股中1分要大一些因有的个股1分钟内可能无成交if(vbfenxing(m)0)then(2)begin只在分型不为0时进行处理,即:是分型时处理bi=bi+1x4=mif(zhshbegin=0

21、)thenzhshbegin=x4endifif(vbfenxing(x1)0)then以顶分型开始,xl,x3取高点x2,x4取低点,线段及中枢区间取高点中的低者,低点中的高者zg=min(vbh(x1),vbh(x3)临时中枢高点zd=max(vbl(x2),vbl(x4)临时中枢低点gg=max(vbh(x1),vbh(x3)临时中枢高高点dd=min(vbl(x2),vbl(x4)临时中枢低低点else以底分型开始,x2,x4取高点xl,x3取低点zg=min(vbh(x2),vbh(x4)临时中枢高点zd=max(vbl(x1),vbl(x3)临时中枢低点gg=max(vbh(x2)

22、,vbh(x4)临时中枢高高点dd=min(vbl(x1),vbl(x3)临时中枢低低点endifif(zdzg)then(3)中枢低点大于高点,即未形成中枢,要将x2,x3的位置记录出来vbweibi(x2)=1vbweibi(x3)=2msgbox(当前的vbweibi(x3):&cstr(vbweibi(x3)maxbi=max(maxbi,bi)vbbicount(x2)=bibi=-1zhshbegin=0else(3)中枢低点小于等于高点,即形成中枢,不用记录位置endif(3)结束,将xl,x2,x3的值分别换成x2,x3,x4的值,也即向前推进一个分型,然后再返回进行比较x1=

23、x2x2=x3x3=x4endif(2)结束NEXT(1)结束找出所有连续三笔无重叠的位置,即不能形成中枢的候选位置,以下要对这些位置进行筛选并逐个分析,看图时要特别注意这些位置以下为自定义函数部分Functionmax(a,b)If(a=b)Thenmax=aElsemax=bEndIfEndFunctionFunctionmin(a,b)If(aFOXXIAN:=LING;FOXXIANG:=LING;FOXXIAND:=LING;FOXTEG:=LING;FOXTED:=LING;FOXTEGX:=LING;FOXTEG1:=LING;FOXTED1:=LING;FOXTEGX1:=LI

24、NG;FOXDATATYPE:=DATATYPE;FOXTEBAO:=LING;FOXTEBAO1:=LING;FOXTEGUANXI1:=LING;FOXFENNUMXIAN:=LING;FOXZQDM:=STRLEFT(STKLABEL,2);FOXXIAOSHU:=0;=0ORvbdatanumber=1)THENIF(vbdatanumber=0ORvbdatanumber=1)and(vbzqdm=88orvbzqdm=1borvbzqdm=1Borvbzqdm=1aorvbzqdm=1Aorvbzqdm=39)THENELSEFORm=0TOnlastif(vbfenxing(m)

25、0)thenvbxian(m)=vbfenxing(m)vbxiang(m)=vbh(m)vbxiand(m)=vbl(m)endifNEXTENdIF笔的数据是按K线数据自动计算的即:vbfenxing初始计算相关数据置为0当数据类型为0和1即分笔和1分钟时要按笔-线段的过程组成中枢其它级别(指5分钟及以上)时用笔组成中枢此时要将笔的数据即:分型位置代入线段数组中IF(vbdatanumber=0ORvbdatanumber=1)THENIF(vbdatanumber=0ORvbdatanumber=1)and(vbzqdm=88orvbzqdm=1borvbzqdm=1Borvbzqdm=

26、1aorvbzqdm=1Aorvbzqdm=39)THEN(1)分笔和1分钟计算线段数据vbzqdm=0为指数公式还未考虑开始连续三笔无重叠不能形成线段的处理,缠论中对此也未明确不能形成线段的笔应发生属于那个线段对走势中间连续三笔无重叠不能形成线段的处理也未明确不能形成线段的笔应属于那个线段缠论中规定线段是连续的且以不同的分型作为两个端点即:不能顶到顶和底到底,此规定要考虑的i=0ex=0DoWhile(i=nlast)If(vbfenxing(i)0)thenexitdoendifi=i+1Loopx1=ixianbegin=x1i=x1+1DoWhile(i=nlast)If(vbfenx

27、ing(i)0)thenexitdoendifi=i+1Loopx2=ii=x2+1DoWhile(i=nlast)If(vbfenxing(i)0)thenexitdoendifi=i+1Loopx3=ii=x3+1DoWhile(ex=0)()if(x3nlastorx2nlast)thenmsgbox(当前的1x2:&cstr(x2)&当前的1x3:&cstr(x3)&当前的nlast:&cstr(nlast)exitdoendifif(vbweibi(x2)=0orvbweibi(x3)=0orvbweibi(x3)=1orvbweibi(x2)=2)thenmsgbox(当前的1x2

28、:&cstr(x2)&当前的1x3:&cstr(x3)&当前的nlast:&cstr(nlast)exitdoelsex1=x2x2=x3DoWhile(i=nlast)If(vbfenxing(i)0)thenexitdoendifi=i+1Loopx3=ii=x3+1endifloop()i=x3+1xianbegin=x1tewei=x2if(x3=nlast)thenIf(vbfenxing(x1)=1)Thenxianfang=-1以顶分型开始,线段方向向下vbted(tewei)=vbl(tewei)vbteg(tewei)=vbh(x3)Elsexianfang=-1以底分型开始

29、,线段方向向上vbteg(tewei)=vbl(tewei)vbted(tewei)=vbh(x3)EndIfvbtegx(tewei)=xianfang定义出第一个特征序列,及关系即:是上升的还是下降的endiftewei=x4tenumber=0i=x3+1vbxian(xianbegin)=vbfenxing(xianbegin)vbxiang(xianbegin)=vbh(xianbegin)vbxiand(xianbegin)=vbl(xianbegin)vbxiang(xianbegin)=ggvbxiand(xianbegin)=ddForm=iTonlast(2)DoWhile

30、(m=nlast)If(vbfenxing(m)0)thenexitdoendifm=m+1Loopx4=mm=x4+1DoWhile(m=nlast)If(vbfenxing(m)0)thenexitdoendifm=m+1Loopx5=mm=x5+1newtewei=x4if(x5nlast)thenexitforendifIf(xianfang=-1)Thenxianfang=-1以顶分型开始,线段方向向下vbted(newtewei)=vbl(newtewei)vbteg(newtewei)=vbh(x5)Elsexianfang=1以底分型开始,线段方向向上vbteg(newtewe

31、i)=vbh(newtewei)vbted(newtewei)=vbl(x5)EndIf判断方向/缺口及包含vbtegx(newtewei)=xianfangtenumber=1+tenumberif(tenumber=1)thenIf(vbted(newtewei)vbted(tewei)Andvbteg(newtewei)vbteg(tewei)Orvbted(newtewei)vbted(tewei)Andvbteg(newtewei)vbted(tewei)Andvbteg(newtewei)vbteg(tewei)Then(4)特征序列的方向向上tefang=1Elsetefang=

32、-1(4)特征序列的方向向下EndIfvbtegx(newtewei)=tefangIf(xianfangtefang)Then(5)线段方向与特征序列的方向不同,即:出现了特征序列的分型线段方向与特征序列关系不同,出现分型,首先判断自tewei(x2)开始的三笔是否构成线段,构成线段则下一步,不构成线段返回原线段继续,再判断第一个(tewei的前一个特征序列)与第二个(tewei)之间是否有缺口if(vbweibi(x4)=0orvbweibi(x3)=0orvbweibi(x4)=1orvbweibi(x3)=2)thenif(vbweibi(x6)=0orvbweibi(x5)=0)th

33、en构成线段,新线段从newtewei开始,原线段在newtewei处结束还要判断顶是否大于底if(tenumber=1)then(tenumber)此情况发生在三笔构成线段但线段的两端不是其最高点或最低点的情况,当下只有三笔不能开始新线段否则就出现一笔构成一个线段的现象了i=mDoWhile(i=nlast)If(vbfenxing(i)0)thenexitdoendifi=i+1Loopx6=iif(x6nlast)thenmsgbox(当前的x6:&cstr(x6)&当前的nlast:&cstr(nlast)exitforendif再判断x5,x6是否构成线段,构成则新线段否则原线段继续

34、if(vbweibi(x6)=0orvbweibi(x5)=0orvbweibi(x6)=1orvbweibi(x5)=2)then开始构成新线段,新线段在newtewei开始xianbegin=newteweivbxian(xianbegin)=vbfenxing(xianbegin)vbxiang(xianbegin)=vbh(xianbegin)vbxiand(xianbegin)=vbl(xianbegin)x2=x5x3=x6tewei=x2m=x6+1If(vbfenxing(xianbegin)=1)Thenxianfang=-1以顶分型开始,线段方向向下vbted(tewei)

35、=vbl(tewei)vbteg(tewei)=vbh(x3)Elsexianfang=1以底分型开始,线段方向向上vbteg(tewei)=vbh(tewei)vbted(tewei)=vbl(x3)EndIfvbtegx(tewei)=xianfangtenumber=0elseelse原线段继续tewei=newteweivbtegx(newtewei)=xianfangx2=x4x3=x5m=x5+1endif开始结束else(tenumber)tenumber=0bao=0 xianbegin=teweivbxian(xianbegin)=vbfenxing(xianbegin)vb

36、xiang(xianbegin)=vbh(xianbegin)vbxiand(xianbegin)=vbl(xianbegin)x2=X3x3=x4tewei=x2If(vbfenxing(xianbegin)=1)Thenxianfang=-1以顶分型开始,线段方向向下vbted(tewei)=vbl(tewei)vbteg(tewei)=vbh(x3)Elsexianfang=1以底分型开始,线段方向向上vbteg(tewei)=vbh(tewei)vbted(tewei)=vbl(x3)EndIfvbtegx(tewei)=xianfangm=x3+1endif(tenumber)els

37、e不构成线段,原线段继续tewei=newteweivbtegx(newtewei)=xianfangx2=x4x3=x5m=x5+1endifElse(5)线段方向与特征序列关系相同,未出现分型tewei的值更新为newteweitenumber=1+tenumbervbtegx(newtewei)=xianfangtewei=newteweix2=x4x3=x5EndIf(5)Else(3)包含vbtegx(newtewei)=xianfangIf(vbted(tewei)=vbted(newtewei)Andvbteg(tewei)=0)If(vbteg(temp)0)thenexitd

38、oendiftemp=temp-1Loopif(temp=2Orvbtebao(temp)=-2Orvbtegx(temp)xianfang)Thenex=1Elsebao=bao+1EndIftemp=temp-1Loop有几个连续包含,指大于三个K线的包含,BAO的值是包含的K线数减2,当只有两个连续K线包含时BAO为0temp=tewei-1Fori=1TobaoDoWhile(temp=0)If(vbteg(temp)0)thenexitdoendiftemp=temp-1Loopif(temp0)If(vbteg(temp)0)thenexitdo&cstr(nlast)endift

39、emp=temp&cstr(nlast)msgbox(当前的12temp:&cstr(temp)&当前的nlast:exitforendifvbtebao(temp)=-3temp=temp-1EndIfNexttewei=newteweix2=x4x3=x5m=x5+1EndIf(3)Next(2)Fori=0TonlastIf(vbtebao(i)=-2)Thenvbtebao(i)=2EndIfIf(vbtebao1(i)=-2)Thenvbtebao1(i)=2EndIfNext包含关系标准化,即结束标志都为2及以上处理线段的两个端点满足条件顶=底i=0dowhile(vbxian(i

40、)=0)i=i+1if(inlast)thenExitDoendiflooplastfenxing=iform=lastfenxing+1+nlasttonlastif(vbxian(m)0)thenif(vbxian(m)0)thenif(vbxiang(m)=vbxiand(lastfenxing)then满足条件顶=底lastfenxing=melse不满足条件顶nlast)thenExitDoendiflooplastfenxing=mendifelseif(vbxiand(m)=vbxiang(lastfenxing)then满足条件底顶lastfenxing=melse不满足条件底nlast)thenExitDoendiflooplastfenxing=mendifendi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论