Allmänt meddelande

Collapse
No announcement yet.

Jämföra 2st grafer

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

  • Jämföra 2st grafer

    Kan man rita grafen av ett extrajobbet i samma diagram som original aktien?
    Dvs försöka ta hjälp av 2 st grafer för ex pairtrading

    jag tänker främst på funktionen draw(x,x,x)

    Skulle man kunna så ihop ett antal aktier till en graf?, för att skapa ett eget index. Förutsätt att volymen är lika i alla aktier.
    // Kristian

  • #2
    Går utmärkt att rita grafer med cmpref.

    Draw(c,1,kqb0)
    Draw(cmpref(c,0,a),2,gqb0)
    Draw(cmpref(c,0,b),3,dgqb0)
    Draw(cmpref(c,0,c),4,rqb0)

    Man kan ju maximalt ta in 3 st cmpref i varje ordermodell.

    mvh
    Bertil

    Comment


    • #3
      Jag har gjort analys på alla 30 ingående aktier i OMXS30, men då får man göra 10 st dummyordermodeller som inte handlar och addera ihop till ett indikatorvärde. Detta värde kan dock inte ritas som en linje.

      Först gör man alltså 9 ordermodeller som tar in 3 st cmpref styck. Sedan i den 10 ordermodellen hanterar man de tre sista aktierna plus summerar ihop till lämpligt godhetstal. Visar den 10:e och sista ordermodellen där jag även tar fram den aktie som påverkar indexet mest för att kolla om indexet drivs mest av en enskild aktie.
      ------------------------------
      { DDD1 28 to 30 }
      { A vikt Tele2 }
      { A vikt TeliaSonera }
      { A vikt Volvo B }


      { korrekt antal aktier }
      aktier1:=425523429
      aktier2:=4330084781
      aktier3:=1615305120


      i1(
      tidX=eqv(int(mult(frac(d),1440)),545)
      SetGVarIf(GetGVar(3844),3860,tidx,T)
      perioder05=Sub(int(mult(frac(d),1440)),540)
      bakåt01=mult(1,GetGVar(3939))
      bakåt02=if(Eqv(GetGVar(3939),perioder05),add(perioder05,5),perioder05)

      vikt1=Div(mult(cmpref(c,0,a),aktier1),GetGVar(3842))
      vikt2=Div(mult(cmpref(c,0,b),aktier2),GetGVar(3842))
      vikt3=Div(mult(cmpref(c,0,c),aktier3),GetGVar(3842))

      kurva01=Div(Sub(cmpref(c,0,a),GetGVar(3928)),GetGVar(3928))
      kurva02=Div(Sub(cmpref(c,0,b),GetGVar(3929)),GetGVar(3929))
      kurva03=Div(Sub(cmpref(c,0,c),GetGVar(3930)),GetGVar(3930))

      vas1=Mult(kurva01,vikt1)
      vas2=Mult(kurva02,vikt2)
      vas3=Mult(kurva03,vikt3)

      SetGVarIf(vas1,3828,1)
      SetGVarIf(vas2,3829,1)
      SetGVarIf(vas3,3830,1)

      kurva11=Div(Sub(cmpref(c,0,a),cmpref(c,bakåt01,a)),cmpref(c,bakåt01,a))
      kurva12=Div(Sub(cmpref(c,0,b),cmpref(c,bakåt01,b)),cmpref(c,bakåt01,b))
      kurva13=Div(Sub(cmpref(c,0,c),cmpref(c,bakåt01,c)),cmpref(c,bakåt01,c))


      bas1=Mult(kurva11,vikt1)
      bas2=Mult(kurva12,vikt2)
      bas3=Mult(kurva13,vikt3)

      mas1=if(Lt(bas1,0),bas1,0)
      mas2=if(Lt(bas2,0),bas2,0)
      mas3=if(Lt(bas3,0),bas3,0)
      mas4=add(add(mas1,mas2),mas3)
      SetGVarIf(Add(GetGVar(3931),mas4),3931,1)

      mas5=if(Gt(bas1,0),bas1,0)
      mas6=if(Gt(bas2,0),bas2,0)
      mas7=if(Gt(bas3,0),bas3,0)
      mas8=add(add(mas5,mas6),mas7)
      SetGVarIf(Add(GetGVar(3933),mas8),3933,1)

      ihop=Add(Add(mult(cmpref(c,0,a),aktier1),mult(cmpref(c,0,b),aktier2)),mult(cmpref(c,0,c),aktier3))
      SetGVarIf(ihop,3841,1)

      kurva21=Div(Sub(cmpref(c,bakåt01,a),cmpref(c,bakåt02,a)),cmpref(c,bakåt02,a))
      kurva22=Div(Sub(cmpref(c,bakåt01,b),cmpref(c,bakåt02,b)),cmpref(c,bakåt02,b))
      kurva23=Div(Sub(cmpref(c,bakåt01,c),cmpref(c,bakåt02,c)),cmpref(c,bakåt02,c))

      das1=Mult(kurva21,vikt1)
      das2=Mult(kurva22,vikt2)
      das3=Mult(kurva23,vikt3)

      nas1=if(Lt(das1,0),das1,0)
      nas2=if(Lt(das2,0),das2,0)
      nas3=if(Lt(das3,0),das3,0)
      nas4=add(add(nas1,nas2),nas3)
      SetGVarIf(Add(GetGVar(3935),nas4),3935,1)

      nas5=if(Gt(das1,0),das1,0)
      nas6=if(Gt(das2,0),das2,0)
      nas7=if(Gt(das3,0),das3,0)
      nas8=add(add(nas5,nas6),nas7)
      SetGVarIf(Add(GetGVar(3937),nas8),3937,1)


      mumma01t03=Add(Add(GetGvar(3801),GetGvar(3802)),GetGvar(3803))
      mumma04t06=Add(Add(GetGvar(3804),GetGvar(3805)),GetGvar(3806))
      mumma07t09=Add(Add(GetGvar(3807),GetGvar(3808)),GetGvar(3809))
      mumma10t12=Add(Add(GetGvar(3810),GetGvar(3811)),GetGvar(3812))
      mumma13t15=Add(Add(GetGvar(3813),GetGvar(3814)),GetGvar(3815))
      mumma16t18=Add(Add(GetGvar(3816),GetGvar(3817)),GetGvar(3818))
      mumma19t21=Add(Add(GetGvar(3819),GetGvar(3820)),GetGvar(3821))
      mumma22t24=Add(Add(GetGvar(3822),GetGvar(3823)),GetGvar(3824))
      mumma25t27=Add(Add(GetGvar(3825),GetGvar(3826)),GetGvar(3827))
      mumma28t30=Add(Add(GetGvar(3828),GetGvar(3829)),GetGvar(3830))
      stormumma1=Add(Add(Add(Add(mumma01t03,mumma04t06),mumma07t09),mumma10t12),mumma13t15)
      stormumma2=Add(Add(Add(Add(mumma16t18,mumma19t21),mumma22t24),mumma25t27),mumma28t30)
      stormumma3=Add(stormumma1,stormumma2)

      negativ01=Add(GetGVar(3931),0)
      positiv01=Add(GetGVar(3933),0)
      totalen01=Add(abs(positiv01),abs(negativ01))
      sign01=if(Ge(add(positiv01,negativ01),0),1,-1)
      tillfällig1=if(Gt(positiv01,abs(negativ01)),sub(div(positiv01,totalen01),0.5),add(div(negativ01,totalen01),0.5))
      tillfällig2=mult(2,tillfällig1)
      tillfällig8=if(Eqv(GetGVar(3939),perioder05),tillfällig2,0)
      SetGVarIf(GetGVar(3942),3932,1)
      SetGVarIf(tillfällig8,3952,1)
      change=mult(Div(sub(c,aref(c,bakåt01)),aref(c,bakåt01)),100)


      negativ02=Add(GetGVar(3935),0)
      positiv02=Add(GetGVar(3937),0)
      totalen02=Add(abs(positiv02),abs(negativ02))
      sign02=if(Ge(add(positiv02,negativ02),0),1,-1)
      tillfällig3=if(Gt(positiv02,abs(negativ02)),sub(div(positiv02,totalen02),0.5),add(div(negativ02,totalen02),0.5))
      tillfällig4=mult(2,tillfällig3)
      SetGVarIf(tillfällig4,3936,1)
      ändring=Sub(tillfällig2,tillfällig4)
      SetGVarIf(GetGVar(3948),3938,1)
      SetGVarIf(ändring,3953,1)



      gumma01=Add(Add(GetGvar(3832),GetGvar(3833)),GetGvar(3834))
      gumma02=Add(Add(GetGvar(3835),GetGvar(3836)),GetGvar(3837))
      gumma03=Add(Add(GetGvar(3838),GetGvar(3839)),GetGvar(3840))
      gumma04=Add(Add(Add(GetGvar(3841),gumma01),gumma02),gumma03)
      SetGVarIf(gumma04,3842,1)

      summa01t03=MX(MX(ABS(GetGvar(3801)),ABS(GetGvar(3802))),ABS(GetGvar(3803)))
      summa04t06=MX(MX(ABS(GetGvar(3804)),ABS(GetGvar(3805))),ABS(GetGvar(3806)))
      summa07t09=MX(MX(ABS(GetGvar(3807)),ABS(GetGvar(3808))),ABS(GetGvar(3809)))
      summa10t12=MX(MX(ABS(GetGvar(3810)),ABS(GetGvar(3811))),ABS(GetGvar(3812)))
      summa13t15=MX(MX(ABS(GetGvar(3813)),ABS(GetGvar(3814))),ABS(GetGvar(3815)))
      summa16t18=MX(MX(ABS(GetGvar(3816)),ABS(GetGvar(3817))),ABS(GetGvar(3818)))
      summa19t21=MX(MX(ABS(GetGvar(3819)),ABS(GetGvar(3820))),ABS(GetGvar(3821)))
      summa22t24=MX(MX(ABS(GetGvar(3822)),ABS(GetGvar(3823))),ABS(GetGvar(3824)))
      summa25t27=MX(MX(ABS(GetGvar(3825)),ABS(GetGvar(3826))),ABS(GetGvar(3827)))
      summa28t30=MX(MX(ABS(GetGvar(3828)),ABS(GetGvar(3829))),ABS(GetGvar(3830)))
      storsumma1=MX(MX(MX(MX(ABS(summa01t03),ABS(summa04t06)),ABS(summa07t09)),ABS(summa10t12)),ABS(summa13t15))
      storsumma2=MX(MX(MX(MX(ABS(summa16t18),ABS(summa19t21)),ABS(summa22t24)),ABS(summa25t27)),ABS(summa28t30))
      storsumma3=MX(ABS(storsumma1),ABS(storsumma2))

      vinnare01=if(Gt(Abs(GetGVar(3801)),Abs(GetGVar(3802))),3801,3802)
      vinnare02=if(Gt(Abs(GetGVar(3803)),Abs(GetGVar(3804))),3803,3804)
      vinnare03=if(Gt(Abs(GetGVar(3805)),Abs(GetGVar(3806))),3805,3806)
      vinnare04=if(Gt(Abs(GetGVar(3807)),Abs(GetGVar(3808))),3807,3808)
      vinnare05=if(Gt(Abs(GetGVar(3809)),Abs(GetGVar(3810))),3809,3810)
      vinnare06=if(Gt(Abs(GetGVar(3811)),Abs(GetGVar(3812))),3811,3812)
      vinnare07=if(Gt(Abs(GetGVar(3813)),Abs(GetGVar(3814))),3813,3814)
      vinnare08=if(Gt(Abs(GetGVar(3815)),Abs(GetGVar(3816))),3815,3816)
      vinnare09=if(Gt(Abs(GetGVar(3817)),Abs(GetGVar(3818))),3817,3818)
      vinnare10=if(Gt(Abs(GetGVar(3819)),Abs(GetGVar(3820))),3819,3820)
      vinnare11=if(Gt(Abs(GetGVar(3821)),Abs(GetGVar(3822))),3821,3822)
      vinnare12=if(Gt(Abs(GetGVar(3823)),Abs(GetGVar(3824))),3823,3824)
      vinnare13=if(Gt(Abs(GetGVar(3825)),Abs(GetGVar(3826))),3825,3826)
      vinnare14=if(Gt(Abs(GetGVar(3827)),Abs(GetGVar(3828))),3827,3828)
      vinnare15=if(Gt(Abs(GetGVar(3829)),Abs(GetGVar(3830))),3829,3830)


      vinnare20=if(Gt(Abs(GetGVar(vinnare01)),Abs(GetGVar(vinnare02))),vinnare01,vinnare02)
      vinnare21=if(Gt(Abs(GetGVar(vinnare03)),Abs(GetGVar(vinnare04))),vinnare03,vinnare04)
      vinnare22=if(Gt(Abs(GetGVar(vinnare05)),Abs(GetGVar(vinnare06))),vinnare05,vinnare06)
      vinnare23=if(Gt(Abs(GetGVar(vinnare07)),Abs(GetGVar(vinnare08))),vinnare07,vinnare08)
      vinnare24=if(Gt(Abs(GetGVar(vinnare09)),Abs(GetGVar(vinnare10))),vinnare09,vinnare10)
      vinnare25=if(Gt(Abs(GetGVar(vinnare11)),Abs(GetGVar(vinnare12))),vinnare11,vinnare12)
      vinnare26=if(Gt(Abs(GetGVar(vinnare13)),Abs(GetGVar(vinnare14))),vinnare13,vinnare14)
      vinnare27=if(Gt(Abs(GetGVar(vinnare15)),Abs(GetGVar(vinnare15))),vinnare15,vinnare15)

      vinnare30=if(Gt(Abs(GetGVar(vinnare20)),Abs(GetGVar(vinnare21))),vinnare20,vinnare21)
      vinnare31=if(Gt(Abs(GetGVar(vinnare22)),Abs(GetGVar(vinnare23))),vinnare22,vinnare23)
      vinnare32=if(Gt(Abs(GetGVar(vinnare24)),Abs(GetGVar(vinnare25))),vinnare24,vinnare25)
      vinnare33=if(Gt(Abs(GetGVar(vinnare26)),Abs(GetGVar(vinnare27))),vinnare26,vinnare27)

      vinnare40=if(Gt(Abs(GetGVar(vinnare30)),Abs(GetGVar(vinnare31))),vinnare30,vinnare31)
      vinnare41=if(Gt(Abs(GetGVar(vinnare32)),Abs(GetGVar(vinnare33))),vinnare32,vinnare33)

      vinnare50=if(Gt(Abs(GetGVar(vinnare40)),Abs(GetGVar(vinnare41))),vinnare40,vinnare41)

      vinnare64=Add(Add(Add(GetGVar(vinnare30),GetGVar(vinnare31)),GetGVar(vinnare32)),GetGVar(vinnare33))
      aktier5=Sub(vinnare64,stormumma3)
      SetGVarIf(Div(Int(Mult(aktier5,10000)),100),3864,1)
      dragare01=if(Gt(ABS(GetGVar(3864)),ABS(GetGVar(3862))),GetGVar(3864),GetGVar(3862))
      { dragare02=if(And(Lt(abs(dragare01),0.45),Gt(Abs(dragare01),0.04)),dragare01,0)}

      dragare02=if(And(Lt(abs(dragare01),1.45),Gt(Abs(dragare01),0.00)),dragare01,0)
      dragare03=if(lt(Abs(GetGVar(3862)),0.8),Add(dragare02,GetGVar(3866)),0)
      SetGVarIf(dragare03,3865,1)

      vinnare65=Div(Add(Add(Add(GetGVar(Sub(vinnare30,100)),GetGVar(Sub(vinnare31,100))),GetGVar(Sub(vinnare32,100))),GetGVar(Sub(vinnare33,100))),GetGVar(7 000))
      vinnare67=if(Gt(vinnare65,0.5),0.5,vinnare65)
      vinnare63=if(Lt(vinnare67,-0.5),-0.5,vinnare67)
      vinnare66=if(Lt(abs(vinnare63),0.5),0,vinnare63)
      SetGVarIf(vinnare65,3866,1)


      påverkan=if(Gt(abs(stormumma3),0),Div(Int(Mult(abs(div(storsumma3,stormumma3)),100)),100),0)
      SetGVarIf(Div(Int(Mult(vinnare64,10000)),100),3831,1)
      SetGVarIf(Div(Int(Mult(stormumma3,10000)),100),3861,1)

      And(0,0)
      )


      {@A(1,TEL2 B )@B(1,TLSN )@C(1,VOLV B )}

      ------------------
      mvh
      Bertil


      Edit: Aktieurvalet gäller då jag simulerar för en tid tillbaka. Aktuella aktier i OMXS30 är lite annorlunda.
      Last edited by Bertil; 2018-11-08, 18:42.

      Comment


      • #4
        Tummen upp till dig Bertil önskar att jag besatt din kunskap i kodning!!!
        Förstår inte riktigt deklareringen av variabeln "aktien", tänker igenom och återkommer
        // Mvh Kristian

        Comment


        • #5
          Irriterande.....
          Hur skriver man Draw streckande linjer----------
          Draw(x,x,b??)

          Comment


          • #6
            Streckade linjer ligger som sista parameter 1 eller 2 (olika style på streck):

            draw(x,x,b1) eller draw(x,x,b2)

            Comment


            • #7
              Tack!!!
              Det var så smidigt alltså.

              Comment

              Working...
              X