Allmänt meddelande

Collapse
No announcement yet.

Egen backtestning, signalgenerering och dubbla upplösningar

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

  • Egen backtestning, signalgenerering och dubbla upplösningar

    Hej!

    Jag håller på att göra ett eget backtestingscript på Terminatorn och lägger då Long / Short / TP Long / TP Short i samma script och håller reda på innehav och ackumulerad vinst med globala celler. Det funklar fint, men jag vet inte exakt hur signalgenereringen sker med upplösningar och close osv. Nedan följer lite kod med kommentarer efter ****:

    {Terminator long }
    { 120107 60 min }
    datum_ok:=eqv(int(d),int(date())) **** Byts ut mot alltid 1 i backtesting

    innehav_ok:=Le(Portfolio(v),0) **** Byts ut mot global cell i backtesting

    period2:=Gt(Frac(d),0.41) **** Varför är det inte date() här egentligen? Borde dock fungera som den är även i backtesting

    öppet=ge(mult(1440,sub(market(c),frac(date()))),20) **** date() byts mot d i backtesting

    stoppsetk=And(And(Lt(Aref(l,1),Aref(l,2)),Lt(Aref(h,1),Aref(h,2))),1)
    i60(

    stoplevelk1=Add(Find(stoppsetk,30,Aref(h,2),1),1)

    Draw(stoplevelk1,2,dgqb)

    signalk1=and(Gt(c,stoplevelk1),gt(c,aref(h,1))) **** Ges signalen bara på close i 60 mins upplösning? Blir det exakt samma i backtesning?

    köp1=And(And(signalk1,period2),öppet)
    köp2=And(And(köp1,innehav_ok),datum_ok) **** Dessa 2 ges också bara på close i 60 mins upplösning eller?

    Mult(köp2,5)
    )


    ****
    Om jag vill ha annan upplösning på signalerna än på nivålinjeritningen så antar jag att jag flyttar nedanstående

    ---
    signalk1=and(Gt(c,stoplevelk1),gt(c,aref(h,1)))
    köp1=And(And(signalk1,period2),öppet)
    köp2=And(And(köp1,innehav_ok),datum_ok)
    Mult(köp2,5)
    ---

    till säg i5(...)

    Men jag får inte dubbla upplösningar att fungera, men ska prova igen.

    Men huvudfrågan är om signalerna genereras på exakt samma tidpunkt om jag byter ut det som är kommenterat ovan. Framförallt gäller det väl date() till d. Alltså, genereras historiska signaler endast på hela staplar eller genereras de minut för minut?

    Om signalen inte genereras på hela staplar, är det då close som innehåller den aktuella triggerkursen?

    Tacksam om någon kan klargöra lite. Gärna om det generellt är problem med de dubbla upplösningarna.

    Mvh
    Last edited by NickoTrader; 2012-01-19, 13:23.

  • #2
    Har labbat lite och sökt och läst på så nu fattar jag lite mer:

    Dubbla upplösningar borde kunna lösas med CmpRef, men borde väl egentligen funka utan den varianten?

    Övriga frågor angående date() kvarstår.

    Mvh
    Last edited by NickoTrader; 2012-01-20, 14:31.

    Comment


    • #3
      Kan någon vänlig själ försöka reda ut om följande beter sig samma under handel som under backtestning, dvs 1 eller flera dagar bakåt i tiden:

      signalk1=and(Gt(c,stoplevelk1),gt(c,aref(h,1)))

      Raden är tagen från Terminatorn. Under pågående handel ges signalen så fort den kommer ovanför stoplevelk1, men om man tittar bakåt i diagrammet så upplever jag det som att signalen bara ges på Close i aktuell upplösning. Om det inte är pågående handel tittar då skripten alltid på 1-minutsupplösning för att komma så nära realtid som möjligt, och ger signal därefter?

      Hur ska jag göra för att de ska bete sig lika? Jag vill ha signal och lagra aktuell kurs då kursen är ovanför stoplevelk1, även då jag tittar bakåt.

      Ligger senaste kurs alltid i Close, även under pågående stapel, om man tittar bakåt?

      Mvh

      Comment


      • #4
        Backtestning görs i minutupplösning om du har Animering påslaget i Analysbänken.

        Det du ser i diagrammet i efterhand är signal vid de staplar som stänger ovanför break-nivån. Dvs, om kursen varit uppe och vänt men stapeln stängde under nivån syns ingen signal i efterhand. Men däremot i backtestning alltså, precis som i verkligheten.

        De övriga frågorna hinner jag tyvärr inte svara på just nu (förberedelser inför produktvisning i Oslo imorgon och scriptutbildning i Stockholm på torsdag).

        Comment

        Working...
        X