Kod:
{ADX-PARAMETER}
$par1:=14
{$opt($par2,1.00020,1.00120,0.0001)}
{$opt($par3,1,3,0.5)}
{$opt($par4,1.00010,1.00110,0.0001)}
{$opt($par5,1.00020,1.00100,0.0001)}
{CLOSE ÄR INOM ETT AVSTÅND FRÅN ÖVRE BB-BAND DÄR TRENDKANALEN FORTFARANDE ANSES INTAKT}
$par2:=1.0018{1.00070}
{POSITION FÅR EJ TAS I ETT IMPULSCANDLE SOM BESKRIVET OVAN!}
$par3:=3.5{2}
{PERIODENS HÖGSTA FÅR EJ NOTERAS FÖR HÖGT ÖVER ÖVRE BB-BAND}
$par4:=1.0003{1.00060}
{EMA5 FÅR EJ DRA IFRÅN TENKAN OCH BILDA DEN "PUKEL"}
$par5:=1.0008{1.00035}
{OPEN SKA VARA NÄRA MA-20}
$par6:=1.00075{0.00000}
tenkan1:=div(add(hhv(h,7),llv(l,7)),2)
kijun1:=div(add(hhv(h,22),llv(l,22)),2)
senkou_spana1:=aref(div(add(tenkan1,kijun1),2),26)
senkou_spanb1:=aref(div(add(hhv(h,44),llv(l,44)),2),22)
tenkan2:=div(add(hhv(h,7),llv(l,7)),2)
kijun2:=div(add(hhv(h,22),llv(l,22)),2)
senkou_spana2:=aref(div(add(tenkan2,kijun2),2),26)
senkou_spanb2:=aref(div(add(hhv(h,44),llv(l,44)),2),22)
tenkan3:=div(add(hhv(h,7),llv(l,7)),2)
kijun3:=div(add(hhv(h,22),llv(l,22)),2)
senkou_spana3:=aref(div(add(tenkan3,kijun3),2),26)
senkou_spanb3:=aref(div(add(hhv(h,44),llv(l,44)),2),22)
i5(
add(c,1.5)
high=cmpref(h,1,a)
low=cmpref(l,1,a)
close=cmpref(c,1,a)
Pivot=Div(Add(Add(High,Close),Low),3)
R_3=Add(High,Mult(2,Sub(Pivot,Low)))
S_3=Sub(Low,Mult(2,Sub(High,Pivot)))
R_1=Sub(Mult(2,Pivot),Low)
S_1=Sub(Mult(2,Pivot),High)
R_2=Add(Pivot,Sub(R_1,S_1))
S_2=Sub(Pivot,Sub(R_1,S_1))
diffh=sub(h,aref(h,1))
diffl=sub(aref(l,1),l)
dmplus=if(and(gt(diffh,diffl),gt(diffh,0)),diffh,0)
dmminus=if(and(gt(diffl,diffh),gt(diffl,0)),diffl,0)
diplus=mult(100,ema(div(dmplus,atr($par1)),$par1))
diminus=mult(100,ema(div(dmminus,atr($par1)),$par1))
adx=ema(mult(100,div(abs(sub(diplus,diminus)),abs(add(diplus,diminus)))),$par1)
ag12=BolBands(20,2.0,u)
ag21=BolBands(20,2.0,l)
bolma1=Mov(ag12,6,s)
bolma2=Mov(ag21,6,s)
diff1=Gt(Div(ag12,ag21),1.0035)
diff2=Gt(Div(bolma1,bolma2),1.0035)
ma100=mov(c,100,s)
ma20=mov(c,20,s)
ma50=mov(c,50,s)
em4=ema(c,14)
em5=ema(c,5)
{------------------------------------------------------------------}
{------------------------------------------------------------------}
{----------------------GRUNDKRITERIER------------------------------}
{------------------------------------------------------------------}
{------------------------------------------------------------------}
TENKAN_1=gt(c,tenkan1)
KIJUN_1=gt(c,kijun1)
VILLKOR000=and(TENKAN_1,KIJUN_1)
SPAN_A=gt(c,senkou_spana1)
SPAN_B=gt(c,senkou_spanb1)
VILLKOR001=OR(SPAN_A,SPAN_B)
VILLKOR002=Gt(ma20,aref(ma20,1))
m1=mov(c,12,e)
m2=mov(c,26,e)
mcd=sub(m1,m2)
mtrig=mov(mcd,9,e)
VILLKOR003=Gt(m2,aref(m2,10))
SIGNAL1A=AND(VILLKOR000,VILLKOR001)
SIGNAL1B=AND(VILLKOR002,VILLKOR003)
SIGNAL1C=AND(SIGNAL1A,SIGNAL1B)
{----------------------REFERENSPUNKTER-----------------------------}
{------------------------------------------------------------------}
{------------------------------------------------------------------}
{VI HAR EN TILL FEM HÖGRE HÖGSTA}
HÖJD_hi_1_5=HHv(GT(C,aref(C,1)),1)
HÖJD_hi_2_5=HHv(GT(C,aref(C,1)),5)
VILLKOR004=OR(HÖJD_hi_1_5,HÖJD_hi_2_5)
SIGNAL2=and(aref(SIGNAL1C,20),VILLKOR004)
{----------------------GENERALISERINGSOMRÅDE-----------------------}
{------------------------------------------------------------------}
{------------------------------------------------------------------}
fall_hi_1_5=llv(lt(h,aref(h,1)),1)
fall_hi_2_5=llv(lt(h,aref(h,1)),2)
fall_hi_3_5=llv(lt(h,aref(h,1)),3)
fall_hi_4_5=llv(lt(h,aref(h,1)),4)
LÄGRE_IGH_5MIN_A=OR(fall_hi_1_5,fall_hi_2_5)
LÄGRE_IGH_5MIN_B=OR(fall_hi_3_5,fall_hi_4_5)
VILLKOR005=OR(LÄGRE_IGH_5MIN_A,LÄGRE_IGH_5MIN_B)
SIGNAL3=and(aref(SIGNAL2,10),VILLKOR005)
{------------------------------------------------------------------}
{------------------------------------------------------------------}
{----------------------REFERENSPUNKTER-----------------------------}
{KURSEN HAR CLOSE UNDER TENKAN, KINJUN ELLER MA-20}
VILLKOR6A=LT(L,tenkan1)
VILLKOR6B=LT(L,kijun1)
VILLKOR6C=LT(L,MA20)
VILLKOR6Z=LT(L,EM5)
VILLKOR6D=OR(VILLKOR6A,VILLKOR6B)
VILLKOR006=OR(OR(VILLKOR6D,VILLKOR6C),VILLKOR6Z)
SIGNAL4=and(HHv(aref(SIGNAL3,1),10),VILLKOR006)
{----------------------NYA GRUNDKRITERIER--------------------------}
{------------------------------------------------------------------}
{------------------------------------------------------------------}
{VI HAR EN SHOOTING S. ELLER DOJI, VARS HÖGSTA SOM TAS UT UPP TILL TRE PERIODER SENARE}
{EN DOJI-FORMATION}
range1=sub(h,l)
body1=abs(sub(c,o))
doji1=lt(body1,mult(0.2,range1))
doji2=and(doji1,gt(mn(o,c),add(l,mult(range1,0.3))))
doji3=and(doji2,lt(mx(o,c),sub(h,mult(range1,0.3))))
{EN SHOOTINGS.FORMATION}
mitten2=div(add(H,L),2)
shooting1=and(lt(C,mitten2),lt(O,mitten2))
{FINNER EN STÄNGING UNDER OVAN NÄMNDA FORMATIONERS LÄGSTA}
hi2=find(doji3,5,H,1)
hi3=find(shooting1,5,H,1)
FÄLLA01=OR(GT(H,hi2),GT(H,hi3))
FÄLLA02=AND(GT(C,O),GT(C,EM5))
VILLKOR007=and(hhv(aref(FÄLLA01,1),3),FÄLLA02)
SIGNAL5=and(hhv(aref(SIGNAL4,1),10),VILLKOR007)
{------------------------------------------------------------------}
{KURSEN BEFINNER SIG OVAN MOLNET}
OVAN_MOLNET_1=GT(c,senkou_spana1)
OVAN_MOLNET_2=GT(c,senkou_spanb1)
VILLKOR008=and(OVAN_MOLNET_1,OVAN_MOLNET_2)
SIGNAL6=and(SIGNAL5,VILLKOR008)
{------------------------------------------------------------------}
{---------------BESKRIVNING AV STIGANDE BOLLINGER-TREND------------}
{------------------------------------------------------------------}
{ÖVRE BB-BAND FÅR EJ AVVIKA FRÅN MA-20, RISK ATT KURSEN BRYTER TRENDTAKET}
VILLKOR011a=abs(sub(roc(AG12,1,%),roc(MA20,1,%)))
VILLKOR011b=gt(VILLKOR011a,0.0105)
VILLKOR011c=NOT(VILLKOR011b)
{ÖVRE BB-BAND FÅR EJ AVVIKA FRÅN EMA-5, RISK ATT KURSEN BÖRJAR KONSOL. ALT RULLA ÖVER}
VILLKOR012a=abs(sub(roc(ag12,2,%),roc(EM5,2,%)))
VILLKOR012b=gt(VILLKOR012a,0.0180)
VILLKOR012c=NOT(VILLKOR012b)
SIGNAL7=and(and(SIGNAL6,VILLKOR011C),VILLKOR012C)
{------------------------------------------------------------------}
{LUTNINGEN PÅ ADX DEFINIERA TRENDKANALENS STIGNING ISTÄLLET FÖR DIV MEDELVÄRDEN}
VILLKOR014a=Gt(ROC(adx,2,%),0.0050)
VILLKOR014b=Gt(adx,aref(adx,2))
VILLKOR014c=and(VILLKOR014a,VILLKOR014b)
SIGNAL8=and(SIGNAL7,VILLKOR014c)
{------------------------------------------------------------------}
{------------------------------------------------------------------}
{----------------------ELIMNIERA FELSIGNALER-----------------------}
{------------------------------------------------------------------}
{------------------------------------------------------------------}
{CLOSE ÄR INOM ETT AVSTÅND FRÅN ÖVRE BB-BAND DÄR TRENDKANALEN FORTFARANDE ANSES INTAKT}
VILLKOR010a=abs(div(ag12,c))
VILLKOR010b=lt(VILLKOR010a,$par2)
SIGNAL9=and(SIGNAL8,VILLKOR010B)
{TENKAN FÅR EJ FALLA IFRÅN EMA-5}
VILLKOR017a=abs(sub(roc(kijun1,8,%),roc(MA20,12,%)))
VILLKOR017b=Gt(VILLKOR017a,0.130)
VILLKOR017c=NOT(VILLKOR017b)
{KIJUN FÅR EJ FALLA IFRÅN MA-20}
VILLKOR018a=abs(sub(roc(kijun1,12,%),roc(MA20,1,%)))
VILLKOR018b=Lt(VILLKOR018a,0.0025)
VILLKOR018c=NOT(VILLKOR018b)
SIGNALA=and(AND(SIGNAL9,VILLKOR017C),VILLKOR018C)
{BESKRIVNING AV EN STAPEL SOM ÄR X-ANTAL SÅ MYCKET STÖRRE ÄN FEM FÖREGÅNDE}
{POSITION FÅR EJ TAS I ETT IMPULSCANDLE SOM BESKRIVET OVAN!}
hOjd=sub(H,L)
avg=div(sum(hOjd,5),5)
VILLKOR019A=gt(hOjd,mult($par3,avg))
VILLKOR019B=NOT(VILLKOR019A)
{------------------------------------------------------------------}
{------------------------------------------------------------------}
{PERIODENS HÖGSTA FÅR EJ NOTERAS FÖR HÖGT ÖVER ÖVRE BB-BAND}
VILLKOR013a=div(H,AG12)
VILLKOR013b=Gt(VILLKOR013a,$par4)
VILLKOR013C=NOT(VILLKOR013b)
{------------------------------------------------------------------}
{EMA5 FÅR EJ DRA IFRÅN TENKAN OCH BILDA DEN "PUKEL"}
VILLKOR020a=abs(div(EM5,TENKAN1))
VILLKOR020b=Gt(VILLKOR020a,$par5)
VILLKOR020C=NOT(VILLKOR020b)
FEL_SIGNALER=and(and(VILLKOR019B,VILLKOR013C),VILLKOR020C)
SIGNALB=and(SIGNALA,VILLKOR019B)
{PERIODEN MÅSTE HA EN HÖGRE LOW ÄN FÖREGÅENDE}
VILLKOR016=gt(L,hhv(aref(L,1),1))
SIGNALC=and(SIGNALB,VILLKOR016)
{draw(mult(VILLKOR016,25),5,Gsbfw2)}
{------------------------------------------------------------------}
{OPEN SKA VARA NÄRA MA-20}
VILLKOR031a=div(O,ma20)
VILLKOR031b=Gt(VILLKOR031a,1.00035)
VILLKOR031C=NOT(VILLKOR031b)
SIGNALD=and(SIGNALC,VILLKOR031C)
efter9=ge(xtime(d,h),9.30)
innan18=lt(xtime(d,h),17.0)
ej_köp_samma_stapel=gt(d,lasttrade(b,d))
Nollinnehav=eqv(portfolio(v),0)
mult(mult(aref(SIGNALc,1),30),and(Nollinnehav,and(efter9,and(ej_köp_samma_stapel,innan18))))
)
{@A(0,)@B(10,)@C(15,)}






Comment