Allmänt meddelande

Collapse
No announcement yet.

Felaktig order

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

  • Felaktig order

    Hur kunde detta hända, scriptena har fungerat felfritt länge ?

    090709
    10:34 ORDER "sl) breakout Köp OMXS309G" kurs 786.0000
    10:34:54 Order skickad!
    10:34 ORDER "sl) breakout Sälj OMXS309G" kurs 786.2500
    10:34:58 Order skickad!

    sl) breakout Köp

    period1:=eqv(int(ref(d,1)),int(d))
    gräns:=And(hhv(Not(period1),2),period1)
    i60(
    hi=Find(gräns,20,Aref(h,1),1)
    lo=Find(gräns,20,Aref(l,1),1)
    signal1=And(Le(Aref(h,1),hi),Gt(h,hi))
    signal2=And(signal1,period1)
    Draw(hi,2,gqb)
    Draw(lo,3,rqb)
    Mult(signal2,20)
    )

    sl) breakout Sälj

    period1:=eqv(int(ref(d,1)),int(d))
    gräns:=And(hhv(Not(period1),2),period1)
    i60(
    hi=Find(gräns,20,Aref(h,1),1)
    lo=Find(gräns,20,Aref(l,1),1)
    signal1=And(Ge(Aref(l,1),lo),Lt(l,lo))
    signal2=And(signal1,period1)
    Mult(signal2,20)
    )

  • #2
    Det finns inget som hindrar att H blir högre än High och L lägre än Low i samma stapel, och då kan du få signal åt båda hållen samtidigt. Men, det går ju att lägga in tex att C ska vara högre än High dessutom, så får man en koll var nuvärdet på kursen är:


    sl) breakout Köp

    period1:=eqv(int(ref(d,1)),int(d))
    gräns:=And(hhv(Not(period1),2),period1)
    i60(
    hi=Find(gräns,20,Aref(h,1),1)
    lo=Find(gräns,20,Aref(l,1),1)
    signal1=And(Le(Aref(h,1),hi),Gt(h,hi))
    signal2=And(signal1,Gt(c,hi))
    signal3=And(signal2,period1)
    Draw(hi,2,gqb)
    Draw(lo,3,rqb)
    Mult(signal3,20)
    )



    sl) breakout Sälj

    period1:=eqv(int(ref(d,1)),int(d))
    gräns:=And(hhv(Not(period1),2),period1)
    i60(
    hi=Find(gräns,20,Aref(h,1),1)
    lo=Find(gräns,20,Aref(l,1),1)
    signal1=And(Ge(Aref(l,1),lo),Lt(l,lo))
    signal2=And(signal1,Lt(c,lo))
    signal3=And(signal2,period1)
    Mult(signal3,20)
    )


    Det extra villkoret ligger på en egen rad så det blir överskådligt.

    Comment


    • #3
      Då får jag inga signaler alls.
      Attached Files

      Comment


      • #4
        Hur skriver man så signal endast kan ske när kursen är högre än grön linje och lägre än röd linje, det var så jag trodde att det fungerade och har gjort ända till idag ?

        Comment


        • #5
          Hm, det är kanske enklare att bara ändra H och L till C på raderna som testar:

          sl) breakout Köp

          period1:=eqv(int(ref(d,1)),int(d))
          gräns:=And(hhv(Not(period1),2),period1)
          i60(
          hi=Find(gräns,20,Aref(h,1),1)
          lo=Find(gräns,20,Aref(l,1),1)
          signal1=And(Le(Aref(h,1),hi),Gt(c,hi))
          signal2=And(signal1,period1)
          Draw(hi,2,gqb)
          Draw(lo,3,rqb)
          Mult(signal2,20)
          )


          sl) breakout Sälj

          period1:=eqv(int(ref(d,1)),int(d))
          gräns:=And(hhv(Not(period1),2),period1)
          i60(
          hi=Find(gräns,20,Aref(h,1),1)
          lo=Find(gräns,20,Aref(l,1),1)
          signal1=And(Ge(Aref(l,1),lo),Lt(c,lo))
          signal2=And(signal1,period1)
          Mult(signal2,20)
          )


          Man kan inte se alla signalerna i diagrammet eftersom Close kan ha korsat breakout-nivån inne i perioden men sedan återgått. Om du simulerar med Animering påslaget så syns alla signaler.

          Comment


          • #6
            Dina olika förslag ger exakt samma värde vid backtest 30 dagar men är stabilare och ser ut att ge bättre avkastning än mina.
            Hela ordermodellen består av 4 script som fungerar både som köp/sälj och stopplos så jag får lägga in dina ändringar och köra skarpt för att se vad utfallet blir.
            Tack för hjälpen.

            Comment

            Working...
            X