Allmänt meddelande

Collapse
No announcement yet.

Legato OMX omarbetad och gratis

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

  • Hej,

    Vart hittar jag installations-instruktionen till Legato?

    Letade men hittade inte.
    http://www.autostock.se/nyheter/lega...at-bas-och-pro

    edit: (jag fick simulering att funka)

    Last edited by jimmy; 2015-11-02, 21:09.

    Comment


    • Det ligger lite info i manualen,

      http://www.autostock.se/NATmanual/

      Klicka på Standardanalysmetoder, Legato

      Comment


      • Ursprungligen postat av Rikard Nilsson Visa inlägg
        Såg att det är versionen utan vinstkrav som ligger ute.

        Så Legato som ligger ute för nedladdning i NAT är inte den modell som beskrivs i inlägg 95, är det rätt uppfattat?

        Comment


        • Jag undrar samma sak som du Christer. Versioner utan eller med vinstkrav, är inte det bara Raptorn det diskuterats i?

          Sen så ser jag att det i manualen för Legato inte ska anslutas nån exit short på köpsidan, en sån finns ju i inlägg #95?

          Comment


          • Blev felpostat om vinstkravet, det inlägget är flyttat till Raptortråden.

            Det är numera fyra ordermodeller för Legato så vi får uppdatera instruktionen.

            Comment


            • Ursprungligen postat av Christer Visa inlägg
              Hej, jag har nu jämfört min 5s-körning med Rikards resultatfil i inlägg 95. Även här får jag tyvärr några avvikelser. Jag är dock osäker på om Rikard kört i 5s-upplösning (framgår inte av inlägget). Jag bifogar min Excel-fil där diskrepanserna är markerade.

              Rikard, skulle du kunna köra en uppdaterad simuering, med de senaste och mest uppdaterade ordermodellerna (som ligger för nedladdning i NAT just nu?) och bilägga resultatfil med information om upplösning (kanske 1min-upplösning pga lång simuleringsperiod). Sedan kommer jag försöka kunna replikera denna körning på min dator, och sedan jämföra utfallet under t.ex. de senaste 3 åren i 5s-upplösning. Det vore skönt att fastställa en gemensam utgångspunkt, och sedan ta detta till live-handel.
              Efter Emils påpekande i inlägg 154 om att det borde vara fyra index-ordermodeller som ska anslutas så har ovanstående diskrepans helt enkelt förklarats. Jag följde instruktionen tidigare och anslöt endast tre ordermodeller och fick därför en avvikelse mot Henrics körningar. Henric hade anslutit "Legato OMX index Exit Shrt" vilket syns helt tydligt i min jämföreselfilen i inlägg 144, bara jag hade tittat ordentligt).
              Attached Files
              Last edited by Christer; 2015-11-03, 22:28.

              Comment


              • Ursprungligen postat av Rikard Nilsson Visa inlägg
                Blev felpostat om vinstkravet, det inlägget är flyttat till Raptortråden.

                Det är numera fyra ordermodeller för Legato så vi får uppdatera instruktionen.

                Hej! Det vore även bra att uppdatera instruktionen i det första inlägget i den här forumtråden. Där står det "Anslut de tre ordermodellerna ovan direkt till OMXS30 på simulerakontot".

                Comment


                • Hej,

                  kör simulering på Legato på 2 olika datorer och får ganska stor skillnad i resultat.
                  All kursdata är nedladdat lika, version 150929 på scripten.

                  Senaste månaden:

                  Dator 1:
                  2015-10-26 17:19 Köp 1503,63 Innehav
                  2015-11-03 09:30 Sälj 1498,80 -4,83 pkt
                  2015-11-05 17:21 Sälj 1524,24 Blankad
                  2015-11-23 17:19 Köp 1517,05 +7,19 pkt
                  2015-11-23 17:20 Köp 1516,62 Innehav
                  omx just nu 1508 -8,6 pkt
                  resultat -6,24 pkt


                  Dator 2:
                  2015-10-26 17:19 Köp 1503,63 Innehav
                  2015-11-18 17:21 Sälj 1513,31 +9,68 pkt
                  2015-11-18 17:22 Sälj 1513,45 Blankad
                  2015-11-24 17:19 Köp 1488,35 +25,1 pkt
                  2015-11-24 17:20 Köp 1489,32 Innehav
                  omx just nu 1508 +18,7 pkt
                  resultat 53,48 pkt

                  Det skiljer 60 pkt på 3 affärer/1 månad.
                  Vad får ni andra?


                  Mikael
                  Gbg

                  Comment


                  • Jamen då är det något olika i datat ändå. Flytta även HIST.dbf som innehåller EOD-data. När du gör det måste HIST.cgp och HISTID.ntx tas bort innan omstart.

                    Comment


                    • Även jag testkör Legato på ett testkonto. Mitt resultat är mycket nära ditt översta resultat. Dock så körde jag med endast tre av de fyra ordermodellerna fram till 3 nov (se inlägg 154 - 157). Mikola, rapportera gärna vad din felsökning resulterar i.

                      Comment


                      • Tänk även på att det kan bli skillnad om man simulerar 5sek eller 1min.

                        Comment


                        • Hej,

                          nu har jag raderat kursdatafilen och alla .CGP och .NTX-filer och laddat hem nytt på dator 2 och då får jag samma resultat som dator 1.
                          Den här manövern gjorde jag för 2 veckor sen och det hade alltså redan blitt fel igen.
                          Ända skillnaden är att dator 1 alltid är uppkopplad och får live-kurser medans dator 2 kör "underhåll kursdatabaser" varje dag och då verkar det kunna bli fel ibland.


                          Mikael

                          Comment


                          • Jo, det kan hända att Kundservice inte stämmer exakt med ditt eget insamlad, det kan bli små skillnader i tidsstämplar osv. I förrgår hade vi dessutom en större störning på Kundservice som vi löste med data från en annan maskin.

                            Comment


                            • Jag får +2p realiserat med animering 1 minut och -22p animering 5sek. Ungefär samma orealiserat. Vid simulering är alltså animering viktigt för Legato.

                              Att det skiljer i data kan också påverkas av inställningar i tex anpassa kursinsamlingen. Tex ta bort och en lista och sedan lägga tillbaka den några dagar senare.

                              Lite off topic. Det vore fint med en automatisk funktion där senaste x-dagar laddas ner och skriver över. Slipper att dagligen kolla data. Dels löser det situationer då en egen insamling inte fungerat av någon anledning eller efterkorrigeringar då börsen redovisar fel, mm.

                              Comment


                              • Jag roade mig med att addera en enklare Predictive Average i årsperspektiv till månadskurvan, för att få lite styrning beroende på tiden på året. Det ökade vinsten ett par hundra punkter sedan 2003, så nu ligger nya versioner ute för nedladdning för de som önskar labba.

                                Bifogar Open office-fil också om någon vill analysera. Jag körde simuleringen utan courtage för att undvika missförstånd. Det är ändå över 10 punkter vinst/trade i genomsnitt så det får ganska liten betydelse i det här fallet.







                                Scripten:

                                { Legato OMX index long 151207 }

                                $par1:=10 {0-30}
                                advance:=5

                                { Definiera medelvärden för Predictive Average }
                                pred1=find(lt(d,sub(const(d),30)),25,c,1)
                                pred2=find(lt(d,sub(const(d),60)),50,c,1)
                                pred3=find(lt(d,sub(const(d),90)),75,c,1)
                                pred4=find(lt(d,sub(const(d),120)),100,c,1)
                                pred5=find(lt(d,sub(const(d),150)),125,c,1)

                                steg=sub(23,mx(mn(advance,22),1))
                                år2=aref(c,236)
                                år3=aref(c,476)
                                år4=aref(c,729)
                                år5=aref(c,982)
                                år6=aref(c,1234)
                                medel=mov(aref(div(add(add(add(add(år2,år3),år4),år5),år6),6),steg:22),5,s)

                                { Addera medelvärden och ta genomsnitt - förskjut kurvan med par1 perioder }
                                pred_tot=aref(div(add(pred1,add(pred2,add(pred3,add(pred4,pred5)))),5),mx(1,$par1):35)

                                { Testa om lutning på Predictive Average är upp }
                                p1=gt(roc(add(medel,pred_tot),5,%),0)

                                { Definiera v2 och v4 som tillåtna datum att gå long }
                                v2=and(lt(dayofmonth(),if(p1,19,14)),gt(dayofmonth(),if(p1,7,6)))
                                v4=and(lt(dayofmonth(),if(p1,32,31)),gt(dayofmonth(),if(p1,19,27)))

                                { testa om vi är nära stängning }
                                stängning=le(mult(1440,sub(market(c),frac(date()))),10)
                                öppet=ge(mult(1440,sub(market(c),frac(date()))),6)

                                { beräkna histogram för MACD och testa om extremt översålt }
                                hist=sub(macd2(n),macd2(t))
                                extremt=lt(hist,-5)

                                { definiera långt medelvärde för trend och testa om index är över eller extremt översålt }
                                ma100=mov(c,150,s)
                                över=or(extremt,gt(c,ma100))

                                { Testa om Close är under senaste två dagarnas högsta stängning i kombination med v2 }
                                long1a=and(and(lt(c,hhv(aref(c,1),2)),v2),över)

                                { Testa om Close är under senaste tre dagarnas högsta stängning i kombination med v4 }
                                long1b=and(lt(c,hhv(aref(c,1),3)),v4)

                                { koppla ihop villkor, antingen v2 eller v2 samt innehav noll eller blankat }
                                long2=and(or(long1a,long1b),le(portfolio(v),0))

                                { koppla ihop Long-signal med nära stängning samt ingen säljtransaktion under dagen }
                                long3=and(and(long2,and(öppet,stängning)),gt(int(d),lasttrade(s,d)))

                                { skriv signal till cell 880 som minifuture-modeller läser av och lägger order }
                                setgvarif(11,880,long3)
                                mult(long3,11)




                                { Legato OMX index sell 151207 }

                                $par1:=10 {0-30}
                                advance:=5

                                { Definiera medelvärden för Predictive Average }
                                pred1=find(lt(d,sub(const(d),30)),25,c,1)
                                pred2=find(lt(d,sub(const(d),60)),50,c,1)
                                pred3=find(lt(d,sub(const(d),90)),75,c,1)
                                pred4=find(lt(d,sub(const(d),120)),100,c,1)
                                pred5=find(lt(d,sub(const(d),150)),125,c,1)

                                steg=sub(23,mx(mn(advance,22),1))
                                år2=aref(c,236)
                                år3=aref(c,476)
                                år4=aref(c,729)
                                år5=aref(c,982)
                                år6=aref(c,1234)
                                medel=mov(aref(div(add(add(add(add(år2,år3),år4),år5),år6),6),steg:22),5,s)

                                { Addera medelvärden och ta genomsnitt - förskjut kurvan med par1 perioder }
                                pred_tot=aref(div(add(pred1,add(pred2,add(pred3,add(pred4,pred5)))),5),mx(1,$par1):35)

                                { Testa om lutning på Predictive Average är ned }
                                p1=gt(roc(add(medel,pred_tot),5,%),0)

                                { Definiera ve1 och ve3 som tillåtna datum att gå ur position }
                                ve1=or(lt(dayofmonth(),if(p1,8,6)),gt(dayofmonth(),if(p1,31,30)))
                                ve3=and(lt(dayofmonth(),if(p1,18,22)),gt(dayofmonth(),if(p1,17,17)))

                                { testa om kurs är lägre än gårdagens lägsa }
                                lägre=lt(c,aref(c,1))

                                { testa om vi är nära stängning samt någon minut in på dagen }
                                inpådagen=gt(frac(date()),0.376)
                                stängning=le(mult(1440,sub(market(c),frac(date()))),10)
                                öppet=and(inpådagen,ge(mult(1440,sub(market(c),frac(date()))),6))

                                { testa om veckodag är tisdag eller senare }
                                rättd=ge(dayofweek(),2)

                                { Stoploss 2 ATR över shrt }
                                stoploss=lt(c,sub(lasttrade(b,p),mult(3,atr(10))))

                                { definiera säljvillkor som kurs lägre än föregående 2 dagars lägsta stängningskurs }
                                sell1=lt(c,llv(aref(c,1),2))

                                { koppla ihop säljvillkor med tillåtna datum och att innehav större än noll }
                                sell2=and(and(sell1,or(stoploss,or(ve1,ve3))),gt(portfolio(v),0))

                                { koppla ihop villkor med nära stängning alternativt lägre kurs än }
                                { gårdagens lägsta samt veckodag tis eller senare samt ingen köptransaktion idag }
                                sell3=and(and(and(sell2,and(or(lägre,stängning),öppet)),rättd),gt(int(d),lasttrade(b,d)))

                                { skriv signal till cell 880 som minifuture-modeller läser av och lägger order }
                                setgvarif(10,880,sell3)

                                mult(sell3,10)




                                { Legato OMX index shrt 151207 }

                                $par1:=10 {0-30}
                                advance:=5

                                { Definiera medelvärden för Predictive Average }
                                pred1=find(lt(d,sub(const(d),30)),25,c,1)
                                pred2=find(lt(d,sub(const(d),60)),50,c,1)
                                pred3=find(lt(d,sub(const(d),90)),75,c,1)
                                pred4=find(lt(d,sub(const(d),120)),100,c,1)
                                pred5=find(lt(d,sub(const(d),150)),125,c,1)

                                steg=sub(23,mx(mn(advance,22),1))
                                år2=aref(c,236)
                                år3=aref(c,476)
                                år4=aref(c,729)
                                år5=aref(c,982)
                                år6=aref(c,1234)
                                medel=mov(aref(div(add(add(add(add(år2,år3),år4),år5),år6),6),steg:22),5,s)

                                { Addera medelvärden och ta genomsnitt - förskjut kurvan med par1 perioder }
                                pred_tot=aref(div(add(pred1,add(pred2,add(pred3,add(pred4,pred5)))),5),mx(1,$par1):35)

                                { Testa om lutning på Predictive Average är ned }
                                p1=lt(roc(add(medel,pred_tot),5,%),0)

                                { Definiera v1 och v3 som tillåtna datum att gå shrt }
                                v1=or(lt(dayofmonth(),if(p1,8,7)),gt(dayofmonth(),if(p1,30,31)))
                                v3=and(lt(dayofmonth(),if(p1,23,20)),gt(dayofmonth(),if(p1,10,13)))

                                { testa om vi är nära stängning }
                                stängning=le(mult(1440,sub(market(c),frac(date()))),8)
                                öppet=ge(mult(1440,sub(market(c),frac(date()))),6)

                                { definiera långt medelvärde för trend och testa om index är under }
                                ma200=mov(c,200,s)
                                under=lt(c,ma200)

                                { beräkna histogram för MACD och testa om extremt översålt }
                                ej_extremt=gt(macd2(n),-50)

                                { testa om kurs är under gårdagens stängning samt lång trend nedåt }
                                shrt1=and(lt(c,aref(c,1)),under)

                                { koppla ihop shrt-villkor med tillåtna datum samt innehav noll eller större }
                                shrt2=and(and(and(shrt1,or(v1,v3)),ge(portfolio(v),0)),ej_extremt)

                                { koppla ihop villkor med nära börsstängning samt ingen köptransaktion under dagen }
                                shrt3=and(and(shrt2,and(öppet,stängning)),gt(int(d),lasttrade(b,d)))

                                { skriv signal till cell 880 som minifuture-modeller läser av och lägger order }
                                setgvarif(9,880,shrt3)

                                mult(shrt3,10)



                                { Legato OMX index cover 151207 }

                                { ange dagar för att testa exitvillkor }
                                dagar:=15

                                { testa om nära stängning samt någon minut in på dagen }
                                inpådagen=gt(frac(date()),0.376)
                                stängning=le(mult(1440,sub(market(c),frac(date()))),6)
                                öppet=and(inpådagen,ge(mult(1440,sub(market(c),frac(date()))),4))

                                { testa om kurs är den lägsta stängningen senaste x dagarna }
                                lägsta=llv(aref(c,1),dagar)

                                { koppla ihop cover-villkor med blankat innehav }
                                cover1=lt(c,lägsta)

                                { Stoploss 2 ATR över shrt }
                                stoploss=gt(c,add(lasttrade(s,p),mult(2,atr(10))))

                                { koppla ihop villkor med nära stängning samt ingen säljtransaktion under dagen }
                                cover2=and(and(or(stoploss,cover1),and(or(stoploss,stängning),öppet)),gt(int(d),lasttrade(s,d)))
                                cover3=and(cover2,lt(portfolio(v),0))

                                { skriv signal till cell 880 som minifuture-modeller läser av och lägger order }
                                setgvarif(10,880,cover3)

                                mult(cover3,10)
                                Attached Files

                                Comment

                                Working...
                                X