Allmänt meddelande

Collapse
No announcement yet.

Heikin Ashi smooth trend + trigger

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

  • #31
    Ursprungligen postat av e-Rik Visa inlägg
    Denna ser ju riktigt bra ut. Vilken kod kör du där? Har du gjort någon simulering med vinstrapport?

    Mvh

    Erik
    Hej jag har inte fått köp/sälj att fungera enligt markeringarna ännu. Jag har delat isär skripten ett för köp och ett för sälj för att se om det går bättre att hitta bromsen (eller turbon som är där nu) i sälj och köp.
    Last edited by Berra; 2016-01-17, 22:18. Anledning: turbo
    Berra

    Comment


    • #32
      Så här ser det ut än så länge; Varning kör inte skarpt med denna funkar inte än!!!
      ejstängning:=ge(mult(1440,sub(market(c),frac(date()))),30)
      { säkerställ att klockan är minst 09:15 }
      inpådagen:=Gt(Frac(date()),0.386)
      ejlång:=Le(Portfolio(v),0)
      ma30:=mov(c,20,e)
      trendupp:=gt(roc(ma30,3,%),0.00150)

      sp1:=50
      terC:=cmpref(c,0,A)
      terO:=cmpref(o,0,A)
      terH:=cmpref(h,0,A)
      terL:=cmpref(l,0,A)

      firstT:=aref(div(add(terO,terC),2),add(sp1,1):50)
      mc1T:=div(add(add(terC,terO),add(terL,terH)),4)
      firstI:=aref(div(add(o,c),2),add(sp1,1):50)
      mc1I:=div(add(add(c,o),add(l,h)),4)

      i15(
      {arr with power of 2 values,9,8,7...}
      retval(0,0)
      retval(0,1)
      retval(0,2)
      retval(0,3)
      ack=cum(1,sp1)
      mweight=power(2,sub(sp1,ack))

      mcweightT=mult(mweight,aref(mc1T,ack:sp1))
      mscweightT=retval(add(getval(0),mcweightT),0)
      dscweightT=retval(add(getval(1),mweight),1)
      loop(ack,sp1)
      dcweightT=add(getval(1),1)

      tots1T=add(getval(0),const(firstT))
      haOpenT=div(tots1T,mult(1,dcweightT))
      mcloseT=div(add(add(terC,terO),add(terL,terH)),4)

      köp1=And(And(ejlång,inpådagen),trendupp)
      köp2=and(and(mcloseT,haOpenT),köp1)
      draw(mult(köp2,12),3,gsbF)
      and(and(köp2,20),ejstängning)
      )
      {@A(30,OMX Stock )}

      ejstängning:=ge(mult(1440,sub(market(c),frac(date()))),30)
      { säkerställ att klockan är minst 09:15 }
      inpådagen:=Gt(Frac(date()),0.386)
      ejkort:=Ge(Portfolio(v),0)
      ma30:=mov(c,20,e)
      trendned:=lt(roc(ma30,3,%),0.00200)

      sp1:=50
      terC:=cmpref(c,0,A)
      terO:=cmpref(o,0,A)
      terH:=cmpref(h,0,A)
      terL:=cmpref(l,0,A)

      firstT:=aref(div(add(terO,terC),2),add(sp1,1):50)
      mc1T:=div(add(add(terC,terO),add(terL,terH)),4)
      firstI:=aref(div(add(o,c),2),add(sp1,1):50)
      mc1I:=div(add(add(c,o),add(l,h)),4)

      i15(
      {arr with power of 2 values,9,8,7...}
      retval(0,0)
      retval(0,1)
      retval(0,2)
      retval(0,3)
      ack=cum(1,sp1)
      mweight=power(2,sub(sp1,ack))

      mcweightI=mult(mweight,aref(mc1I,ack:sp1))
      mscweightI=retval(add(getval(2),mcweightI),2)
      dscweightI=retval(add(getval(3),mweight),3)
      loop(ack,sp1)
      dcweightI=add(getval(3),1)

      tots1I=add(getval(2),const(firstI))
      haOpenI=div(tots1I,mult(1,dcweightI))
      mcloseI=div(add(add(c,o),add(l,h)),4)

      blank1=And(And(ejkort,inpådagen),trendned)
      blank2=and(and(mcloseI,haOpenI),blank1)
      draw(mult(blank2,12),4,rsbF)
      and(and(blank2,20),ejstängning)
      )
      {@A(30,OMX Stock )}
      Last edited by Berra; 2016-01-18, 08:35. Anledning: Varning
      Berra

      Comment


      • #33
        Du kan slå på vinstkurvan i Analysern efter att du laddat resultatet från simulering. Öppna diagram med "diagramknappen" och slå därefter på vinstkurvan med "myntet".

        Comment


        • #34
          Ursprungligen postat av Rikard Nilsson Visa inlägg
          Du kan slå på vinstkurvan i Analysern efter att du laddat resultatet från simulering. Öppna diagram med "diagramknappen" och slå därefter på vinstkurvan med "myntet".

          Gröna och röda pinnar visar var scriptet ska in men det går in på andra ställen också och alldeles för ofta och som vanligt på topp upp då det ska ner. av någon anledning går det bra på indexet kan det bero på att det inte är köpkursen det går på?

          omxs306A
          Avkastning -215.25 kr -0.05% på 316 affärer under 111:17:05 tim
          Av dessa blankat 159 st med avkastning -90.00 kr -0.04%
          Innehav 24 st med vinst 87.50 kr 0.26%
          Innehav 133 st med förlust -212.75 kr -0.11% katastrof
          Blankning 34 st med vinst 111.00 kr 0.23%
          Blankning 125 st med förlust -201.00 kr -0.12%Katastrof

          ett år på omxs30
          Avkastning 1575.73 kr 0.03% på 3424 affärer under 1983:42:00 tim
          Av dessa blankat 1709 st med avkastning 789.44 kr 0.03%
          Innehav 676 st med vinst 1946.72 kr 0.18%
          Innehav 1039 st med förlust -1160.43 kr -0.07%
          Blankning 655 st med vinst 1953.58 kr 0.19%
          Blankning 1054 st med förlust -1164.14 kr -0.07%
          Attached Files
          Berra

          Comment


          • #35
            Exempel på en dag:
            2015-12-18 09:15:55 Sälj -1,00 1*431,50 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
            2015-12-18 10:42:25 Köp 2,00 1*430,75 0,75 0,05% 0,75 0,05% 01:26:30 1,00 Innehav 0,75 Berra Heikin-Ashi Long 0.000000
            2015-12-18 10:43:45 Sälj -2,00 1*429,75 -1,00 -0,07% -1,00 -0,07% 00:01:20 -1,00 Blankad -0,25 Berra Heikin-Ashi Short 0.000000
            2015-12-18 10:45:00 Köp 2,00 1*430,25 -0,50 -0,03% -0,50 -0,03% 00:01:15 1,00 Innehav -0,75 Berra Heikin-Ashi Long 0.000000
            2015-12-18 10:52:40 Sälj -2,00 1*427,25 -3,00 -0,21% -3,00 -0,21% 00:07:40 -1,00 Blankad -3,75 Berra Heikin-Ashi Short 0.000000
            2015-12-18 10:53:40 Köp 2,00 1*428,25 -1,00 -0,07% -1,00 -0,07% 00:01:00 1,00 Innehav -4,75 Berra Heikin-Ashi Long 0.000000
            2015-12-18 10:55:00 Sälj -2,00 1*427,75 -0,50 -0,04% -0,50 -0,04% 00:01:20 -1,00 Blankad -5,25 Berra Heikin-Ashi Short 0.000000
            2015-12-18 10:58:55 Köp 2,00 1*429,75 -2,00 -0,14% -2,00 -0,14% 00:03:55 1,00 Innehav -7,25 Berra Heikin-Ashi Long 0.000000
            2015-12-18 10:59:55 Sälj -2,00 1*429,25 -0,50 -0,03% -0,50 -0,03% 00:01:00 -1,00 Blankad -7,75 Berra Heikin-Ashi Short 0.000000
            2015-12-18 11:50:00 Köp 2,00 1*427,25 2,00 0,14% 2,00 0,14% 00:50:05 1,00 Innehav -5,75 Berra Heikin-Ashi Long 0.000000
            2015-12-18 12:07:35 Sälj -2,00 1*425,50 -1,75 -0,12% -1,75 -0,12% 00:17:35 -1,00 Blankad -7,50 Berra Heikin-Ashi Short 0.000000
            2015-12-18 14:22:25 Köp 2,00 1*421,75 3,75 0,26% 3,75 0,26% 02:14:50 1,00 Innehav -3,75 Berra Heikin-Ashi Long 0.000000
            2015-12-18 15:59:05 Sälj -2,00 1*421,25 -0,50 -0,04% -0,50 -0,04% 01:36:40 -1,00 Blankad -4,25 Berra Heikin-Ashi Short 0.000000
            2015-12-18 16:55:00 Köp 2,00 1*421,00 0,25 0,02% 0,25 0,02% 00:55:55 1,00 Innehav -4,00 Berra Heikin-Ashi Long 0.000000
            2015-12-18 16:56:15 Sälj -2,00 1*418,75 -2,25 -0,16% -2,25 -0,16% 00:01:15 -1,00 Blankad -6,25 Berra Heikin-Ashi Short 0.000000
            2015-12-18 16:57:15 Köp 2,00 1*420,25 -1,50 -0,11% -1,50 -0,11% 00:01:00 1,00 Innehav -7,75 Berra Heikin-Ashi Long 0.000000
            2015-12-18 16:59:00 Sälj -1,00 1*422,00 1,75 0,12% 1,75 0,12% 00:01:45 0,00 -6,00 Berra Stäng köp innan börsstängning 0.000000
            Berra

            Comment


            • #36
              Det ser "oroväckande" bra ut för index. Kör du Senast betalt som prisscript där? Det man kan göra för att simulera spread eller lite slippage är att skapa två nya prisscript, ett för köpaffärer och ett för säljaffärer. Då kan man dra av lite från priset, tex:

              va) OMXS30 köp på senast betalt +0,25

              i1(add(c,0.25))


              va) OMXS30 sälj på senast betalt -0,25

              i1(sub(c,0.25))


              Då får man totalt en halv punkt "kostnad" per affär. Borde stämma bättre med verkligheten.

              Comment


              • #37
                Ursprungligen postat av Rikard Nilsson Visa inlägg
                Det ser "oroväckande" bra ut för index. Kör du Senast betalt som prisscript där? Det man kan göra för att simulera spread eller lite slippage är att skapa två nya prisscript, ett för köpaffärer och ett för säljaffärer. Då kan man dra av lite från priset, tex:

                va) OMXS30 köp på senast betalt +0,25

                i1(add(c,0.25))


                va) OMXS30 sälj på senast betalt -0,25

                i1(sub(c,0.25))


                Då får man totalt en halv punkt "kostnad" per affär. Borde stämma bättre med verkligheten.

                Ja det är de scripten jag har i modellen. Jag har kört scripten omvänt här i10 då ger det plus men det är ju något fel med det, men ändå. har även använt
                dessa i scripten men det blir inte riktigt rätt det heller. men i omvänt så växlar det inte mellan köp och sälj under dagen så det är ju galet???
                Med omvänt menar jag säljscriptet i köp osv.
                högsta=gt(c,aref(hhv(h,10),1))
                lägsta=lt(c,aref(llv(l,5),1))
                Attached Files
                Berra

                Comment


                • #38
                  Här kör jag säljscriptet i köp och vs om det nu är så att det är grön som är köp?
                  hä är det i 3 min med "högsta=gt(c,aref(hhv(h,10),1)) denna i röd"
                  "lägsta=lt(c,aref(llv(l,5),1)) denna i grön"

                  Avkastning 98.75 kr 0.47% på 15 affärer under 106:47:15 tim
                  Av dessa blankat 10 st med avkastning 76.00 kr 0.54%
                  Innehav 4 st med vinst 33.00 kr 0.61%
                  Innehav 1 st med förlust -10.25 kr -0.72%
                  Blankning 8 st med vinst 91.00 kr 0.81%
                  Blankning 2 st med förlust -15.00 kr -0.52%
                  Attached Files
                  Berra

                  Comment


                  • #39
                    Så här ser det ut:
                    Tidpunkt Typ Antal Pris Diff %Diff Res %Res I marknaden Innehav Info Ack.Resultat Kommentar #1
                    2015-12-18 09:15:55 Köp 1,00 1*432,25 1,00 Innehav Berra Heikin-Ashi Long 0.000000
                    2015-12-18 16:59:00 Sälj -1,00 1*422,00 -10,25 -0,72% -10,25 -0,72% 07:43:05 0,00 -10,25 Berra Stäng köp innan börsstängning 0.000000
                    2015-12-21 10:22:40 Sälj -1,00 1*441,25 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2015-12-21 16:59:00 Köp 1,00 1*424,50 16,75 1,16% 16,75 1,16% 06:36:20 0,00 6,50 Berra Stäng blankning innan börsstängning 0.000000
                    2015-12-22 09:16:00 Sälj -1,00 1*423,25 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2015-12-22 16:59:00 Köp 1,00 1*414,25 9,00 0,63% 9,00 0,63% 07:43:00 0,00 15,50 Berra Stäng blankning innan börsstängning 0.000000
                    2015-12-23 09:37:30 Sälj -1,00 1*432,50 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2015-12-23 16:59:00 Köp 1,00 1*443,00 -10,50 -0,73% -10,50 -0,73% 07:21:30 0,00 5,00 Berra Stäng blankning innan börsstängning 0.000000
                    2015-12-28 09:19:45 Sälj -1,00 1*447,75 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2015-12-28 16:59:00 Köp 1,00 1*434,00 13,75 0,95% 13,75 0,95% 07:39:15 0,00 18,75 Berra Stäng blankning innan börsstängning 0.000000
                    2015-12-29 09:15:50 Sälj -1,00 1*442,50 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2015-12-29 16:59:00 Köp 1,00 1*447,00 -4,50 -0,31% -4,50 -0,31% 07:43:10 0,00 14,25 Berra Stäng blankning innan börsstängning 0.000000
                    2015-12-30 09:15:55 Sälj -1,00 1*451,25 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2015-12-30 16:59:00 Köp 1,00 1*448,25 3,00 0,21% 3,00 0,21% 07:43:05 0,00 17,25 Berra Stäng blankning innan börsstängning 0.000000
                    2016-01-04 09:32:45 Köp 1,00 1*400,00 1,00 Innehav Berra Heikin-Ashi Long 0.000000
                    2016-01-04 16:59:00 Sälj -1,00 1*400,00 0,00 0,00% 0,00 0,00% 07:26:15 0,00 17,25 Berra Stäng köp innan börsstängning 0.000000
                    2016-01-05 09:16:55 Sälj -1,00 1*402,25 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2016-01-05 12:29:00 Köp 1,00 1*386,75 15,50 1,11% 15,50 1,11% 03:12:05 0,00 32,75 Berra Stäng blankning innan börsstängning 0.000000
                    2016-01-07 09:38:45 Köp 1,00 1*340,75 1,00 Innehav Berra Heikin-Ashi Long 0.000000
                    2016-01-07 16:59:00 Sälj -1,00 1*365,75 25,00 1,86% 25,00 1,86% 07:20:15 0,00 57,75 Berra Stäng köp innan börsstängning 0.000000
                    2016-01-08 10:10:20 Sälj -1,00 1*374,00 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2016-01-08 16:59:00 Köp 1,00 1*353,75 20,25 1,47% 20,25 1,47% 06:48:40 0,00 78,00 Berra Stäng blankning innan börsstängning 0.000000
                    2016-01-11 10:01:10 Sälj -1,00 1*357,00 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2016-01-11 16:59:00 Köp 1,00 1*351,00 6,00 0,44% 6,00 0,44% 06:57:50 0,00 84,00 Berra Stäng blankning innan börsstängning 0.000000
                    2016-01-12 09:20:05 Köp 1,00 1*350,00 1,00 Innehav Berra Heikin-Ashi Long 0.000000
                    2016-01-12 16:59:00 Sälj -1,00 1*356,25 6,25 0,46% 6,25 0,46% 07:38:55 0,00 90,25 Berra Stäng köp innan börsstängning 0.000000
                    2016-01-13 09:24:21 Sälj -1,00 1*368,00 -1,00 Blankad Berra Heikin-Ashi Short 0.000000
                    2016-01-13 16:59:01 Köp 1,00 1*361,25 6,75 0,49% 6,75 0,49% 07:34:40 0,00 97,00 Berra Stäng blankning innan börsstängning 0.000000
                    2016-01-14 09:39:51 Köp 1,00 1*341,00 1,00 Innehav Berra Heikin-Ashi Long 0.000000
                    2016-01-14 16:59:01 Sälj -1,00 1*342,75 1,75 0,13% 1,75 0,13% 07:19:10 0,00 98,75 Berra Stäng köp innan börsstängning 0.000000
                    Berra

                    Comment


                    • #40
                      Här rättvända scrip på termin05L i3

                      Avkastning -69.50 kr -0.02% på 212 affärer under 150:32:11 tim
                      Av dessa blankat 106 st med avkastning -10.25 kr -0.01%
                      Innehav 34 st med vinst 114.00 kr 0.23%
                      Innehav 72 st med förlust -173.25 kr -0.16%
                      Blankning 33 st med vinst 164.75 kr 0.34%
                      Blankning 73 st med förlust -175.00 kr -0.16%

                      omvänd blev -111.00
                      Attached Files
                      Berra

                      Comment


                      • #41
                        Jag behöver hjälp att hitta något som tar scripten vidare för att inte snubbla på mållinjen. Tar tacksamt emot tips här, och uppdaterar
                        Berra

                        Comment


                        • #42
                          Ursprungligen postat av Berra Visa inlägg
                          Jag behöver hjälp att hitta något som tar scripten vidare för att inte snubbla på mållinjen. Tar tacksamt emot tips här, och uppdaterar
                          Scripten är för triggerhappy. Testa att kombinera med följande script som måste vara uppfyllda samtidigt:
                          { Bertils BolS7 köp vänd }
                          innehav:=Portfolio(v)
                          ok_att_handla:=Lt(innehav,0)
                          tidspärr1:=15
                          tidspärr2:=15
                          lt1:=LastTrade(S,D)
                          lt2:=LastTrade(B,D)
                          minSedanSälj:=Mult(Sub(Date(),lt1),1440)
                          minSedanKöp:=Mult(Sub(Date(),lt2),1440)
                          delay_ok:=gt(minSedanSälj,tidspärr1)
                          trans_ok:=gt(minSedanKöp,tidspärr2)

                          i1(
                          tid1=gt(int(mult(frac(d),1440)),540)
                          { före kl 17.10 }
                          tid2=lt(int(mult(frac(d),1440)),1030)

                          hög=HHV(H,6)
                          låg=LLV(L,6)
                          sling01=linreg(sqrt(mult(h,låg)),10)
                          sling02=linreg(sqrt(mult(l,hög)),10)
                          sling03=linreg(Div(Add(sling01,sling02),2),4)
                          sling04=mov(c,8,s)
                          sling05=mov(c,2)
                          villkor01=Gt(Sub(sling04,aref(sling04,1)),0.06)
                          villkor02=Gt(Sub(sling03,aref(sling03,1)),0.06)
                          villkor03=Gt(Sub(sling05,aref(sling05,1)),0.3)

                          Köpa=And(And(villkor01,villkor02),villkor03)
                          Draw(sling03,1,kqb0)
                          Draw(sling04,2,rqb0)
                          Draw(sling05,3,dgqb0)
                          ditt_köpscript=And(And(And(And(köpa,tid1),tid2),delay_ok),trans_ok)
                          köpsignal=And(ditt_köpscript,ok_att_handla)
                          Mult(köpsignal,10)
                          )
                          .........................
                          { Bertils BolS7 sälj vänd }
                          innehav:=Portfolio(v)
                          ok_att_handla:=Gt(innehav,0)
                          tidspärr1:=15
                          tidspärr2:=15
                          lt1:=LastTrade(S,D)
                          lt2:=LastTrade(B,D)
                          minSedanSälj:=Mult(Sub(Date(),lt1),1440)
                          minSedanKöp:=Mult(Sub(Date(),lt2),1440)
                          delay_ok:=gt(minSedanSälj,tidspärr1)
                          trans_ok:=gt(minSedanKöp,tidspärr2)
                          i1(
                          tid1=gt(int(mult(frac(d),1440)),600)
                          { före kl 17.10 }
                          tid2=lt(int(mult(frac(d),1440)),1030)
                          hög=HHV(H,6)
                          låg=LLV(L,6)
                          sling01=linreg(sqrt(mult(h,låg)),10)
                          sling02=linreg(sqrt(mult(l,hög)),10)
                          sling03=linreg(Div(Add(sling01,sling02),2),4)
                          sling04=mov(c,8,s)
                          sling05=mov(c,2)
                          villkor01=Lt(Sub(sling04,aref(sling04,1)),-0.06)
                          villkor02=Lt(Sub(sling03,aref(sling03,1)),-0.06)
                          villkor03=Lt(Sub(sling05,aref(sling05,1)),-0.3)

                          Sälja=And(And(villkor01,villkor02),villkor03)
                          Draw(sling03,1,kqb0)
                          Draw(sling04,2,rqb0)
                          Draw(sling05,3,dgqb0)

                          ditt_säljscript=And(And(And(And(sälja,tid1),tid2),delay_ok),trans_ok)
                          säljsignal=And(And(ditt_säljscript,sälja),ok_att_handla)
                          Mult(säljsignal,10)
                          )
                          .........................
                          Jag har rensat lite i scripten, hoppas att de är ok. Går kanske att köra på i3.
                          Med vänlig hälsning
                          Bertil
                          Last edited by Bertil; 2016-01-18, 22:03.

                          Comment


                          • #43
                            Berra, du har ändrat i scripten så att köp2 och blank2 alltid är sant om köp1 och blank1 är sant. Dvs köp1 och blank1 är nu triggervillkor. Ta ett steg tillbaka och lägg sedan på eventuella filter för trend och minskning av signalbrus. Jag ser två sätt du kan använda HA. Det första är att använda HA som signalvillkor, med eller utan stöd av andra villkor. Det andra är att bara använda HA som trendindikator som stöd till oberoende signalvillkor. Tex stanna i position så länge med i HA-trenden.

                            Comment


                            • #44
                              Ursprungligen postat av Henric Visa inlägg
                              Berra, du har ändrat i scripten så att köp2 och blank2 alltid är sant om köp1 och blank1 är sant. Dvs köp1 och blank1 är nu triggervillkor. Ta ett steg tillbaka och lägg sedan på eventuella filter för trend och minskning av signalbrus. Jag ser två sätt du kan använda HA. Det första är att använda HA som signalvillkor, med eller utan stöd av andra villkor. Det andra är att bara använda HA som trendindikator som stöd till oberoende signalvillkor. Tex stanna i position så länge med i HA-trenden.
                              Jag förstår inte detta, men "Det andra är att bara använda HA som trendindikator som stöd till oberoende signalvillkor. Tex stanna i position så länge med i HA-trenden." det är så jag vill att det ska fungera. Blev det fel när jag delade isär scriptet? Eller är det i villkorandet för handel i slutet? jag har försökt hela dagen men jag får inte det att stanna vid köpt position vid grön utan sälj går in och förstör (eller tvärt om).
                              Berra

                              Comment


                              • #45
                                ?? blank2=and(and(mcloseI,haOpenI),blank1)
                                blank2=and(lt(mcloseI,haOpenI),blank1)
                                Samma för lång.

                                Jo, trenden fungerar delvis som du skriver. Skillnaden skulle tex vara att ta position oberoende av HA och om vinst låta positionen ligga kvar så länge HA ligger rätt. Du skulle även kunna köra Berra-trigger i kombination med HA. Bara lite uppslag.

                                Som det är nu påverkar inte HA. Börja med av få ordning på scriptet(i alla fall det som finns i inlägg 32) och starta om från scratch utan trendfilter etc för att se resultatet. Bygg på med dina ideer.

                                Comment

                                Working...
                                X