Allmänt meddelande

Collapse
No announcement yet.

Pivot-script

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

  • #31
    Tja, det är ju samma som att kursen är över S1 och under R1 samtidigt.

    Två villkor med AND-sats:


    test1:=Gt(c,s1)
    test2:=Lt(c,r1)
    mellan:=And(test1,test2)

    Comment


    • #32
      Rikard,
      jag har lyckats rita ut pivot-linjen mha nedanstående, men det går inte att komplettera så att jag får ut R1,R2 och S1,S2, jag misstänker att det har med
      output=Add(0,p1), vad gör den raden, adderar 0 till p1, varför?

      Hur får jag utskrivning av alla 5 pivot-nivåerna?


      close:=Ref(c,1)
      high:=Ref(h,1)
      low:=Ref(l,1)
      tidnu:=Frac(DATE())
      totalt:=Mult(tidnu,1440)
      skriv:=And(Gt(totalt,541),Lt(totalt,545))
      p1:=Div(Add(Add(low,high),close),3)
      SetGVarIf(p1,21,skriv)
      output=Add(0,p1)
      Draw(GetGVar(21),2,cqb2)

      Comment


      • #33
        output är värdet som scriptet returnerar totalt sett, alltså P. Jag brukar använda uttryck så riskerar man inte att vissa funktioner inte fungerar. (vissa måste sitta i funktioner och jag kommer aldrig ihåg vilka)

        Om du vill rita ut de andra pivot-nivåerna är det ju bara att sno koden för att beräkna dessa och rita ut. Inget märkvärdigt. Du har ju koden längre upp i tråden.

        Comment


        • #34
          Ursprungligen postat av Rikard Nilsson Visa inlägg
          output är värdet som scriptet returnerar totalt sett, alltså P. Jag brukar använda uttryck så riskerar man inte att vissa funktioner inte fungerar. (vissa måste sitta i funktioner och jag kommer aldrig ihåg vilka)

          Om du vill rita ut de andra pivot-nivåerna är det ju bara att sno koden för att beräkna dessa och rita ut. Inget märkvärdigt. Du har ju koden längre upp i tråden.

          Jo, det var det jag gjorde, klippte och klistrade koden, men det fungerade ej, gör nytt försök:

          close:=Ref(c,1)
          high:=Ref(h,1)
          low:=Ref(l,1)
          tidnu:=Frac(DATE())
          totalt:=Mult(tidnu,1440)
          skriv:=And(Gt(totalt,541),Lt(totalt,545))
          {}
          p1:=Div(Add(Add(low,high),close),3)
          {}
          SetGVarIf(p1,21,skriv)
          {}
          SetGVarIf(Sub(Mult(p1,2),high),20,skriv)
          SetGVarIf(Sub(p1,Sub(high,low)),22,skriv)
          SetGVarIf(Sub(Mult(p1,2),low),23,skriv)
          SetGVarIf(Add(p1,Sub(high,low)),24,skriv)
          {}
          output=Add(0,p1)
          {}
          Draw(GetGVar(21),2,cqb2)
          {}
          Draw(GetGVar(20),2,gqb)
          Draw(GetGVar(22),3,yqb)
          Draw(GetGVar(23),4,rqb)
          Draw(GetGVar(24),5,bqb)

          21 är här pivot-linjen, ansluter man allt det här så får man bara pivot-linjen, ej R1,R2,S1,S2.
          Last edited by jorgeng; 2008-10-15, 10:20.

          Comment


          • #35
            Nu ja, men det beror nog på att variabeln "skriv" inte är aktiv och att värdena för r1,r2,s1,s2 inte skrivits ner i cellerna. Som det är konstruerat så blir "skriv" sant mellan kl 09:00 och kl 09:05 (ungefär) och under den tiden skrivs värdena ner. Därefter visas de bara.

            Problem skulle kunna uppstå om det aktuella instrumentet inte får några kurser under den tiden, men terminen är ju alltid igång så dags. Ev kan man hitta på nåt annat som styr hur "skriv" blir sant.

            Tillfälligt kan du ju ersätta den med logisk 1 så skrivs värdena ner i cellerna direkt. Ändra sedan till logisk noll så visas de som de ska.

            Comment


            • #36
              Ursprungligen postat av Rikard Nilsson Visa inlägg
              Nu ja, men det beror nog på att variabeln "skriv" inte är aktiv och att värdena för r1,r2,s1,s2 inte skrivits ner i cellerna. Som det är konstruerat så blir "skriv" sant mellan kl 09:00 och kl 09:05 (ungefär) och under den tiden skrivs värdena ner. Därefter visas de bara.

              Problem skulle kunna uppstå om det aktuella instrumentet inte får några kurser under den tiden, men terminen är ju alltid igång så dags. Ev kan man hitta på nåt annat som styr hur "skriv" blir sant.

              Tillfälligt kan du ju ersätta den med logisk 1 så skrivs värdena ner i cellerna direkt. Ändra sedan till logisk noll så visas de som de ska.
              Jag satte till 1, la in scriptet på omxs30-index, fungerar ej.

              Det som händer är att grön, röd, blå linje visas, ej de andra som är gul och turkos (cyan).

              Kan du testa scriptet också hos dig...

              Comment


              • #37
                screenshot:
                Attached Files

                Comment


                • #38
                  Funkar hur bra som helst! Har du anslutit till ett dagsdiagram verkligen?

                  Comment


                  • #39
                    Ursprungligen postat av Rikard Nilsson Visa inlägg
                    Funkar hur bra som helst! Har du anslutit till ett dagsdiagram verkligen?
                    Ja, som du ser på screenshot-bilden ovan....

                    Comment


                    • #40
                      Jo, fast jag menar i script-dialogen. Alltså om "Dagskurser" är bockat och inte "Intraday".

                      Jag klistrade in ovanstående, ändrade "545" på raden som börjar med skriv till 945 under 1 minut, ändrade tillbaka till 545 och då sitter alla fyra linjerna där. Ser att det borde vara 5 linjer, och det krockar med cell nr 2 på två rader. Jag ändrade de sista fyra Draw-satserna så att de får cell 3,4,5,6. Vips så ritas 5 linjer.

                      Comment


                      • #41
                        Ursprungligen postat av Rikard Nilsson Visa inlägg
                        Jo, fast jag menar i script-dialogen. Alltså om "Dagskurser" är bockat och inte "Intraday".

                        Jag klistrade in ovanstående, ändrade "545" på raden som börjar med skriv till 945 under 1 minut, ändrade tillbaka till 545 och då sitter alla fyra linjerna där. Ser att det borde vara 5 linjer, och det krockar med cell nr 2 på två rader. Jag ändrade de sista fyra Draw-satserna så att de får cell 3,4,5,6. Vips så ritas 5 linjer.

                        Ja, det fungerade, jag gjorde samma trixande som du ovan och då fungerade det. Lasse hade 7 linjer såg jag i scriptet. När jag jämför era beräkningar är det inte så lätt att få till R3 och S3 linjerna, kan du fixa dit dom har vi 2 varianter på pivot som går att använda, en som visar historiskt data och en för beräkningar.

                        Comment


                        • #42
                          close:=Ref(c,1)
                          high:=Ref(h,1)
                          low:=Ref(l,1)
                          tidnu:=Frac(DATE())
                          totalt:=Mult(tidnu,1440)
                          skriv:=And(Gt(totalt,541),Lt(totalt,545))
                          {}
                          p1:=Div(Add(Add(low,high),close),3)
                          {}
                          SetGVarIf(p1,21,skriv)
                          {}
                          SetGVarIf(Sub(Mult(p1,2),high),20,skriv)
                          SetGVarIf(Sub(p1,Sub(high,low)),22,skriv)
                          SetGVarIf(Sub(Mult(p1,2),low),23,skriv)
                          SetGVarIf(Add(p1,Sub(high,low)),24,skriv)
                          SetGVarIf(Sub(Low,Mult(2,Sub(high,p1))),25,skriv)
                          SetGvarIf(Sub(Mult(2,p1),low),26,skriv)
                          {}
                          output=Add(0,p1)
                          {}
                          Draw(GetGVar(21),2,cqb2)
                          {}
                          Draw(GetGVar(20),2,gqb)
                          Draw(GetGVar(22),3,yqb)
                          Draw(GetGVar(23),4,rqb)
                          Draw(GetGVar(24),5,bqb)
                          Draw(GetGVar(25),6,rqb)
                          Draw(GetGVar(26),7,bqb)



                          Så här nånting, kolla så att färgerna stämmer på de yttersta linjerna.

                          Comment


                          • #43
                            PIVOT Intraday o Historik

                            Rikard, har du ngn lösning på varför jag inte fick linjerna på rätt nivå i Intraday, Den här sista varianten funkar på både Intra o Histori?
                            Vore bra att få det fungera, känns som det går göra många korta affärer vid de olika nivåerna i det här börsklimatet.

                            Comment


                            • #44
                              Nja, inte varför det inte funkade på ASSA. Men jag tycker ändå Lasses variant är smartare eftersom den kan anslutas till hur många papper som helst utan att krocka med minnesceller. Den som skriver värden i celler funkar bara på dagsdiagram. Men inget hindrar iofs att man lägger ett litet script i intraday som bara ritar ut nivåerna, typ de sista Draw-satserna. Då får man linjerna i intraday också, men scriptet som beräknar tittar i dagsupplösning. Men även här funkar ju Lasses script bättre.

                              Den funkade väl?

                              Comment


                              • #45
                                Ursprungligen postat av Rikard Nilsson Visa inlägg
                                close:=Ref(c,1)
                                high:=Ref(h,1)
                                low:=Ref(l,1)
                                tidnu:=Frac(DATE())
                                totalt:=Mult(tidnu,1440)
                                skriv:=And(Gt(totalt,541),Lt(totalt,545))
                                {}
                                p1:=Div(Add(Add(low,high),close),3)
                                {}
                                SetGVarIf(p1,21,skriv)
                                {}
                                SetGVarIf(Sub(Mult(p1,2),high),20,skriv)
                                SetGVarIf(Sub(p1,Sub(high,low)),22,skriv)
                                SetGVarIf(Sub(Mult(p1,2),low),23,skriv)
                                SetGVarIf(Add(p1,Sub(high,low)),24,skriv)
                                SetGVarIf(Sub(Low,Mult(2,Sub(high,p1))),25,skriv)
                                SetGvarIf(Sub(Mult(2,p1),low),26,skriv)
                                {}
                                output=Add(0,p1)
                                {}
                                Draw(GetGVar(21),2,cqb2)
                                {}
                                Draw(GetGVar(20),2,gqb)
                                Draw(GetGVar(22),3,yqb)
                                Draw(GetGVar(23),4,rqb)
                                Draw(GetGVar(24),5,bqb)
                                Draw(GetGVar(25),6,rqb)
                                Draw(GetGVar(26),7,bqb)



                                Så här nånting, kolla så att färgerna stämmer på de yttersta linjerna.

                                Allt verkar fungera förutom R3 som inte ritas ut, kan du se varför.
                                R3 är ju den högsta översta linjen.

                                Comment

                                Working...
                                X