Så var det då dags igen, att prova ett nytt grepp på det här med OMX-handel.
Har ju hållt på att experimentera med en egen modell som kan handla både snabbt och mer långsiktigt, beroende på marknadens humör.
Tänkte lägga ut lite ideer för en ny, snabb modell.
Tanken är att man tar position om röd och blå stochastic är uppåt samtidigt som ett kort medelvärde är uppåt.
Detta är väl iofs inget konstigt.
Därefter stänger man positionen så fort röd stoch vänder åt fel håll, under förutsättning att blå stochastic ligger på rätt sida 80- eller 20-linjen. Lång fina åkningar brukar ju innebära att blå stoch ligger över 80 eller under 20 hela vägen och då är det ju onödigt att stänga positionen.
Nu när man har möjlighet att köra två parallella ordermodeller på ett papper så behöver ju inte detta vara en spinnande historia.
Däremot tänkte jag att man kan ha kvar spinn och "Fill and Kill" för de tillfällen då orderläggningen av någon anledning misslyckats, och på så sätt få modellerna att "reparera" sig själva.
Alltså, om en köporder tex har misslyckats så kommer det efterföljande säljscript att känna att det inte finns något på depån och därför lösa ut så att modellen spinner tillbaka till början igen.
Likadant så måste ju scripten som löser ut för köp eller blankning känna att inte den andra modellen modellen redan har gjort en affär.
Torstens script för röd och blå stochastic är bra utgångsmaterial.
Nedanstående är exempel på hur triggerscripten kan se ut.
sl) Snabb OMX köptrigger
sper:=15
mper:=5
s1:=stoch(sper)
blå:=mov(röd,mper,e)
blaupp:=Lt(HhvBars(blå,2),1)
röd:=Mov(s1,3,s)
röödupp:=Lt(HhvBars(röd,2),1)
kursMA1:=Mov(c,5,s)
MAupp:=Lt(HhvBars(kursMA1,2),1)
moneyflow:=Mov(Mfi(14),3,s)
flowplus:=Lt(HhvBars(moneyflow,2),1)
utanför:=Ge(portfolio(v),0) {blankinnehav spärrar}
i10(
köpsignal1=And(And(röödupp,blaupp),MAupp)
köpsignal2=And(And(köpsignal1,flowplus),utanför)
köpsignal2)
sl) Snabb OMX blanktrigger
sper:=15
mper:=5
s1:=stoch(sper)
blå:=mov(röd,mper,e)
blaner:=Lt(LlvBars(blå,2),1)
röd:=Mov(s1,3,s)
röödner:=Lt(LlvBars(röd,2),1)
kursMA1:=Mov(c,5,s)
MAner:=Lt(LlvBars(kursMA1,2),1)
moneyflow:=Mov(Mfi(14),3,s)
flowminus:=Lt(LlvBars(moneyflow,2),1)
utanför:=Le(portfolio(v),0) {Pos innehav spärrar}
i10(
blanksignal1=And(And(röödner,blaner),MAner)
blanksignal2=And(And(blanksignal1,flowminus),utanför)
blanksignal2)
Och så här kan scripten som avslutar position se ut:
(Alltså andra sekvensen i resp modell)
sl) Snabb OMX avsluta köp
sper:=15
mper:=5
s1:=stoch(sper)
blå:=mov(röd,mper,e)
blaner:=Lt(LlvBars(blå,2),1)
röd:=Mov(s1,3,s)
röödner:=Lt(LlvBars(röd,2),1)
stochgräns:=Lt(blå,80)
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,10)
tidsignal:=GT(rest,5) {tillåter signal efter 5:e minuten}
utanför:=Eqv(portfolio(v),0) {spinner om ej innehav}
i10(
säljsignal1=And(röödner,tidsignal)
säljsignal2=Or(And(säljsignal1,stochgräns),utanför)
säljsignal2)
sl) Snabb OMX avsluta blankning
sper:=15
mper:=5
s1:=stoch(sper)
blå:=mov(röd,mper,e)
blaupp:=Lt(HhvBars(blå,2),1)
röd:=Mov(s1,3,s)
röödupp:=Lt(HhvBars(röd,2),1)
stochgräns:=Gt(blå,20)
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,10)
tidsignal:=GT(rest,5) {tillåter signal efter 5:e minuten}
utanför:=Eqv(portfolio(v),0) {Spinner om ej innehav}
i10(
köpsignal1=And(röödupp,tidsignal)
köpsignal2=Or(And(köpsignal1,stochgräns),utanför)
köpsignal2)
Man kan ju välja att köra valfritt antal kontrakt i köp-och blanksekvensen, men för "avsluta-sekvenserna" så rekommenderar jag följande för att stänga positionerna:
va) OMX stäng position
målantal:=0
undermål:=LT(innehav,målantal)
antal:=if(undermål,0,SUB(målantal,innehav))
i1(ABS(antal))
va) OMX stäng blankposition
målantal:=0
övermål:=GT(innehav,målantal)
antal:=if(övermål,0,SUB(målantal,innehav))
i1(antal)
Som vanligt gäller att använda "Fill and Kill", annars funkar inte spinnfunktionen.
Ska själv prova det här ett par dagar för att se, tänkte att det kanske kunde vara kul för någon annan oxå att experimentera med!
Har ju hållt på att experimentera med en egen modell som kan handla både snabbt och mer långsiktigt, beroende på marknadens humör.
Tänkte lägga ut lite ideer för en ny, snabb modell.
Tanken är att man tar position om röd och blå stochastic är uppåt samtidigt som ett kort medelvärde är uppåt.
Detta är väl iofs inget konstigt.
Därefter stänger man positionen så fort röd stoch vänder åt fel håll, under förutsättning att blå stochastic ligger på rätt sida 80- eller 20-linjen. Lång fina åkningar brukar ju innebära att blå stoch ligger över 80 eller under 20 hela vägen och då är det ju onödigt att stänga positionen.
Nu när man har möjlighet att köra två parallella ordermodeller på ett papper så behöver ju inte detta vara en spinnande historia.
Däremot tänkte jag att man kan ha kvar spinn och "Fill and Kill" för de tillfällen då orderläggningen av någon anledning misslyckats, och på så sätt få modellerna att "reparera" sig själva.
Alltså, om en köporder tex har misslyckats så kommer det efterföljande säljscript att känna att det inte finns något på depån och därför lösa ut så att modellen spinner tillbaka till början igen.
Likadant så måste ju scripten som löser ut för köp eller blankning känna att inte den andra modellen modellen redan har gjort en affär.
Torstens script för röd och blå stochastic är bra utgångsmaterial.
Nedanstående är exempel på hur triggerscripten kan se ut.
sl) Snabb OMX köptrigger
sper:=15
mper:=5
s1:=stoch(sper)
blå:=mov(röd,mper,e)
blaupp:=Lt(HhvBars(blå,2),1)
röd:=Mov(s1,3,s)
röödupp:=Lt(HhvBars(röd,2),1)
kursMA1:=Mov(c,5,s)
MAupp:=Lt(HhvBars(kursMA1,2),1)
moneyflow:=Mov(Mfi(14),3,s)
flowplus:=Lt(HhvBars(moneyflow,2),1)
utanför:=Ge(portfolio(v),0) {blankinnehav spärrar}
i10(
köpsignal1=And(And(röödupp,blaupp),MAupp)
köpsignal2=And(And(köpsignal1,flowplus),utanför)
köpsignal2)
sl) Snabb OMX blanktrigger
sper:=15
mper:=5
s1:=stoch(sper)
blå:=mov(röd,mper,e)
blaner:=Lt(LlvBars(blå,2),1)
röd:=Mov(s1,3,s)
röödner:=Lt(LlvBars(röd,2),1)
kursMA1:=Mov(c,5,s)
MAner:=Lt(LlvBars(kursMA1,2),1)
moneyflow:=Mov(Mfi(14),3,s)
flowminus:=Lt(LlvBars(moneyflow,2),1)
utanför:=Le(portfolio(v),0) {Pos innehav spärrar}
i10(
blanksignal1=And(And(röödner,blaner),MAner)
blanksignal2=And(And(blanksignal1,flowminus),utanför)
blanksignal2)
Och så här kan scripten som avslutar position se ut:
(Alltså andra sekvensen i resp modell)
sl) Snabb OMX avsluta köp
sper:=15
mper:=5
s1:=stoch(sper)
blå:=mov(röd,mper,e)
blaner:=Lt(LlvBars(blå,2),1)
röd:=Mov(s1,3,s)
röödner:=Lt(LlvBars(röd,2),1)
stochgräns:=Lt(blå,80)
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,10)
tidsignal:=GT(rest,5) {tillåter signal efter 5:e minuten}
utanför:=Eqv(portfolio(v),0) {spinner om ej innehav}
i10(
säljsignal1=And(röödner,tidsignal)
säljsignal2=Or(And(säljsignal1,stochgräns),utanför)
säljsignal2)
sl) Snabb OMX avsluta blankning
sper:=15
mper:=5
s1:=stoch(sper)
blå:=mov(röd,mper,e)
blaupp:=Lt(HhvBars(blå,2),1)
röd:=Mov(s1,3,s)
röödupp:=Lt(HhvBars(röd,2),1)
stochgräns:=Gt(blå,20)
tidnu:=frac(DATE())
totalt:=Mult(tidnu,1440)
rest:=mod(totalt,10)
tidsignal:=GT(rest,5) {tillåter signal efter 5:e minuten}
utanför:=Eqv(portfolio(v),0) {Spinner om ej innehav}
i10(
köpsignal1=And(röödupp,tidsignal)
köpsignal2=Or(And(köpsignal1,stochgräns),utanför)
köpsignal2)
Man kan ju välja att köra valfritt antal kontrakt i köp-och blanksekvensen, men för "avsluta-sekvenserna" så rekommenderar jag följande för att stänga positionerna:
va) OMX stäng position
målantal:=0
undermål:=LT(innehav,målantal)
antal:=if(undermål,0,SUB(målantal,innehav))
i1(ABS(antal))
va) OMX stäng blankposition
målantal:=0
övermål:=GT(innehav,målantal)
antal:=if(övermål,0,SUB(målantal,innehav))
i1(antal)
Som vanligt gäller att använda "Fill and Kill", annars funkar inte spinnfunktionen.
Ska själv prova det här ett par dagar för att se, tänkte att det kanske kunde vara kul för någon annan oxå att experimentera med!
Comment