Allmänt meddelande

Collapse
No announcement yet.

Stoppkurva

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

  • Stoppkurva

    Går det att få stoppkurvan utritad på detta skriptet ?

    {För såld OMX-termin }
    {---------------------------------------------}
    {signaler bara vid innehav}
    innehav:=Lt(Portfolio(v),-1)
    bakåt1:=300
    eftersälj:=ge(d,LastTrade(s,d))
    säljkurs:=LastTrade(s,p)
    {-------------------för test---------------}
    bxakåt1:=5
    exftersälj:=1
    sxäljkurs:=876
    {---------------------------------------------}
    vinstmarginal:=3
    vinst:=lt(c,sub(säljkurs,vinstmarginal))
    absolutStoploss0:=4
    flytandeStoploss0:=if(vinst,3,4)
    jfrlevel0:=if(eftersälj,l,9999)
    min0:=llv(jfrlevel0,bakåt1)
    stoplevel0:=mn(add(säljkurs,absolutStoploss0),add(min0,flytandeStoploss0))

    {-- undvik tillfällig spik genom att testa mot de två senaste perioderna --}

    stabiltfall0:=2
    stoploss0:=llv(gt(c,stoplevel0),stabiltfall0)

    i3(and(innehav,stoploss0))

  • #2
    Visst, inga problem:

    {För såld OMX-termin }
    {---------------------------------------------}
    {signaler bara vid innehav}
    innehav:=Lt(Portfolio(v),-1)
    bakåt1:=300
    eftersälj:=ge(d,LastTrade(s,d))
    säljkurs:=LastTrade(s,p)
    {-------------------för test---------------}
    bxakåt1:=5
    exftersälj:=1
    sxäljkurs:=876
    {---------------------------------------------}
    vinstmarginal:=3
    vinst:=lt(c,sub(säljkurs,vinstmarginal))
    absolutStoploss0:=4
    flytandeStoploss0:=if(vinst,3,4)
    jfrlevel0:=if(eftersälj,l,9999)
    min0:=llv(jfrlevel0,bakåt1)
    stoplevel0:=mn(add(säljkurs,absolutStoploss0),add(min0,flytandeStoploss0))
    Draw(stoplevel0,2,gqb)
    {-- undvik tillfällig spik genom att testa mot de två senaste perioderna --}

    stabiltfall0:=2
    stoploss0:=llv(gt(c,stoplevel0),stabiltfall0)

    i3(and(innehav,stoploss0))

    Comment


    • #3
      Någon kurva ritades inte. Går det att lägga till en funktion i skriptet som minskar den absoluta stoppen vid uppnådd vinstmarginal till t.ex. 1 pkt. ?

      Comment


      • #4
        Nja, det kan bero på att jag missade att lägga Draw-satsen som en minnesreferens. Jag har flyttat ner den sist och gjort om raden innan till en referens. Nu ska kurvan ritas. Förstår inte riktigt hur du menar med att minska absolutstoppen när viss vinst uppnåtts? Då är ju absolutstoppen inte längre aktuell.


        {För såld OMX-termin }
        {---------------------------------------------}
        {signaler bara vid innehav}
        innehav:=Lt(Portfolio(v),-1)
        bakåt1:=300
        eftersälj:=ge(d,LastTrade(s,d))
        säljkurs:=LastTrade(s,p)
        {-------------------för test---------------}
        bxakåt1:=5
        exftersälj:=1
        sxäljkurs:=876
        {---------------------------------------------}
        vinstmarginal:=3
        vinst:=lt(c,sub(säljkurs,vinstmarginal))
        absolutStoploss0:=4
        flytandeStoploss0:=if(vinst,3,4)
        jfrlevel0:=if(eftersälj,l,9999)
        min0:=llv(jfrlevel0,bakåt1)
        stoplevel0:=mn(add(säljkurs,absolutStoploss0),add(min0,flytandeStoploss0))

        {-- undvik tillfällig spik genom att testa mot de två senaste perioderna --}

        stabiltfall0:=2
        stoploss0=llv(gt(c,stoplevel0),stabiltfall0)
        Draw(stoplevel0,2,gqb)

        i3(and(innehav,stoploss0))

        Comment


        • #5
          Lite av resonemanget i Raptortråden som när 3 pkt vinst är uppnått så borde absolutstoppen dra ihop till 1 pkt marginal och så länge det fortsätter i rätt riktning så är man med, men jag har väl inte förstått hur skriptet fungerar.

          Comment


          • #6
            Ok, så länge vinsten är högre än tex 1 punkt så ska flytstoppen också vara 1 punkt? Är det så du menar? Det är nämligen precis så scriptet funkar.



            {För såld OMX-termin }
            {---------------------------------------------}
            {signaler bara vid innehav}
            innehav:=Lt(Portfolio(v),-1)
            bakåt1:=300
            eftersälj:=ge(d,LastTrade(s,d))
            säljkurs:=LastTrade(s,p)
            {-------------------för test---------------}
            bxakåt1:=5
            exftersälj:=1
            sxäljkurs:=876
            {---------------------------------------------}
            vinstmarginal:=1
            vinst:=lt(c,sub(säljkurs,vinstmarginal))
            absolutStoploss0:=4
            flytandeStoploss0:=if(vinst,1,4)
            jfrlevel0:=if(eftersälj,l,9999)
            min0:=llv(jfrlevel0,bakåt1)
            stoplevel0:=mn(add(säljkurs,absolutStoploss0),add(min0,flytandeStoploss0))

            {-- undvik tillfällig spik genom att testa mot de två senaste perioderna --}

            stabiltfall0:=2
            stoploss0=llv(gt(c,stoplevel0),stabiltfall0)
            Draw(stoplevel0,2,gqb)

            i3(and(innehav,stoploss0))

            Comment


            • #7
              Ok. Trevlig Midsommar

              Comment


              • #8
                En fråga till, eftersom jag tydligen måste ändra värde i både vinstmarginal och flytande stoploss, måste jag göra det samma för absolut stoploss om jag vill ha ett annat värde på den ?

                Comment


                • #9
                  Japp, det stämmer.

                  Comment


                  • #10
                    Nu är jag väl som i småskolan men varför behöva ändra på två ställen ? Har inte förstått detta tidigare och lagt undan skriptet som ej fungerande. Har experimenterat lite ett par dagar och det kan kanske vara användbart.

                    Comment


                    • #11
                      Nja, stoppen består ju av två delar och man måste tänka på båda. Vill du alltså ha en absolut stoppnivå och utöver det en flytande del med två olika flytgränser beroende på det är vinst eller ej?

                      Comment


                      • #12
                        N,ja idén är väl att när man sitter framför datorn och har en fet vinst låsa in densamma, fram till dess ha ett skydd mot stora förluster. I dag fungerade detta alldeles utmärkt vid 16-tiden i en annan stoploss.

                        Comment


                        • #13
                          Ursprungligen postat av Rikard Nilsson Visa inlägg
                          Nja, stoppen består ju av två delar och man måste tänka på båda. Vill du alltså ha en absolut stoppnivå och utöver det en flytande del med två olika flytgränser beroende på det är vinst eller ej?
                          Betyder detta att den kan skicka 2 order i följd ? I så fall hur förhindrar man att så sker ?

                          11:17 ORDER "sl) Flyt stop 2-4 pkt Köp OMXS300G" kurs 997.0000
                          11:17:42 Order skickad!
                          11:17 ORDER "sl) Flyt stop 2-4 pkt Köp OMXS300G" kurs 1000.0000
                          11:17 ORDER "xk) Delay köp spärrar order för OMXS300G" kurs 1000.0000
                          11:17 ORDER "sl) Flyt stop 2-4 pkt Köp OMXS300G" kurs 1000.0000
                          11:17 ORDER "xk) Delay köp spärrar order för OMXS300G" kurs 1000.0000
                          11:17 ORDER "sl) Flyt stop 2-4 pkt Köp OMXS300G" kurs 999.7500
                          11:17 ORDER "xk) Delay köp spärrar order för OMXS300G" kurs 999.7500

                          Comment


                          • #14
                            Hur är modellen byggd? En loopad sekvens? I så fall kan flera ordrar skickas, men signalerna upphör när innehavet är stängt. Kolla så att gränsen för innehav är satt korrekt i raden som börjar med innehav:=

                            Här bör det stå en nolla istället för -1 så att scriptet bara får slå till när innehavet är negativt. Så fort det är noll spärras signalerna.

                            Om du inte kört med skarpt innehav får du orderskurar enligt ovan.

                            Comment


                            • #15
                              Körde med loop och skarpt.

                              Comment

                              Working...
                              X