Ursprungligen postat av e-Rik
Visa inlägg
Allmänt meddelande
Collapse
No announcement yet.
Heikin Ashi smooth trend + trigger
Collapse
X
-
-
Så här ser det ut än så länge; Varning kör inte skarpt med denna funkar inte än!!!
ejstängning:=ge(mult(1440,sub(market(c),frac(date()))),30)
{ säkerställ att klockan är minst 09:15 }
inpådagen:=Gt(Frac(date()),0.386)
ejlång:=Le(Portfolio(v),0)
ma30:=mov(c,20,e)
trendupp:=gt(roc(ma30,3,%),0.00150)
sp1:=50
terC:=cmpref(c,0,A)
terO:=cmpref(o,0,A)
terH:=cmpref(h,0,A)
terL:=cmpref(l,0,A)
firstT:=aref(div(add(terO,terC),2),add(sp1,1):50)
mc1T:=div(add(add(terC,terO),add(terL,terH)),4)
firstI:=aref(div(add(o,c),2),add(sp1,1):50)
mc1I:=div(add(add(c,o),add(l,h)),4)
i15(
{arr with power of 2 values,9,8,7...}
retval(0,0)
retval(0,1)
retval(0,2)
retval(0,3)
ack=cum(1,sp1)
mweight=power(2,sub(sp1,ack))
mcweightT=mult(mweight,aref(mc1T,ack:sp1))
mscweightT=retval(add(getval(0),mcweightT),0)
dscweightT=retval(add(getval(1),mweight),1)
loop(ack,sp1)
dcweightT=add(getval(1),1)
tots1T=add(getval(0),const(firstT))
haOpenT=div(tots1T,mult(1,dcweightT))
mcloseT=div(add(add(terC,terO),add(terL,terH)),4)
köp1=And(And(ejlång,inpådagen),trendupp)
köp2=and(and(mcloseT,haOpenT),köp1)
draw(mult(köp2,12),3,gsbF)
and(and(köp2,20),ejstängning)
)
{@A(30,OMX Stock )}
ejstängning:=ge(mult(1440,sub(market(c),frac(date()))),30)
{ säkerställ att klockan är minst 09:15 }
inpådagen:=Gt(Frac(date()),0.386)
ejkort:=Ge(Portfolio(v),0)
ma30:=mov(c,20,e)
trendned:=lt(roc(ma30,3,%),0.00200)
sp1:=50
terC:=cmpref(c,0,A)
terO:=cmpref(o,0,A)
terH:=cmpref(h,0,A)
terL:=cmpref(l,0,A)
firstT:=aref(div(add(terO,terC),2),add(sp1,1):50)
mc1T:=div(add(add(terC,terO),add(terL,terH)),4)
firstI:=aref(div(add(o,c),2),add(sp1,1):50)
mc1I:=div(add(add(c,o),add(l,h)),4)
i15(
{arr with power of 2 values,9,8,7...}
retval(0,0)
retval(0,1)
retval(0,2)
retval(0,3)
ack=cum(1,sp1)
mweight=power(2,sub(sp1,ack))
mcweightI=mult(mweight,aref(mc1I,ack:sp1))
mscweightI=retval(add(getval(2),mcweightI),2)
dscweightI=retval(add(getval(3),mweight),3)
loop(ack,sp1)
dcweightI=add(getval(3),1)
tots1I=add(getval(2),const(firstI))
haOpenI=div(tots1I,mult(1,dcweightI))
mcloseI=div(add(add(c,o),add(l,h)),4)
blank1=And(And(ejkort,inpådagen),trendned)
blank2=and(and(mcloseI,haOpenI),blank1)
draw(mult(blank2,12),4,rsbF)
and(and(blank2,20),ejstängning)
)
{@A(30,OMX Stock )}Berra
Comment
-
Ursprungligen postat av Rikard Nilsson Visa inläggDu kan slå på vinstkurvan i Analysern efter att du laddat resultatet från simulering. Öppna diagram med "diagramknappen" och slå därefter på vinstkurvan med "myntet".
omxs306A
Avkastning -215.25 kr -0.05% på 316 affärer under 111:17:05 tim
Av dessa blankat 159 st med avkastning -90.00 kr -0.04%
Innehav 24 st med vinst 87.50 kr 0.26%
Innehav 133 st med förlust -212.75 kr -0.11% katastrof
Blankning 34 st med vinst 111.00 kr 0.23%
Blankning 125 st med förlust -201.00 kr -0.12%Katastrof
ett år på omxs30
Avkastning 1575.73 kr 0.03% på 3424 affärer under 1983:42:00 tim
Av dessa blankat 1709 st med avkastning 789.44 kr 0.03%
Innehav 676 st med vinst 1946.72 kr 0.18%
Innehav 1039 st med förlust -1160.43 kr -0.07%
Blankning 655 st med vinst 1953.58 kr 0.19%
Blankning 1054 st med förlust -1164.14 kr -0.07%Berra
Comment
-
Exempel på en dag:
2015-12-18 09:15:55 Sälj -1,00 1*431,50 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2015-12-18 10:42:25 Köp 2,00 1*430,75 0,75 0,05% 0,75 0,05% 01:26:30 1,00 Innehav 0,75 Berra Heikin-Ashi Long 0.000000
2015-12-18 10:43:45 Sälj -2,00 1*429,75 -1,00 -0,07% -1,00 -0,07% 00:01:20 -1,00 Blankad -0,25 Berra Heikin-Ashi Short 0.000000
2015-12-18 10:45:00 Köp 2,00 1*430,25 -0,50 -0,03% -0,50 -0,03% 00:01:15 1,00 Innehav -0,75 Berra Heikin-Ashi Long 0.000000
2015-12-18 10:52:40 Sälj -2,00 1*427,25 -3,00 -0,21% -3,00 -0,21% 00:07:40 -1,00 Blankad -3,75 Berra Heikin-Ashi Short 0.000000
2015-12-18 10:53:40 Köp 2,00 1*428,25 -1,00 -0,07% -1,00 -0,07% 00:01:00 1,00 Innehav -4,75 Berra Heikin-Ashi Long 0.000000
2015-12-18 10:55:00 Sälj -2,00 1*427,75 -0,50 -0,04% -0,50 -0,04% 00:01:20 -1,00 Blankad -5,25 Berra Heikin-Ashi Short 0.000000
2015-12-18 10:58:55 Köp 2,00 1*429,75 -2,00 -0,14% -2,00 -0,14% 00:03:55 1,00 Innehav -7,25 Berra Heikin-Ashi Long 0.000000
2015-12-18 10:59:55 Sälj -2,00 1*429,25 -0,50 -0,03% -0,50 -0,03% 00:01:00 -1,00 Blankad -7,75 Berra Heikin-Ashi Short 0.000000
2015-12-18 11:50:00 Köp 2,00 1*427,25 2,00 0,14% 2,00 0,14% 00:50:05 1,00 Innehav -5,75 Berra Heikin-Ashi Long 0.000000
2015-12-18 12:07:35 Sälj -2,00 1*425,50 -1,75 -0,12% -1,75 -0,12% 00:17:35 -1,00 Blankad -7,50 Berra Heikin-Ashi Short 0.000000
2015-12-18 14:22:25 Köp 2,00 1*421,75 3,75 0,26% 3,75 0,26% 02:14:50 1,00 Innehav -3,75 Berra Heikin-Ashi Long 0.000000
2015-12-18 15:59:05 Sälj -2,00 1*421,25 -0,50 -0,04% -0,50 -0,04% 01:36:40 -1,00 Blankad -4,25 Berra Heikin-Ashi Short 0.000000
2015-12-18 16:55:00 Köp 2,00 1*421,00 0,25 0,02% 0,25 0,02% 00:55:55 1,00 Innehav -4,00 Berra Heikin-Ashi Long 0.000000
2015-12-18 16:56:15 Sälj -2,00 1*418,75 -2,25 -0,16% -2,25 -0,16% 00:01:15 -1,00 Blankad -6,25 Berra Heikin-Ashi Short 0.000000
2015-12-18 16:57:15 Köp 2,00 1*420,25 -1,50 -0,11% -1,50 -0,11% 00:01:00 1,00 Innehav -7,75 Berra Heikin-Ashi Long 0.000000
2015-12-18 16:59:00 Sälj -1,00 1*422,00 1,75 0,12% 1,75 0,12% 00:01:45 0,00 -6,00 Berra Stäng köp innan börsstängning 0.000000Berra
Comment
-
Det ser "oroväckande" bra ut för index. Kör du Senast betalt som prisscript där? Det man kan göra för att simulera spread eller lite slippage är att skapa två nya prisscript, ett för köpaffärer och ett för säljaffärer. Då kan man dra av lite från priset, tex:
va) OMXS30 köp på senast betalt +0,25
i1(add(c,0.25))
va) OMXS30 sälj på senast betalt -0,25
i1(sub(c,0.25))
Då får man totalt en halv punkt "kostnad" per affär. Borde stämma bättre med verkligheten.
Comment
-
Ursprungligen postat av Rikard Nilsson Visa inläggDet ser "oroväckande" bra ut för index. Kör du Senast betalt som prisscript där? Det man kan göra för att simulera spread eller lite slippage är att skapa två nya prisscript, ett för köpaffärer och ett för säljaffärer. Då kan man dra av lite från priset, tex:
va) OMXS30 köp på senast betalt +0,25
i1(add(c,0.25))
va) OMXS30 sälj på senast betalt -0,25
i1(sub(c,0.25))
Då får man totalt en halv punkt "kostnad" per affär. Borde stämma bättre med verkligheten.
dessa i scripten men det blir inte riktigt rätt det heller. men i omvänt så växlar det inte mellan köp och sälj under dagen så det är ju galet???
Med omvänt menar jag säljscriptet i köp osv.
högsta=gt(c,aref(hhv(h,10),1))
lägsta=lt(c,aref(llv(l,5),1))Attached FilesBerra
Comment
-
Här kör jag säljscriptet i köp och vs om det nu är så att det är grön som är köp?
hä är det i 3 min med "högsta=gt(c,aref(hhv(h,10),1)) denna i röd"
"lägsta=lt(c,aref(llv(l,5),1)) denna i grön"
Avkastning 98.75 kr 0.47% på 15 affärer under 106:47:15 tim
Av dessa blankat 10 st med avkastning 76.00 kr 0.54%
Innehav 4 st med vinst 33.00 kr 0.61%
Innehav 1 st med förlust -10.25 kr -0.72%
Blankning 8 st med vinst 91.00 kr 0.81%
Blankning 2 st med förlust -15.00 kr -0.52%Attached FilesBerra
Comment
-
Så här ser det ut:
Tidpunkt Typ Antal Pris Diff %Diff Res %Res I marknaden Innehav Info Ack.Resultat Kommentar #1
2015-12-18 09:15:55 Köp 1,00 1*432,25 1,00 Innehav Berra Heikin-Ashi Long 0.000000
2015-12-18 16:59:00 Sälj -1,00 1*422,00 -10,25 -0,72% -10,25 -0,72% 07:43:05 0,00 -10,25 Berra Stäng köp innan börsstängning 0.000000
2015-12-21 10:22:40 Sälj -1,00 1*441,25 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2015-12-21 16:59:00 Köp 1,00 1*424,50 16,75 1,16% 16,75 1,16% 06:36:20 0,00 6,50 Berra Stäng blankning innan börsstängning 0.000000
2015-12-22 09:16:00 Sälj -1,00 1*423,25 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2015-12-22 16:59:00 Köp 1,00 1*414,25 9,00 0,63% 9,00 0,63% 07:43:00 0,00 15,50 Berra Stäng blankning innan börsstängning 0.000000
2015-12-23 09:37:30 Sälj -1,00 1*432,50 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2015-12-23 16:59:00 Köp 1,00 1*443,00 -10,50 -0,73% -10,50 -0,73% 07:21:30 0,00 5,00 Berra Stäng blankning innan börsstängning 0.000000
2015-12-28 09:19:45 Sälj -1,00 1*447,75 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2015-12-28 16:59:00 Köp 1,00 1*434,00 13,75 0,95% 13,75 0,95% 07:39:15 0,00 18,75 Berra Stäng blankning innan börsstängning 0.000000
2015-12-29 09:15:50 Sälj -1,00 1*442,50 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2015-12-29 16:59:00 Köp 1,00 1*447,00 -4,50 -0,31% -4,50 -0,31% 07:43:10 0,00 14,25 Berra Stäng blankning innan börsstängning 0.000000
2015-12-30 09:15:55 Sälj -1,00 1*451,25 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2015-12-30 16:59:00 Köp 1,00 1*448,25 3,00 0,21% 3,00 0,21% 07:43:05 0,00 17,25 Berra Stäng blankning innan börsstängning 0.000000
2016-01-04 09:32:45 Köp 1,00 1*400,00 1,00 Innehav Berra Heikin-Ashi Long 0.000000
2016-01-04 16:59:00 Sälj -1,00 1*400,00 0,00 0,00% 0,00 0,00% 07:26:15 0,00 17,25 Berra Stäng köp innan börsstängning 0.000000
2016-01-05 09:16:55 Sälj -1,00 1*402,25 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2016-01-05 12:29:00 Köp 1,00 1*386,75 15,50 1,11% 15,50 1,11% 03:12:05 0,00 32,75 Berra Stäng blankning innan börsstängning 0.000000
2016-01-07 09:38:45 Köp 1,00 1*340,75 1,00 Innehav Berra Heikin-Ashi Long 0.000000
2016-01-07 16:59:00 Sälj -1,00 1*365,75 25,00 1,86% 25,00 1,86% 07:20:15 0,00 57,75 Berra Stäng köp innan börsstängning 0.000000
2016-01-08 10:10:20 Sälj -1,00 1*374,00 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2016-01-08 16:59:00 Köp 1,00 1*353,75 20,25 1,47% 20,25 1,47% 06:48:40 0,00 78,00 Berra Stäng blankning innan börsstängning 0.000000
2016-01-11 10:01:10 Sälj -1,00 1*357,00 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2016-01-11 16:59:00 Köp 1,00 1*351,00 6,00 0,44% 6,00 0,44% 06:57:50 0,00 84,00 Berra Stäng blankning innan börsstängning 0.000000
2016-01-12 09:20:05 Köp 1,00 1*350,00 1,00 Innehav Berra Heikin-Ashi Long 0.000000
2016-01-12 16:59:00 Sälj -1,00 1*356,25 6,25 0,46% 6,25 0,46% 07:38:55 0,00 90,25 Berra Stäng köp innan börsstängning 0.000000
2016-01-13 09:24:21 Sälj -1,00 1*368,00 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
2016-01-13 16:59:01 Köp 1,00 1*361,25 6,75 0,49% 6,75 0,49% 07:34:40 0,00 97,00 Berra Stäng blankning innan börsstängning 0.000000
2016-01-14 09:39:51 Köp 1,00 1*341,00 1,00 Innehav Berra Heikin-Ashi Long 0.000000
2016-01-14 16:59:01 Sälj -1,00 1*342,75 1,75 0,13% 1,75 0,13% 07:19:10 0,00 98,75 Berra Stäng köp innan börsstängning 0.000000Berra
Comment
-
Här rättvända scrip på termin05L i3
Avkastning -69.50 kr -0.02% på 212 affärer under 150:32:11 tim
Av dessa blankat 106 st med avkastning -10.25 kr -0.01%
Innehav 34 st med vinst 114.00 kr 0.23%
Innehav 72 st med förlust -173.25 kr -0.16%
Blankning 33 st med vinst 164.75 kr 0.34%
Blankning 73 st med förlust -175.00 kr -0.16%
omvänd blev -111.00Attached FilesBerra
Comment
-
Ursprungligen postat av Berra Visa inläggJag behöver hjälp att hitta något som tar scripten vidare för att inte snubbla på mållinjen. Tar tacksamt emot tips här, och uppdaterar
{ Bertils BolS7 köp vänd }
innehav:=Portfolio(v)
ok_att_handla:=Lt(innehav,0)
tidspärr1:=15
tidspärr2:=15
lt1:=LastTrade(S,D)
lt2:=LastTrade(B,D)
minSedanSälj:=Mult(Sub(Date(),lt1),1440)
minSedanKöp:=Mult(Sub(Date(),lt2),1440)
delay_ok:=gt(minSedanSälj,tidspärr1)
trans_ok:=gt(minSedanKöp,tidspärr2)
i1(
tid1=gt(int(mult(frac(d),1440)),540)
{ före kl 17.10 }
tid2=lt(int(mult(frac(d),1440)),1030)
hög=HHV(H,6)
låg=LLV(L,6)
sling01=linreg(sqrt(mult(h,låg)),10)
sling02=linreg(sqrt(mult(l,hög)),10)
sling03=linreg(Div(Add(sling01,sling02),2),4)
sling04=mov(c,8,s)
sling05=mov(c,2)
villkor01=Gt(Sub(sling04,aref(sling04,1)),0.06)
villkor02=Gt(Sub(sling03,aref(sling03,1)),0.06)
villkor03=Gt(Sub(sling05,aref(sling05,1)),0.3)
Köpa=And(And(villkor01,villkor02),villkor03)
Draw(sling03,1,kqb0)
Draw(sling04,2,rqb0)
Draw(sling05,3,dgqb0)
ditt_köpscript=And(And(And(And(köpa,tid1),tid2),delay_ok),trans_ok)
köpsignal=And(ditt_köpscript,ok_att_handla)
Mult(köpsignal,10)
)
.........................
{ Bertils BolS7 sälj vänd }
innehav:=Portfolio(v)
ok_att_handla:=Gt(innehav,0)
tidspärr1:=15
tidspärr2:=15
lt1:=LastTrade(S,D)
lt2:=LastTrade(B,D)
minSedanSälj:=Mult(Sub(Date(),lt1),1440)
minSedanKöp:=Mult(Sub(Date(),lt2),1440)
delay_ok:=gt(minSedanSälj,tidspärr1)
trans_ok:=gt(minSedanKöp,tidspärr2)
i1(
tid1=gt(int(mult(frac(d),1440)),600)
{ före kl 17.10 }
tid2=lt(int(mult(frac(d),1440)),1030)
hög=HHV(H,6)
låg=LLV(L,6)
sling01=linreg(sqrt(mult(h,låg)),10)
sling02=linreg(sqrt(mult(l,hög)),10)
sling03=linreg(Div(Add(sling01,sling02),2),4)
sling04=mov(c,8,s)
sling05=mov(c,2)
villkor01=Lt(Sub(sling04,aref(sling04,1)),-0.06)
villkor02=Lt(Sub(sling03,aref(sling03,1)),-0.06)
villkor03=Lt(Sub(sling05,aref(sling05,1)),-0.3)
Sälja=And(And(villkor01,villkor02),villkor03)
Draw(sling03,1,kqb0)
Draw(sling04,2,rqb0)
Draw(sling05,3,dgqb0)
ditt_säljscript=And(And(And(And(sälja,tid1),tid2),delay_ok),trans_ok)
säljsignal=And(And(ditt_säljscript,sälja),ok_att_handla)
Mult(säljsignal,10)
)
.........................
Jag har rensat lite i scripten, hoppas att de är ok. Går kanske att köra på i3.
Med vänlig hälsning
Bertil
Last edited by Bertil; 2016-01-18, 22:03.
Comment
-
Berra, du har ändrat i scripten så att köp2 och blank2 alltid är sant om köp1 och blank1 är sant. Dvs köp1 och blank1 är nu triggervillkor. Ta ett steg tillbaka och lägg sedan på eventuella filter för trend och minskning av signalbrus. Jag ser två sätt du kan använda HA. Det första är att använda HA som signalvillkor, med eller utan stöd av andra villkor. Det andra är att bara använda HA som trendindikator som stöd till oberoende signalvillkor. Tex stanna i position så länge med i HA-trenden.
Comment
-
Ursprungligen postat av Henric Visa inläggBerra, du har ändrat i scripten så att köp2 och blank2 alltid är sant om köp1 och blank1 är sant. Dvs köp1 och blank1 är nu triggervillkor. Ta ett steg tillbaka och lägg sedan på eventuella filter för trend och minskning av signalbrus. Jag ser två sätt du kan använda HA. Det första är att använda HA som signalvillkor, med eller utan stöd av andra villkor. Det andra är att bara använda HA som trendindikator som stöd till oberoende signalvillkor. Tex stanna i position så länge med i HA-trenden.Berra
Comment
-
?? blank2=and(and(mcloseI,haOpenI),blank1)
blank2=and(lt(mcloseI,haOpenI),blank1)
Samma för lång.
Jo, trenden fungerar delvis som du skriver. Skillnaden skulle tex vara att ta position oberoende av HA och om vinst låta positionen ligga kvar så länge HA ligger rätt. Du skulle även kunna köra Berra-trigger i kombination med HA. Bara lite uppslag.
Som det är nu påverkar inte HA. Börja med av få ordning på scriptet(i alla fall det som finns i inlägg 32) och starta om från scratch utan trendfilter etc för att se resultatet. Bygg på med dina ideer.
Comment
Comment