Allmänt meddelande

Collapse
No announcement yet.

Spärra order strax mellan kl 13 och 14

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

  • Spärra order strax mellan kl 13 och 14

    Hej allihop!
    Här är en fråga som jag tror någon på forumet fixar ganska snabbt.
    Som alla vet är det ju känsligt att ta en position strax före kl 14 då am. statistik ofta släpps.
    Det borde ju vara en enkel sak att spärra orderläggningen mellan tex kl 13 och 14, och kanske även mellan kl 15 och kl 16 då ännu mer statistik ibland släpps.

    Hur kan ett sånt script se ut?

  • #2
    Tidshanteringen har formatet av ett flyttal.

    heltalsdelen är ett datum.

    decimaldelen tiden på dygnet.

    Värdet 0.5 är alltså 12.00 på dagen.

    kl 13.00 är då 13/24=0.54166666
    kl 14.00 är då 14/24=0.58333333

    xk) Spärra mellan 13-14.00

    kl13:=0.54166666
    kl14:=0.58333333
    tidnu:=frac(date())
    isbefore13:=lt(tidnu,kl13)
    isafter14:=gt(tidnu,kl14)
    or(isbefore13,isafter14)

    Detta är ett sätt. Men det går ej att backtesta så som 'tidnu' ser ut som plockar fram systemtiden via Date().
    tidnu:=d


    dvs konstanten 'd' som tar fram starttidpunkten på intradayperioden just nu. Beroende på vilken upplösning man kör i kan denna principen passa om perioder har naturlig brytpunkt vid de önskade tillfällena man önskar spärra bort.

    Denna princip med 'd' kan också användas i script för backtesting då ifall man bakar in spärren i triggerscriptet.

    kl13:=0.54166666
    kl14:=0.58333333
    tidnu:=d
    isbefore13:=lt(tidnu,kl13)
    isafter14:=gt(tidnu,kl14)
    1314spärr:=or(isbefore13,isafter14)

    för att använda i triggerscriptet.

    Comment


    • #3
      Tackar!
      Det är ju enklast att baka in det i det befintliga triggerscriptet.
      Lätt att räkna om tiderna oxå om man vill det!

      Comment


      • #4
        Hmm, jag får det inte att funka riktigt.
        Kör enligt den nedersta varianten, men det går inte att backtesta. Vet inte om det kommer att funka i verkligheten.

        Det var väl den som skulle gå att backtesta?

        Comment


        • #5
          tidnu:=frac(d)

          skall det vara.

          Annars kommer ju datumet med också.

          Comment


          • #6
            Där satt den!
            Funkar klockrent.
            Tiden ska ju vara 14:30 så att statistiken hinner släppas.
            Då blir värdet på efter14 0.604166666

            Comment

            Working...
            X