Som min första modell så försöker jag implementera Euro Night Strategy från boken Building Winning Algorithmic Trading Systems. Strategin finns förklarad här i TradeStation EasyLanguage.
Euro Night Strategy
Koden jag har än så länge är köp och sälj long enligt nedan:
KÖP
SÄLJ
Dock går det inte jättebra av följande anledningar. Säljsidan beror på betalt pris vilket gör nivån omöjlig att plotta i en graf utanför simuleringen?
När jag försöker simulera dessa båda script i analysbänken för datumen
2017-10-24 tom 2018-09-21 på OMXS30 får jag 210 skapade signaler men dessa är clustrade till ca 5 tillfällen, alltså verkar det ske väldigt många affärer snabbt.
Tacksam för alla tipps jag kan få på hur man effektivare debuggar och testar fram så att strategier blir rätt samt hjälp med hur jag kan göra koden bättre.
Euro Night Strategy
Koden jag har än så länge är köp och sälj long enligt nedan:
KÖP
Kod:
nback:=10 atrrmult:=3 natr:=60 i105( omxs30=cmpref(h,1,a) ma1=mov(omxs30,nback,s) reducingfactor=mult(atrrmult,atrex(natr, a)) longprice=sub(ma1,reducingfactor) draw(longprice,3,dgqb) köpläge=le(c,longprice) ej_innehav=le(portfolio(v),0) klocka=frac(d){ska vara date()} latest_kl1720=lt(klocka,0.722) signal=and(latest_kl1720,and(köpläge,ej_innehav)) mult(signal,5) ) {@A(105,OMX Stock )}
Kod:
tr_mult:=0.5 i105( omxs30c=cmpref(c,1,a) omxs30h=cmpref(h,1,a) omxs30l=cmpref(l,1,a) tr1=sub(omxs30h,omxs30l) tr2=sub(omxs30h,aref(omxs30c,1)) tr3=sub(aref(omxs30c,1),omxs30l) max1=if(ge(tr1,tr2),tr1,tr2) true_range=if(ge(tr3,max1),tr3,max1) innehav=gt(portfolio(v),0) entry_price=portfolio(p) long_target=add(entry_price,mult(tr_mult,true_range)) draw(long_target,2,rqb) signal1=ge(omxs30c,long_target) signal2=and(signal1,innehav) mult(signal2,5) ) {@A(105,OMX Stock )}
När jag försöker simulera dessa båda script i analysbänken för datumen
2017-10-24 tom 2018-09-21 på OMXS30 får jag 210 skapade signaler men dessa är clustrade till ca 5 tillfällen, alltså verkar det ske väldigt många affärer snabbt.
Tacksam för alla tipps jag kan få på hur man effektivare debuggar och testar fram så att strategier blir rätt samt hjälp med hur jag kan göra koden bättre.
Comment