Allmänt meddelande

Collapse
No announcement yet.

Flytande stop loss - script

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

  • Flytande stop loss - script

    Hej,
    är ny på forumet och ny vad gäller att skapa script och jobba i autotrader.
    Jag är ute efter ett script som har en flytande stopp loss och som jag vill ska börja efter jag har tagit en position. Detta gäller aktier
    1. Finns detta script redan? vad heter det?
    2. Var justerar jag procentsats jag vill att den ska lösa om den understiger senaste köp/sälj kursen? I scriptet eller i "Enter" indata script på resp

    Mvh Greger

  • #2
    Hej Greger!
    Välkommen till forumet! Det närmaste du efterfrågar är detta script som jag publicerat i Trendig tråden.
    http://www.autostock.se/vbulletin/sh...6&postcount=30

    Man skulle kunna förenkla det och bättre anpassa efter aktiehandel med tydligare procentsatser osv.
    Handlar själv inte aktier med NAT så jag hoppas att någon annan också svarar på din fråga.

    mvh
    Bertil

    Comment


    • #3
      Ursprungligen postat av greolo Visa inlägg
      Hej,
      är ny på forumet och ny vad gäller att skapa script och jobba i autotrader.
      Jag är ute efter ett script som har en flytande stopp loss och som jag vill ska börja efter jag har tagit en position. Detta gäller aktier
      1. Finns detta script redan? vad heter det?
      2. Var justerar jag procentsats jag vill att den ska lösa om den understiger senaste köp/sälj kursen? I scriptet eller i "Enter" indata script på resp

      Mvh Greger
      Välkommen!

      Här är en tråd där det vanliga flytande stoploss-scriptet finns:

      http://autostock.se/vbulletin/showth...=flytande+stop

      Man kan förenkla den eventuellt om man vill specialanpassa för något. Tex, minska antal perioder som den tittar bakåt osv om man inte har positionerna så länge. Hur ska modellen funka rent placeringshorisontmässig? (jösses vilket långt ord det blev...haha)

      Comment


      • #4
        Ursprungligen postat av Bertil Visa inlägg
        Hej Greger!
        Välkommen till forumet! Det närmaste du efterfrågar är detta script som jag publicerat i Trendig tråden.
        http://www.autostock.se/vbulletin/sh...6&postcount=30

        Man skulle kunna förenkla det och bättre anpassa efter aktiehandel med tydligare procentsatser osv.
        Handlar själv inte aktier med NAT så jag hoppas att någon annan också svarar på din fråga.

        mvh
        Bertil
        Tack Bertil, denna verkar så komplicerad för min strategi men jag ska kolla vad jag kan modifiera.

        Comment


        • #5
          Ursprungligen postat av Rikard Autostock Visa inlägg
          Välkommen!

          Här är en tråd där det vanliga flytande stoploss-scriptet finns:

          http://autostock.se/vbulletin/showth...=flytande+stop

          Man kan förenkla den eventuellt om man vill specialanpassa för något. Tex, minska antal perioder som den tittar bakåt osv om man inte har positionerna så länge. Hur ska modellen funka rent placeringshorisontmässig? (jösses vilket långt ord det blev...haha)

          Långt ord hehe,
          jag är ute efter att sälja efter en period i I1 upplösning så min placering är kortsiktig. Så direkt när jag har köpt vill jag att flytande stopploss går in efter en period (1 min) och bevakar enl. min procentsats 0,2%, går den under den så säljer den direkt.

          Comment


          • #6
            Ok, hur lång är längsta tid positionen kommer finnas gissar du?

            Comment


            • #7
              Här är en moddad variant av Stoploss Mini lång, dynamisk lookback som gör att det går snabbare att simulera när öppen position inte existerar, samt max antal minuter bakåt är 1000. Det räcker ju nästan för två dagar, men du kanske har längre positioner än så?

              Har plockat bort lite lull-lull med elastisk gräns osv.




              { Stoploss Mini Long mod }
              { 190725 }

              tid_innan_stäng:=4 { minuter innan stängning }
              max_spread_procent:=4 { max tillåten spread i procent }
              tidspärr1:=0.33 { minuter mellan orderförsök }
              { }
              i1(
              öppet=ge(mult(1440,sub(market(c),frac(d))),tid_innan_stäng)
              stoppgräns1=ScrPar(1)
              stoppgräns2=sub(1,div(abs(stoppgräns1),100))
              målantal=ScrPar(2)
              lastbuy=LastTrade(B,P)
              innehav=Portfolio(v)

              lt1=LastTrade(B,D)
              minSedanKöp=Mult(Sub(d,lt1),1440)
              delay_ok=gt(minSedanKöp,tidspärr1)
              inpådagen=gt(frac(date()),0.376)
              spreadcheck1=lt(div(s,b),add(1,div(max_spread_procent,100)))
              spreadcheck2=and(and(spreadcheck1,gt(s,b)),gt(b,0))

              start=if(and(öppet,ge(d,lasttrade(b,d))),if(spreadcheck2,b,0),0)
              lookback=if(gt(innehav,0),1000,20)
              maxhittills=hhv(start,lookback:1000)

              level1=Sub(maxhittills,stoppgräns1)
              level2=Mult(maxhittills,stoppgräns2)
              level3=if(lt(scrpar(1),0),level2,level1)

              flytstopp=Lt(b,level3)

              Draw(If(and(delay_ok,Gt(innehav,målantal)),level3,0),9,rqb)
              signal1=And(And(flytstopp,Gt(innehav,målantal)),Gt(innehav,0))
              signal2=And(And(signal1,xor(stoppgräns1,0)),delay_ok)
              signal3=and(and(and(and(signal2,inpådagen),öppet),spreadcheck2),gt(b,0))
              Mult(signal3,10)
              )

              Comment


              • #8
                Jag tror inte antalet perioder blir något problem vid en flyt på 0,2%. Annars går det att kombinera tex i1 och i60 och använda h så längde det inte är ett derivat(kanske överkurs).

                Comment


                • #9
                  Ursprungligen postat av Rikard Autostock Visa inlägg
                  Här är en moddad variant av Stoploss Mini lång, dynamisk lookback som gör att det går snabbare att simulera när öppen position inte existerar, samt max antal minuter bakåt är 1000. Det räcker ju nästan för två dagar, men du kanske har längre positioner än så?

                  Har plockat bort lite lull-lull med elastisk gräns osv.




                  { Stoploss Mini Long mod }
                  { 190725 }

                  tid_innan_stäng:=4 { minuter innan stängning }
                  max_spread_procent:=4 { max tillåten spread i procent }
                  tidspärr1:=0.33 { minuter mellan orderförsök }
                  { }
                  i1(
                  öppet=ge(mult(1440,sub(market(c),frac(d))),tid_innan_stäng)
                  stoppgräns1=ScrPar(1)
                  stoppgräns2=sub(1,div(abs(stoppgräns1),100))
                  målantal=ScrPar(2)
                  lastbuy=LastTrade(B,P)
                  innehav=Portfolio(v)

                  lt1=LastTrade(B,D)
                  minSedanKöp=Mult(Sub(d,lt1),1440)
                  delay_ok=gt(minSedanKöp,tidspärr1)
                  inpådagen=gt(frac(date()),0.376)
                  spreadcheck1=lt(div(s,b),add(1,div(max_spread_procent,100)))
                  spreadcheck2=and(and(spreadcheck1,gt(s,b)),gt(b,0))

                  start=if(and(öppet,ge(d,lasttrade(b,d))),if(spreadcheck2,b,0),0)
                  lookback=if(gt(innehav,0),1000,20)
                  maxhittills=hhv(start,lookback:1000)

                  level1=Sub(maxhittills,stoppgräns1)
                  level2=Mult(maxhittills,stoppgräns2)
                  level3=if(lt(scrpar(1),0),level2,level1)

                  flytstopp=Lt(b,level3)

                  Draw(If(and(delay_ok,Gt(innehav,målantal)),level3,0),9,rqb)
                  signal1=And(And(flytstopp,Gt(innehav,målantal)),Gt(innehav,0))
                  signal2=And(And(signal1,xor(stoppgräns1,0)),delay_ok)
                  signal3=and(and(and(and(signal2,inpådagen),öppet),spreadcheck2),gt(b,0))
                  Mult(signal3,10)
                  )
                  Tack Rikard, ska testa den. jag kommer inte position över natten så antalet perioder är inget problem.

                  Comment


                  • #10
                    Ursprungligen postat av greolo Visa inlägg
                    Tack Rikard, ska testa den. jag kommer inte position över natten så antalet perioder är inget problem.
                    Antalet perioder räknas bara under handelsdagen (då aktuell börs är öppen) så natten räknas aldrig in.

                    mvh
                    Bertil

                    Comment


                    • #11
                      En dum fråga kanske men var justerar jag %:en i detta script? tex 0,2%?

                      Comment


                      • #12
                        Man skriver in det i Indata script-fliken om du klickar Enter på instrumentet. Fältet Flytnivå.

                        Comment


                        • #13
                          Ursprungligen postat av greolo Visa inlägg
                          Tack Rikard, ska testa den. jag kommer inte position över natten så antalet perioder är inget problem.
                          Ursprungligen postat av Rikard Autostock Visa inlägg
                          Man skriver in det i Indata script-fliken om du klickar Enter på instrumentet. Fältet Flytnivå.

                          Aha på SL mini Flytnivå, tack åter igen. Nu ska jag testa och få ihop ordermodellerna och gå vidare i processen. Återkommer säkert igen om inte här i nån ny tråd

                          Comment


                          • #14
                            Ursprungligen postat av greolo Visa inlägg
                            Aha på SL mini Flytnivå, tack åter igen. Nu ska jag testa och få ihop ordermodellerna och gå vidare i processen. Återkommer säkert igen om inte här i nån ny tråd
                            En ny fråga, om jag istället skulle vilja editera i scriptet istället för indata fliken vad behöver jag ändra?

                            Comment


                            • #15
                              Ursprungligen postat av greolo Visa inlägg
                              En ny fråga, om jag istället skulle vilja editera i scriptet istället för indata fliken vad behöver jag ändra?
                              Det är kommandot ScrPar(1) som hämtar värdet från position1

                              Fördelen med kommandot ScrPar() är att det är kopplat till instrumentet. Man kan alltså köra samma script för flera instrument men ha olika instrumentspecifika gränser.

                              Om du önskar sätta värdet i scriptet kan du skriva:

                              stoppgräns1:=1

                              ovanför periodindelningen i1(
                              Då man sedan simulerar så ser man enkelt vilka värden man använt vid simuleringen.

                              mvh
                              Bertil

                              Comment

                              Working...
                              X