Allmänt meddelande

Collapse
No announcement yet.

Inget larm vid korsning av linjer i diagram

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

  • Inget larm vid korsning av linjer i diagram

    Hej,

    Har ett litet problem.

    Får inget larm när mlinjen korsas.

    Mlinjen och flaggor ritas ut i diagrammet, men det verkar som scriptet aldrig blir sant när linjen korsas.

    När klinje samt slinje korsas får jag larm.

    Måste man skriva till en variabel för att scriptet skall känna av mlinjen?

    Hur scriptar man då?



    {Högstalinje 30 min}
    kperiod9:=hhv(aref(h,0),30) {30}
    ktime1:=mult(frac(d),1440)
    ktime2:=le(ktime1,570) {570}
    klinje:=Retval(if(ktime2,kperiod9,Getval(1)),1)

    {Lägstalinje 30 min}
    speriod9:=llv(aref(l,0),30) {30}
    stime1:=mult(frac(d),1440)
    stime2:=le(stime1,570) {570}
    slinje:=Retval(if(stime2,speriod9,Getval(2)),2)

    {Mittlinje 30 min}
    range:=sub(klinje,slinje)
    mlinje:=sub(klinje,div(range,2.00))


  • #2
    Har du någon klurig lösning på mitt problem Rikard?

    Comment


    • #3
      Nu heter ju jag inte Rikard, men lägg till "mlinje" eller mult(mlinje, 10) i slutet av scriptet.

      Comment


      • #4
        God kväll LillWicke!

        Ovan är bara en liten del av mitt triggscript.

        Får inget larm i larmfönstret men flaggor blir det i diagrammet och linjen ritas ut.

        Om jag skriver så här funkar det, "mlinje:=1106".

        Kan problemet vara något med konstanter/variabler?

        Comment


        • #5
          Ursprungligen postat av Wheelie Visa inlägg
          God kväll LillWicke!

          Ovan är bara en liten del av mitt triggscript.
          Får inget larm i larmfönstret men flaggor blir det i diagrammet och linjen ritas ut.
          Om jag skriver så här funkar det, "mlinje:=1106".
          Kan problemet vara något med konstanter/variabler?
          Att raderna bara är en liten del av scriptet förklarar ju en del. Jag tyckte det såg lite skumt ut med intraday-kommenterer, men ingen intraday-parentes, men jag vågade inte säga något.

          Det är lite svårt att svara på din fråga när man inte vet hur scriptet ser ut på slutet.

          Comment


          • #6
            Har du ritat ut linjen med Draw() så att du vet att den befinner sig där du tror?

            Comment


            • #7
              Här kommer slutet

              i1(


              signal1=and(cross(l,mlinje),lt(ma1,aref(ma1,1)))
              signal2=hhv(signal1,5)
              signal3=aref(signal2,1)
              signal4=and(and(starttid,stopptid),signal3)

              draw(mult(signal4,15),9,rsbf)

              mult(and(signal4,1),5)
              )

              Comment


              • #8
                Ja, linjen ritas ut utan problem.

                Comment


                • #9
                  Jag vet inte om jag förstår det här riktigt. Har du blandat intraday 30min med intraday 1min i samma script?

                  Comment


                  • #10
                    Nej, varför tror du det?

                    Scriptet körs med intraday i1 enligt nedan.

                    {Högstalinje}
                    kperiod9:=hhv(aref(h,0),30)
                    ktime1:=mult(frac(d),1440)
                    ktime2:=le(ktime1,570)
                    klinje:=Retval(if(ktime2,kperiod9,Getval(1)),1)

                    {Lägstalinje}
                    speriod9:=llv(aref(l,0),30)
                    stime1:=mult(frac(d),1440)
                    stime2:=le(stime1,570)
                    slinje:=Retval(if(stime2,speriod9,Getval(2)),2)

                    {Mittlinje}
                    range:=sub(klinje,slinje)
                    mlinje:=sub(klinje,div(range,2.00))

                    {Ma1}
                    ma1:=mov(c,5,e)


                    {Rita linjer}
                    draw(ma1,3,bqb)
                    draw(slinje,4,rqb)
                    draw(klinje,5,dgqb)
                    draw(mlinje,6,mqb)


                    i1(

                    signal1=and(cross(l,mlinje),lt(ma1,aref(ma1,1)))
                    signal2=hhv(signal1,5)
                    signal3=aref(signal2,1)

                    draw(mult(signal3,15),9,rsbf)

                    mult(and(signal3,1),5)
                    )

                    Comment


                    • #11
                      Tror bara det var Draw()-satserna ovanför intradayprefixet. Flyttade ner inom prefix och fick larm direkt.




                      {Högstalinje}
                      kperiod9:=hhv(aref(h,0),30)
                      ktime1:=mult(frac(d),1440)
                      ktime2:=le(ktime1,1570)
                      klinje:=Retval(if(ktime2,kperiod9,Getval(1)),1)

                      {Lägstalinje}
                      speriod9:=llv(aref(l,0),30)
                      stime1:=mult(frac(d),1440)
                      stime2:=le(stime1,1570)
                      slinje:=Retval(if(stime2,speriod9,Getval(2)),2)

                      {Mittlinje}
                      range:=sub(klinje,slinje)
                      mlinje:=sub(klinje,div(range,2.00))

                      {Ma1}
                      ma1:=mov(c,5,e)

                      i1(


                      signal1=and(cross(l,mlinje),lt(ma1,aref(ma1,1)))
                      signal2=hhv(signal1,5)
                      signal3=aref(signal2,1)

                      {Rita linjer}
                      draw(ma1,3,bqb)
                      draw(slinje,4,rqb)
                      draw(klinje,5,dgqb)
                      draw(mlinje,6,mqb)
                      draw(mult(signal3,15),9,rsbf)

                      mult(and(signal3,1),5)
                      )
                      Attached Files

                      Comment


                      • #12
                        Kan det vara så enkelt!

                        Tackar för Er tid!

                        Provar i morgon och återkommer med resultatet.

                        Comment


                        • #13
                          Ja, där ser man hur viktigt det är att lägga ut alla rader.

                          Sedan behöver du inte krångla till en del rader så mycket, som exempelvis den här: mult(and(signal3,1),5)

                          Det räcker om du skriver:
                          mult(signal3,5)

                          Comment


                          • #14
                            Hej Rikard,

                            Har nu testat och här är resultatet:

                            1. Funkar med rörlig linje enligt ditt test "ktime2:=le(ktime1,1570)".

                            2. Funkar inte med fast linje enligt mitt script "ktime2:=le(ktime1,570)".

                            Så lösningen var inte ändringen av draw-placeringen tyvärr.

                            Comment


                            • #15
                              Hm, ser inte riktigt skillnaden?

                              Comment

                              Working...
                              X