Allmänt meddelande

Collapse
No announcement yet.

Nybörjare med bekymmer

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

  • Nybörjare med bekymmer

    Hej, jag är helt ny på detta med script men jag har börjat pillat lite och stött på patrull.
    Jag försöker få till en ordermodell baserad på EMA värden.

    Först vill jag att omxs30 ska vara i positiv trend. i detta fall EMA5 över EMA 14, sedan vill jag att detsamma ska gälla med instrumentet jag ska handla.

    Här är en köpmodell jag skrivit ner och det ser bra ut i dagsupplösning, men så fort jag byter till någon annan upplösning så blir det väldigt "trapplikt" och köpsignalen stämmer inte lägre överens med vad kurvorna visar.

    omxs30=cmpref(c,0,a)
    omxsema5=ema(omxs30,5)
    omxsema14=ema(omxs30,14)
    omxstrend=gt(omxsema5,omxsema14)
    ema5=ema(c,5)
    ema14=ema(c,14)
    instrumenttrend=gt(ema5,ema14)
    ej_innehav=le(portfolio(v),0)
    Draw(ema5,1,BqbW)
    Draw(ema14,2,RqbW)

    köp1=and(omxstrend,instrumenttrend)
    köp2=and(köp1,ej_innehav)
    mult(köp2,5)


    {@A(0,)}

    Är det någon som kan se vad jag gör för fel? Eller är jag tvungen att ange i vilken tidsupplösning scriptet ska gälla för?
    I sådant fall, hur gör jag det?

    Tacksam för svar på kanske en dum fråga. men man måste ju börja någonstans. :-)

  • #2
    Hej och välkommen!

    Har inte hunnit testa, men det kan vara ett lite lurigt fel som compilern inte larmar för just nu, det kommer att rättas till nästa utgåva. Variablerna ema5 och ema14 är delnamn av omxsema5 och omxsema14, så det kan bli knas i compilern:


    omxs30=cmpref(c,0,a)
    omxsema5=ema(omxs30,5)
    omxsema14=ema(omxs30,14)
    omxstrend=gt(omxsema5,omxsema14)
    ema5=ema(c,5)
    ema14=ema(c,14)
    instrumenttrend=gt(ema5,ema14)
    ej_innehav=le(portfolio(v),0)
    Draw(ema5,1,BqbW)
    Draw(ema14,2,RqbW)

    köp1=and(omxstrend,instrumenttrend)
    köp2=and(köp1,ej_innehav)
    mult(köp2,5)


    {@A(0,)}


    Ändra så att de blir helt unika, tex:

    omxs30=cmpref(c,0,a)
    omxsema5=ema(omxs30,5)
    omxsema14=ema(omxs30,14)
    omxstrend=gt(omxsema5,omxsema14)
    inst_ema5=ema(c,5)
    inst_ema14=ema(c,14)
    instrumenttrend=gt(inst_ema5,inst_ema14)
    ej_innehav=le(portfolio(v),0)
    Draw(inst_ema5,1,BqbW)
    Draw(inst_ema14,2,RqbW)

    köp1=and(omxstrend,instrumenttrend)
    köp2=and(köp1,ej_innehav)
    mult(köp2,5)

    Comment


    • #3
      Tack så mycket för snabb hjälp! Nu fungerar det kanon!
      Det kommer nog mer frågor så småningom. :-)

      Comment


      • #4
        Hej, när jag försöker köra denna köp och säljmodell så blir det fruktansvärt många avslut och näst intill alla är negativa. vilket det inte borde bli om man tittar på diagrammet.
        Måste man ange en tidsupplösning? Det verkar som den köper och säljer på samma tid flera ggr.

        Någon som kan se vad jag gör för fel?

        Köp:
        omxs30=cmpref(c,0,a)
        omxsema5=ema(omxs30,5)
        omxsema14=ema(omxs30,14)
        omxstrend=gt(omxsema5,omxsema14)
        inst_ema5=ema(c,5)
        inst_ema14=ema(c,14)
        instrumenttrend=gt(inst_ema5,inst_ema14)
        ej_innehav=le(portfolio(v),0)

        köp1=and(omxstrend,instrumenttrend)
        köp2=and(köp1,ej_innehav)

        Draw(inst_ema5,1,BqbW)
        Draw(inst_ema14,2,RqbW)
        Draw(mult(köp2,5),3,gsbf)

        {@A(0,OMX Stock )}


        Sälj:


        omxs30=cmpref(c,0,a)
        omxsema5=ema(omxs30,5)
        omxsema14=ema(omxs30,14)
        omxstrend_neg=lt(omxsema5,omxsema14)
        inst_ema5=ema(c,5)
        inst_ema14=ema(c,14)
        instrumenttrend_neg=lt(inst_ema5,inst_ema14)
        innehav=gt(portfolio(v),0)
        Draw(inst_ema5,1,BqbW)
        Draw(inst_ema14,2,RqbW)

        sälj1=or(omxstrend_neg,instrumenttrend_neg)
        sälj2=and(sälj1,innehav)
        Draw(mult(sälj1,5),3,rsbf)
        mult(sälj2,5)




        {@A(0,OMX Stock )}


        Med vänlig hälsning

        Comment


        • #5
          Det kan vara att köpscriptet inte är terminerat korrekt, det måste avslutas med returvärde från en funktion, rättat:


          Köp:
          omxs30=cmpref(c,0,a)
          omxsema5=ema(omxs30,5)
          omxsema14=ema(omxs30,14)
          omxstrend=gt(omxsema5,omxsema14)
          inst_ema5=ema(c,5)
          inst_ema14=ema(c,14)
          instrumenttrend=gt(inst_ema5,inst_ema14)
          ej_innehav=le(portfolio(v),0)

          köp1=and(omxstrend,instrumenttrend)
          köp2=and(köp1,ej_innehav)

          Draw(inst_ema5,1,BqbW)
          Draw(inst_ema14,2,RqbW)
          Draw(mult(köp2,5),3,gsbf)

          mult(köp2,10)

          {@A(0,OMX Stock )}

          Comment

          Working...
          X