Allmänt meddelande

Collapse
No announcement yet.

Modell rsi+sto+mom

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

  • Modell rsi+sto+mom

    Jag har funderat ett tag på att göra en modell där 3 TA-metoder används, RSI + Momentum + Stochastic för att få tillförlitliga signaler för köp/sälj i ordermodellen.

    Tanken är att när TVÅ av TRE av metoderna skär angiven linje så är det köp/sälj-dags beroende från vilket håll de skär - se bifogad bild. Signal behövs från minst två av metoderna för att utlösa köp/sälj, vilka de är kan variera från gång till gång.

    RSI-grön linje skär vid 0-nivån
    Momentum - röd linje skär vid 0-nivån
    Stochastic skär 50-nivån

    Mina script-kunskaper är tyvärr rätt så begränsade så jag skulle behöva hjälp av någon/några personer för att konstruera köp/sälj-scripten här på forumet.

    Tacksam för hjälp
    Attached Files

  • #2
    rp1:=14
    mp1:=11
    sp1:=21
    s1:=cross(stoch(sp1),50)
    mo1:=cross(roc(c,mp1,%),0)
    r1:=cross(rsi(rp1),0)
    gt(add(s1,add(mo1,r1)),1)

    Korsningtesterna adderas helt enkelt och testas ifall summan är minst 2.

    Periodvärdena jag lagt separat först ändrar du till det som du tänkt använda.

    Comment


    • #3
      Det fungerar bra lasse, jag får ut flaggor när två av tre metoder skär linjen. På något sätt måste jag i ordermodellen veta när det är dags att göra köp och när det är dags att utföra sälj.

      Scriptet behöver hålla ordning på om metoden skär:

      uppifrån och ner över linjen -SÄLJ eller
      nerifrån och upp - KÖP,

      hur löser man detta i scripten?

      Comment


      • #4
        Grundprincipen för det kan plockas från t.ex olika script med medelvärdeskorsningar typ


        Sälj:

        rp1:=14
        mp1:=11
        sp1:=21
        st1:=stoch(sp1)
        s1:=and(cross(st1,50),lt(st1,50))
        mo0:=roc(c,mp1,%)
        mo1:=and(cross(mo0,0),lt(mo0,0))
        r0:=rsi(rp1)
        r1:=and(cross(r0,0),lt(r0,0))
        gt(add(s1,add(mo1,r1)),1)

        Köp:

        rp1:=14
        mp1:=11
        sp1:=21
        st1:=stoch(sp1)
        s1:=and(cross(st1,50),gt(st1,50))
        mo0:=roc(c,mp1,%)
        mo1:=and(cross(mo0,0),gt(mo0,0))
        r0:=rsi(rp1)
        r1:=and(cross(r0,0),gt(r0,0))
        gt(add(s1,add(mo1,r1)),1)

        Comment


        • #5
          Jag gjort köp/sälj-script + ordermodell efter dina script.

          Det ser bra ut - idag har rsi(grön linje) +mom (röd linje) varit över linjerna sedan kl.11.15, men ingen blå flagga har kommit dvs köp -se bild.

          Köp är liten blå flagga-syns i volym 27/8, sälj är liten röd flagga -syns i volym 28/8.

          Varför kommer det ingen köp-flagga tror du Lasse?
          Attached Files

          Comment


          • #6
            Det är väl det vanliga att datorer gör inte som man vill, utan precis vad man säger till dem.

            Villkoren säger ju att korsningar skall ske samtidigt i samma period i dessa olika metoder.

            Prova leka lite med Assistenten som finns där du jobbar med scripten.

            Där kan du kombinera tre olika villkor i en dialog på ett enkelt sätt. Och där finns också funktionen för vad jag kallar NYLIGEN-händelser, dvs att respektive korsning har inträffar inom ett angivet antal perioder.

            Grundtekniken för detta är att använda ett HHV() på testet man gör, oavsett metod man testar. HHV() fungerar helt som en ELLER-funktion över ett antal perioder bakåt. Har betoden varit sann vid ett enda tillfälle eller fler så får du sant tillbaks.


            Sälj:

            okglapp:=3
            rp1:=14
            mp1:=11
            sp1:=21
            st1:=stoch(sp1)
            s1:=and(cross(st1,50),lt(st1,50))
            mo0:=roc(c,mp1,%)
            mo1:=and(cross(mo0,0),lt(mo0,0))
            r0:=rsi(rp1)
            r1:=and(cross(r0,0),lt(r0,0))
            sx1:=hhv(s1,okglapp)
            mox1:=hhv(mo1,okglapp)
            rx1:=hhv(r1,okglapp)
            gt(add(sx1,add(mox1,rx1)),1)


            Köp:

            okglapp:=3
            rp1:=14
            mp1:=11
            sp1:=21
            st1:=stoch(sp1)
            s1:=and(cross(st1,50),gt(st1,50))
            mo0:=roc(c,mp1,%)
            mo1:=and(cross(mo0,0),gt(mo0,0))
            r0:=rsi(rp1)
            r1:=and(cross(r0,0),gt(r0,0))
            sx1:=hhv(s1,okglapp)
            mox1:=hhv(mo1,okglapp)
            rx1:=hhv(r1,okglapp)
            gt(add(sx1,add(mox1,rx1)),1)


            'okglapp' där talar du om inom hur många perioder bakåt som respektive måste vara uppfyllt. Här 3 st då.

            Bara att prova tills man är nöjd.

            Comment

            Working...
            X