Allmänt meddelande

Collapse
No announcement yet.

Scriptfråga

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

  • Scriptfråga

    Testar ett script som ska försöka hitta ett lägre värde på en close innanför boilinger nedre än en tidigare close utanför. På det stora hela så funkar det men jag får ett fulköp som jag inte förstår riktigt. Enbart när jag testar det på boliden. köpet markeras i diagrammet men det finns inte med i analysbänkens vinstrapport..?

    scriptet

    cmpref(c,0,a)

    ubol=find(lt(c,bolbands(20,2,L)),10,c,1)
    ibol=find(gt(c,bolbands(20,2,L)),5,c,1)
    köpläge=lt(ibol,ubol)
    ej_innehav=eqv(portfolio(v),0)
    pengar_finns=gt(cash(t),5000)

    köp1=and(ej_innehav,pengar_finns)
    köp2=and(köp1,köpläge)

    mult(köp2,10)

    {@A(0,)}

  • #2
    Edit: sorry missuppfattade frågan. Hittade villkoret i bol och i30 i diagrammet.
    Jag körde scriptet i30 som enskilt script utan de två sista raderna och bar en gång per stapel. Säljscriptet alltid falskt. Det fungerar, tex den 1 april. Mer konkret exempel där det inte fungerar.

    i30(
    ubol=find(lt(c,bolbands(20,2,L)),10,c,1)
    ibol=find(gt(c,bolbands(20,2,L)),5,c,1)
    köpläge=and(lt(ibol,ubol),gt(d,lasttrade(b,1)))
    retval(d,1)
    and(köpläge,1)
    )
    Last edited by Henric; 2021-04-15, 18:12.

    Comment


    • #3
      Nej det är lite skumt. Det syns inte nu längre. Det var boliden, antingen 17-18 eller 19 mars i år.

      Comment


      • #4
        Nu har jag skruvat lite till på det här scriptet och börjar komma upp i en helt hyfsad avkastning. Som helt ny i programmerandet så tycker jag det här är riktigt roligt!

        Som säljscript har jag ett enkelt script som säljer när L är över övre boilinger bandet.


        innehav=gt(portfolio(v),0)
        öb=BolBands(20,2,U)
        sälj1=gt(L,öb)
        sälj2=and(sälj1,innehav)
        mult(sälj2,5)


        När jag försöker optimera säljscriptet så ser jag att vid vissa tillfällen så ligger stolparna och fortsätter pressa uppåt i övre bandet. Går det scripta något villkor så att den inte säljer förrens kursen har en close under övre bolbandet efter att den varit över? alltså att den säljer när den korsar övre boilinger uppifrån och inte nerifrån..
        Last edited by Gränna; 2021-04-16, 21:54.

        Comment


        • #5
          Ett enkelt sätt att testa om korsning sker nedåt är följande:

          innehav=gt(portfolio(v),0)
          öb=BolBands(20,2,U)
          sälj1=gt(aref(L,1),aref(öb,1))
          sälj2=and(and(sälj1,lt(L,öb)),innehav)
          mult(sälj2,5)

          Dvs, förra stapelns L ska vara över förra stapelns ÖB, och nuvarande stapels L ska vara under ÖB. Då vet vi att korsning måste skett nedåt.

          Comment


          • #6
            Ursprungligen postat av Rikard Autostock Visa inlägg
            Ett enkelt sätt att testa om korsning sker nedåt är följande:

            innehav=gt(portfolio(v),0)
            öb=BolBands(20,2,U)
            sälj1=gt(aref(L,1),aref(öb,1))
            sälj2=and(and(sälj1,lt(L,öb)),innehav)
            mult(sälj2,5)

            Dvs, förra stapelns L ska vara över förra stapelns ÖB, och nuvarande stapels L ska vara under ÖB. Då vet vi att korsning måste skett nedåt.

            Nice!

            Tack Rikard

            Comment

            Working...
            X