Allmänt meddelande

Collapse
No announcement yet.

Raptor

Collapse
X
 
  • Filter
  • Klockan
  • Show
Clear All
new posts

  • Verkar som att vi kan släppa Raptor fri, jag har gjort lite mer simuleringar och ändrat i exitvillkoren, så nya script kommer troligen på måndag. Vi ska till Stockholm i helgen och öppet hus på NasdaqOMX och predika, så jag hinner tyvärr inte i helgen.

    Comment


    • Ursprungligen postat av Rikard Nilsson Visa inlägg
      Verkar som att vi kan släppa Raptor fri, jag har gjort lite mer simuleringar och ändrat i exitvillkoren, så nya script kommer troligen på måndag. Vi ska till Stockholm i helgen och öppet hus på NasdaqOMX och predika, så jag hinner tyvärr inte i helgen.

      Kommer den fortsättningsvin även kunna hålla position över natten?

      Comment


      • Hej, jag får hela tiden de här meddelandet spammat i min larm/meddelande ruta.
        09:59 ORDER "sl) OMX Raptor exit long OMXS302D" kurs 1067.75
        09:59 Zero volume - Order not sent
        09:59 GSM larm sänt!
        09:59 ORDER "sl) OMX Raptor exit long OMXS302D" kurs 1067.75
        09:59 Zero volume - Order not sent
        09:59 GSM larm sänt!
        09:59 ORDER "sl) OMX Raptor exit long OMXS302D" kurs 1067.75
        09:59 Zero volume - Order not sent
        09:59 GSM larm sänt!
        09:59 ORDER "sl) OMX Raptor exit long OMXS302D" kurs 1067.75
        09:59 Zero volume - Order not sent
        09:59 GSM larm sänt!
        10:00 ORDER "sl) OMX Raptor exit long OMXS302D" kurs 1068.00
        10:00 Zero volume - Order not sent
        Har fått det cirka 2-3 dagar nu

        Comment


        • Ursprungligen postat av Babavand Visa inlägg
          Hej, jag får hela tiden de här meddelandet spammat i min larm/meddelande ruta.


          Har fått det cirka 2-3 dagar nu
          Har du lagt in de senaste scripten: http://www.autostock.se/vbulletin/sh...&postcount=599

          Hade samma problem innan.

          Comment


          • Nja, det är nog i triggerscriptet som det görs en kontroll för depåinnehav och där står sannolikt fel värde. Det ska vara noll, men kan stå -1 eller 1 beroende på om man vill simulera signal utan att ha ett verkligt innehav.

            Antalscriptet känner att inget innehav finns om signal triggas och skickar då "zero volume".

            Comment


            • Hur går Raptor idag?
              Jag har inte fått någon trigger idag.

              Rikard, läste tidigare om några fixar du tänkte släppa i veckan :-) Ser det lovande ut?

              Comment


              • Inte riktigt klart ännu, men jag lägger ut det jag har så länge. Spärren är bortplockad så att flera trades kan göras per dag. Villkoren aningen ändrade, tex är triggkurvan tillbaka då det verkar bli bättre resultat generellt i backtest. Exit-villkoren är också ändrade, så att det krävs att MACD-svänger åt fel håll, close går under föregående stapel och MFI åt fel håll för att stänga en position, alternativt att MFI>99. Det jag labbat med är att försöka få villkor som kan tillåta att man blir kvar längre i en vinnande position, men det ser ut att straffa sig oftare än det lönar sig. Raptor ska ju vara en snabb modell så det kanske är bäst att låta den kliva av så fort MFI slår i taket.

                Dagens affärer hittills blev en Long kl 11:40 på 1070,25 och exit kl 12:30 på 1076,0. Det kan bli fler signaler innan dagen är slut.




                {Raptor long }
                { 120326 }

                { definiera variabler }
                mval:=mov(mfi(3),3,e)
                mmv:=hhv(aref(mval,1),3)
                mcd_signal:=gt(macd(n),macd(t))

                { definiera gränsvärde för MFI och testa om innehav finns }
                condition1:=lt(mval,90)
                innehav_ok:=eqv(portfolio(v),0)

                { säkerställ att det är minst 6 minuter kvar till börsstängning }
                öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                { säkerställ att klockan är minst 09:06 }
                inpådagen:=Gt(Frac(date()),0.379)

                { feedback loop för att köpa tillbaka eventuellt blankat överskott }
                överexponerad_short:=lt(portfolio(v),scrpar(23))

                { spärr som hindrar orderläggning 1 minut efter senaste order }
                timelock:=30
                lt1:=LastTrade(B,D)
                lt2:=LastTrade(S,D)
                minSedanKöp:=mult(sub(date(),lt1),1440)
                minSedanSälj:=mult(sub(date(),lt2),1440)
                i30(
                { account safety - säkerställer kontakt med depån }
                orderdelay_ok=and(gt(minSedanKöp,timelock),gt(minSedanSälj,timelock))
                datum_ok=eqv(int(d),int(date()))

                { rita upp MFI-kurva i volymområdet }
                draw(mval,2,ysv)
                draw(mmv,3,gsv)

                { trading-regler - MFI stigande samt condition1 = MFI < 90 }
                buy1=and(condition1,gt(mval,mmv))

                { villkor att innehav inte finns }
                buy2=and(buy1,innehav_ok)

                { villkor att stapel ska nå högre än föregående stapel }
                buy3=and(buy2,gt(h,aref(h,1)))

                { koppla ihop villkor }
                buy4=and(and(or(överexponerad_short,buy3),öppet),orderdelay_ok)
                buy5=and(and(buy4,datum_ok),inpådagen)
                buy6=and(buy5,mcd_signal)
                mult(buy6,10)
                )



                {Raptor short }
                { 120326 }

                { definiera variabler }
                mval:=mov(mfi(3),3,e)
                mmv:=llv(aref(mval,1),3)
                mcd_signal:=lt(macd(n),macd(t))

                { definiera gränsvärde för MFI och testa om innehav finns }
                condition1:=gt(mval,10)
                innehav_ok:=eqv(portfolio(v),0)

                { säkerställ att det är minst 6 minuter kvar till börsstängning }
                öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                { säkerställ att klockan är minst 09:06 }
                inpådagen:=Gt(Frac(date()),0.379)


                { feedback loop för att sälj tillbaka eventuellt köpt överskott }
                överexponerad_long:=gt(portfolio(v),scrpar(22))
                timelock:=30

                { spärr som hindrar orderläggning 1 minut efter senaste order }
                lt1:=LastTrade(B,D)
                lt2:=LastTrade(S,D)
                minSedanKöp:=mult(sub(date(),lt1),1440)
                minSedanSälj:=mult(sub(date(),lt2),1440)
                i30(
                { account safety - säkerställer kontakt med depån }
                orderdelay_ok=and(gt(minSedanKöp,timelock),gt(minSedanSälj,timelock))
                datum_ok=eqv(int(d),int(date()))

                draw(mmv,2,rsv)

                { trading-regler - MFI fallande samt condition1 = MFI > 10 }
                short1=and(condition1,lt(mval,mmv))

                { villkor att innehav inte finns }
                short2=and(short1,innehav_ok)

                { villkor att stapel ska nå lägre än föregående stapel }
                short3=and(short2,lt(l,aref(l,1)))

                { koppla ihop villkor }
                short4=and(and(or(överexponerad_long,short3),öppet),orderdelay_ok)
                short5=and(and(short4,datum_ok),inpådagen)
                short6=and(short5,mcd_signal)
                mult(short6,10)
                )



                {Raptor exit long }
                { 120326 }

                { definiera variabler }
                high:=cmpref(h,1,a)
                low:=cmpref(l,1,a)
                mval:=mov(mfi(3),3,e)
                mmv:=llv(aref(mval,1),3)
                condition1:=gt(mval,99)

                { beräkna dagens takeprofit som 40% av gårdagens range - dock minst 0.75 pkt }
                tplevel:=mx(mult(sub(high,low),0.4),0.75)
                takeprofit:=gt(c,add(tplevel,lasttrade(b,p)))

                { säkerställ att innehav finns }
                innehav_ok:=gt(portfolio(v),0)

                { säkerställ att det är minst 6 minuter kvar till börsstängning }
                öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                { säkerställ att databastid och systemtid är på samma dag }
                datum_ok:=eqv(int(d),int(date()))

                { säkerställ att klockan är minst 09:01 }
                inpådagen:=Gt(Frac(date()),0.376)

                { testa om vinst är minst 2 pkt }
                vinst:=gt(c,add(lasttrade(b,p),2))
                i30(
                { rita takeprofit-nivå som grönstreckad linje och senaste köpnivå som blå}
                draw(add(lasttrade(b,p),tplevel),2,dgqb2)
                draw(lasttrade(b,p),3,bqb)

                { koppla ihop villkor - takeprofit eller MFI = fallande och L lägre än föregående L }
                sell1=or(takeprofit,and(mcd_signal,and(lt(mval,mmv),lt(c,aref(l,1)))))
                sell2=and(and(and(and(sell1,datum_ok),inpådagen),innehav_ok),öppet)
                mult(sell2,5)
                )

                {@A(0,)}



                {Raptor exit short }
                { 120326 }

                { definiera variabler }
                high:=cmpref(h,1,a)
                low:=cmpref(l,1,a)
                mval:=mov(mfi(3),3,e)
                mmv:=hhv(aref(mval,1),3)

                { beräkna dagens takeprofit som 40% av gårdagens range - dock minst 0.75 pkt }
                tplevel:=mx(mult(sub(high,low),0.4),0.75)
                takeprofit:=lt(c,sub(lasttrade(s,p),tplevel))

                { säkerställ att innehav finns }
                innehav_ok:=lt(portfolio(v),0)

                { säkerställ att det är minst 6 minuter kvar till börsstängning }
                öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                { säkerställ att databastid och systemtid är på samma dag }
                datum_ok:=eqv(int(d),int(date()))

                { säkerställ att klockan är minst 09:01 }
                inpådagen:=Gt(Frac(date()),0.376)


                i30(
                { rita takeprofit-nivå som magentastreckad linje och senaste blanknivå som röd}
                draw(sub(lasttrade(s,p),tplevel),2,mqb2)
                draw(lasttrade(s,p),3,rqb)

                { koppla ihop villkor - takeprofit eller MFI = stigande och H högre än föregående H}
                cover1=or(takeprofit,and(mcd_signal,and(gt(mval,mmv),gt(c,aref(h,1)))))
                cover2=and(and(and(and(cover1,datum_ok),inpådagen),öppet),innehav_ok)
                mult(cover2,5)
                )

                {@A(0,)}

                Comment


                • Lite märkligt att det inte kom någon signal idag när börsen gick upp 22 punkter?
                  Sen stängde jag av kl 15 kunde inte hålla koll sedan, men att döma av forumet verkar det inte varit någon som fått mer än Rikard på det nya som jag koperat in nu och hoppas på morgondagen.
                  Berra

                  Comment


                  • Ursprungligen postat av Rikard Nilsson Visa inlägg
                    Har bara kört en snabbtest på Long - Exit eftersom det blir extremt bökigt att simulera hela strategin innan vi får den nya simulatorn i NAT.

                    A-terminen: Avkastning 40.50 kr 2.84% på 22 affärer
                    B-terminen: Avkastning 36.50 kr 1.96% på 25 affärer
                    C-terminen: Avkastning 63.40 kr 4.10% på 29 affärer
                    Rikard, har du kört någon simulering på det senaste skriptet?

                    Comment


                    • Ursprungligen postat av Berra Visa inlägg
                      Lite märkligt att det inte kom någon signal idag när börsen gick upp 22 punkter?
                      Sen stängde jag av kl 15 kunde inte hålla koll sedan, men att döma av forumet verkar det inte varit någon som fått mer än Rikard på det nya som jag koperat in nu och hoppas på morgondagen.
                      Nä, ingen signal här heller

                      Comment


                      • Ingen signal här heller

                        Comment


                        • OMXS30" kurs 1084.12
                          09:05 ANALYS "sl) OMX Raptor long OMXS302D" kurs 1070.25
                          Får alltid köpsignal vid denna tid, antagligen Gremlins.

                          Comment


                          • Ursprungligen postat av Rikard Nilsson Visa inlägg
                            Inte riktigt klart ännu, men jag lägger ut det jag har så länge. Spärren är bortplockad så att flera trades kan göras per dag. Villkoren aningen ändrade, tex är triggkurvan tillbaka då det verkar bli bättre resultat generellt i backtest. Exit-villkoren är också ändrade, så att det krävs att MACD-svänger åt fel håll, close går under föregående stapel och MFI åt fel håll för att stänga en position, alternativt att MFI>99. Det jag labbat med är att försöka få villkor som kan tillåta att man blir kvar längre i en vinnande position, men det ser ut att straffa sig oftare än det lönar sig. Raptor ska ju vara en snabb modell så det kanske är bäst att låta den kliva av så fort MFI slår i taket.

                            Dagens affärer hittills blev en Long kl 11:40 på 1070,25 och exit kl 12:30 på 1076,0. Det kan bli fler signaler innan dagen är slut.




                            {Raptor long }
                            { 120326 }

                            { definiera variabler }
                            mval:=mov(mfi(3),3,e)
                            mmv:=hhv(aref(mval,1),3)
                            mcd_signal:=gt(macd(n),macd(t))

                            { definiera gränsvärde för MFI och testa om innehav finns }
                            condition1:=lt(mval,90)
                            innehav_ok:=eqv(portfolio(v),0)

                            { säkerställ att det är minst 6 minuter kvar till börsstängning }
                            öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                            { säkerställ att klockan är minst 09:06 }
                            inpådagen:=Gt(Frac(date()),0.379)

                            { feedback loop för att köpa tillbaka eventuellt blankat överskott }
                            överexponerad_short:=lt(portfolio(v),scrpar(23))

                            { spärr som hindrar orderläggning 1 minut efter senaste order }
                            timelock:=30
                            lt1:=LastTrade(B,D)
                            lt2:=LastTrade(S,D)
                            minSedanKöp:=mult(sub(date(),lt1),1440)
                            minSedanSälj:=mult(sub(date(),lt2),1440)
                            i30(
                            { account safety - säkerställer kontakt med depån }
                            orderdelay_ok=and(gt(minSedanKöp,timelock),gt(minSedanSälj,timelock))
                            datum_ok=eqv(int(d),int(date()))

                            { rita upp MFI-kurva i volymområdet }
                            draw(mval,2,ysv)
                            draw(mmv,3,gsv)

                            { trading-regler - MFI stigande samt condition1 = MFI < 90 }
                            buy1=and(condition1,gt(mval,mmv))

                            { villkor att innehav inte finns }
                            buy2=and(buy1,innehav_ok)

                            { villkor att stapel ska nå högre än föregående stapel }
                            buy3=and(buy2,gt(h,aref(h,1)))

                            { koppla ihop villkor }
                            buy4=and(and(or(överexponerad_short,buy3),öppet),orderdelay_ok)
                            buy5=and(and(buy4,datum_ok),inpådagen)
                            buy6=and(buy5,mcd_signal)
                            mult(buy6,10)
                            )



                            {Raptor short }
                            { 120326 }

                            { definiera variabler }
                            mval:=mov(mfi(3),3,e)
                            mmv:=llv(aref(mval,1),3)
                            mcd_signal:=lt(macd(n),macd(t))

                            { definiera gränsvärde för MFI och testa om innehav finns }
                            condition1:=gt(mval,10)
                            innehav_ok:=eqv(portfolio(v),0)

                            { säkerställ att det är minst 6 minuter kvar till börsstängning }
                            öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                            { säkerställ att klockan är minst 09:06 }
                            inpådagen:=Gt(Frac(date()),0.379)


                            { feedback loop för att sälj tillbaka eventuellt köpt överskott }
                            överexponerad_long:=gt(portfolio(v),scrpar(22))
                            timelock:=30

                            { spärr som hindrar orderläggning 1 minut efter senaste order }
                            lt1:=LastTrade(B,D)
                            lt2:=LastTrade(S,D)
                            minSedanKöp:=mult(sub(date(),lt1),1440)
                            minSedanSälj:=mult(sub(date(),lt2),1440)
                            i30(
                            { account safety - säkerställer kontakt med depån }
                            orderdelay_ok=and(gt(minSedanKöp,timelock),gt(minSedanSälj,timelock))
                            datum_ok=eqv(int(d),int(date()))

                            draw(mmv,2,rsv)

                            { trading-regler - MFI fallande samt condition1 = MFI > 10 }
                            short1=and(condition1,lt(mval,mmv))

                            { villkor att innehav inte finns }
                            short2=and(short1,innehav_ok)

                            { villkor att stapel ska nå lägre än föregående stapel }
                            short3=and(short2,lt(l,aref(l,1)))

                            { koppla ihop villkor }
                            short4=and(and(or(överexponerad_long,short3),öppet),orderdelay_ok)
                            short5=and(and(short4,datum_ok),inpådagen)
                            short6=and(short5,mcd_signal)
                            mult(short6,10)
                            )



                            {Raptor exit long }
                            { 120326 }

                            { definiera variabler }
                            high:=cmpref(h,1,a)
                            low:=cmpref(l,1,a)
                            mval:=mov(mfi(3),3,e)
                            mmv:=llv(aref(mval,1),3)
                            condition1:=gt(mval,99)

                            { beräkna dagens takeprofit som 40% av gårdagens range - dock minst 0.75 pkt }
                            tplevel:=mx(mult(sub(high,low),0.4),0.75)
                            takeprofit:=gt(c,add(tplevel,lasttrade(b,p)))

                            { säkerställ att innehav finns }
                            innehav_ok:=gt(portfolio(v),0)

                            { säkerställ att det är minst 6 minuter kvar till börsstängning }
                            öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                            { säkerställ att databastid och systemtid är på samma dag }
                            datum_ok:=eqv(int(d),int(date()))

                            { säkerställ att klockan är minst 09:01 }
                            inpådagen:=Gt(Frac(date()),0.376)

                            { testa om vinst är minst 2 pkt }
                            vinst:=gt(c,add(lasttrade(b,p),2))
                            i30(
                            { rita takeprofit-nivå som grönstreckad linje och senaste köpnivå som blå}
                            draw(add(lasttrade(b,p),tplevel),2,dgqb2)
                            draw(lasttrade(b,p),3,bqb)

                            { koppla ihop villkor - takeprofit eller MFI = fallande och L lägre än föregående L }
                            sell1=or(takeprofit,and(mcd_signal,and(lt(mval,mmv),lt(c,aref(l,1)))))
                            sell2=and(and(and(and(sell1,datum_ok),inpådagen),innehav_ok),öppet)
                            mult(sell2,5)
                            )

                            {@A(0,)}



                            {Raptor exit short }
                            { 120326 }

                            { definiera variabler }
                            high:=cmpref(h,1,a)
                            low:=cmpref(l,1,a)
                            mval:=mov(mfi(3),3,e)
                            mmv:=hhv(aref(mval,1),3)

                            { beräkna dagens takeprofit som 40% av gårdagens range - dock minst 0.75 pkt }
                            tplevel:=mx(mult(sub(high,low),0.4),0.75)
                            takeprofit:=lt(c,sub(lasttrade(s,p),tplevel))

                            { säkerställ att innehav finns }
                            innehav_ok:=lt(portfolio(v),0)

                            { säkerställ att det är minst 6 minuter kvar till börsstängning }
                            öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                            { säkerställ att databastid och systemtid är på samma dag }
                            datum_ok:=eqv(int(d),int(date()))

                            { säkerställ att klockan är minst 09:01 }
                            inpådagen:=Gt(Frac(date()),0.376)


                            i30(
                            { rita takeprofit-nivå som magentastreckad linje och senaste blanknivå som röd}
                            draw(sub(lasttrade(s,p),tplevel),2,mqb2)
                            draw(lasttrade(s,p),3,rqb)

                            { koppla ihop villkor - takeprofit eller MFI = stigande och H högre än föregående H}
                            cover1=or(takeprofit,and(mcd_signal,and(gt(mval,mmv),gt(c,aref(h,1)))))
                            cover2=and(and(and(and(cover1,datum_ok),inpådagen),öppet),innehav_ok)
                            mult(cover2,5)
                            )

                            {@A(0,)}
                            Måste ha glömt att lägga in MACD-villkor för Exit-Long. Det verkar som att bara takeprofit kan ta exit.

                            Comment


                            • Stämmer, tackar! Rättade script nedan. Blanksignal kom nu precis så det kan vara bra att lägga in det direkt.

                              {Raptor exit long }
                              { 120327 }

                              { definiera variabler }
                              high:=cmpref(h,1,a)
                              low:=cmpref(l,1,a)
                              mval:=mov(mfi(3),3,e)
                              mmv:=llv(aref(mval,1),3)
                              condition1:=gt(mval,99)
                              mcd_signal:=lt(macd(n),macd(t))

                              { beräkna dagens takeprofit som 40% av gårdagens range - dock minst 0.75 pkt }
                              tplevel:=mx(mult(sub(high,low),0.4),0.75)
                              takeprofit:=gt(c,add(tplevel,lasttrade(b,p)))

                              { säkerställ att innehav finns }
                              innehav_ok:=gt(portfolio(v),0)

                              { säkerställ att det är minst 6 minuter kvar till börsstängning }
                              öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                              { säkerställ att databastid och systemtid är på samma dag }
                              datum_ok:=eqv(int(d),int(date()))

                              { säkerställ att klockan är minst 09:01 }
                              inpådagen:=Gt(Frac(date()),0.376)

                              { testa om vinst är minst 2 pkt }
                              vinst:=gt(c,add(lasttrade(b,p),2))
                              i30(
                              { rita takeprofit-nivå som grönstreckad linje och senaste köpnivå som blå}
                              draw(add(lasttrade(b,p),tplevel),2,dgqb2)
                              draw(lasttrade(b,p),3,bqb)

                              { koppla ihop villkor - takeprofit eller MFI = fallande och L lägre än föregående L }
                              sell1=or(or(condition1,takeprofit),and(mcd_signal,and(lt(mval,mmv),lt(c,aref(l,1)))))
                              sell2=and(and(and(and(sell1,datum_ok),inpådagen),innehav_ok),öppet)
                              mult(sell2,5)
                              )

                              {@A(0,)}




                              {Raptor exit short }
                              { 120327 }

                              { definiera variabler }
                              high:=cmpref(h,1,a)
                              low:=cmpref(l,1,a)
                              mval:=mov(mfi(3),3,e)
                              mmv:=hhv(aref(mval,1),3)
                              condition1:=lt(mval,1)
                              mcd_signal:=gt(macd(n),macd(t))

                              { beräkna dagens takeprofit som 40% av gårdagens range - dock minst 0.75 pkt }
                              tplevel:=mx(mult(sub(high,low),0.4),0.75)
                              takeprofit:=lt(c,sub(lasttrade(s,p),tplevel))

                              { säkerställ att innehav finns }
                              innehav_ok:=lt(portfolio(v),0)

                              { säkerställ att det är minst 6 minuter kvar till börsstängning }
                              öppet:=ge(mult(1440,sub(market(c),frac(date()))),6)

                              { säkerställ att databastid och systemtid är på samma dag }
                              datum_ok:=eqv(int(d),int(date()))

                              { säkerställ att klockan är minst 09:01 }
                              inpådagen:=Gt(Frac(date()),0.376)


                              i30(
                              { rita takeprofit-nivå som magentastreckad linje och senaste blanknivå som röd}
                              draw(sub(lasttrade(s,p),tplevel),2,mqb2)
                              draw(lasttrade(s,p),3,rqb)

                              { koppla ihop villkor - takeprofit eller MFI = stigande och H högre än föregående H}
                              cover1=or(or(condition1,takeprofit),and(mcd_signal,and(gt(mval,mmv),gt(c,aref(h,1)))))
                              cover2=and(and(and(and(cover1,datum_ok),inpådagen),öppet),innehav_ok)
                              mult(cover2,5)
                              )

                              {@A(0,)}

                              Comment


                              • Fixade innehavskontrollen ovan också.

                                Comment

                                Working...
                                X