Allmänt meddelande

Collapse
No announcement yet.

Hur går era affärer ?

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

  • Som Shoddy nämner så är för lite data en orsak att man får en överanpassad modell. Om du optimerar modellen med 12 månaders data så ska den sista månaden endast användas för validering av modellen och resterande 11 månaderna användas för att justera modell parametrarna. Det är bara ett exempel, det kan behövas större datamängd både för optimering och för validering.

    Några av de kommersiella strategierna har sett kanonbra fram till den tidpunkt som de lanserades och började med live-handel, då dyker resultatet. Det kan bero på överanpassning.

    Comment


    • Ursprungligen postat av petersi Visa inlägg
      Om din modell har många parametrar som kan justeras för att ge ett bra resultat på historiska data, så kan det resultera i att modellen har anpassat sig efter något mönster som egentligen var brus. Det kallas överanpassning eller på engelska overfitting, data-snooping. Det är mycket vanligt att detta sker och måste hanteras på ett eller annat sätt för att få en robust modell
      Vad som är brus för en person/modell är vinströrelser för en annan modell. Eftersom både Berras och mina modeller går in och ur marknaden varje dag krävs det lite aktion i kurserna för att generera vinst. Mina script kanske behöver en snabb kursökning på 3 punkter för att signalera köp. För blank krävs kanske i genomsnitt -3 punkter. Om kursrörelserna peak to peak är mindre än 6 punkter finns stor risk att generera förlust.
      Har man lägre triggnivåer kan man få högre vinst vid lägre kursrörelseamplituder (Berrascripten) bara kursrörelserna är tydliga. Otydliga kursrörelser (=att kursen ändrar riktning mer än 3 gånger per dag) ger i det här fallet minus i dagskassan.
      mvh
      Bertil

      Comment


      • Ursprungligen postat av shoddy Visa inlägg
        Det här var lite kul exempel på overfitting...(tror jag) :-)
        http://www.washingtonpost.com/blogs/...liant-cartoon/
        Bra länk

        Comment


        • Ursprungligen postat av Bertil Visa inlägg
          Vad som är brus för en person/modell är vinströrelser för en annan modell. Eftersom både Berras och mina modeller går in och ur marknaden varje dag krävs det lite aktion i kurserna för att generera vinst. Mina script kanske behöver en snabb kursökning på 3 punkter för att signalera köp. För blank krävs kanske i genomsnitt -3 punkter. Om kursrörelserna peak to peak är mindre än 6 punkter finns stor risk att generera förlust.
          Har man lägre triggnivåer kan man få högre vinst vid lägre kursrörelseamplituder (Berrascripten) bara kursrörelserna är tydliga. Otydliga kursrörelser (=att kursen ändrar riktning mer än 3 gånger per dag) ger i det här fallet minus i dagskassan.
          mvh
          Bertil
          Det kan mycket väl vara så, men överanpassning ger en mindre robust modell. Med rätt metod så kan modellen bli mer robust mot överanpassning och eventuellt gör att modellen ger ett jämnare resultat.

          Comment


          • Är det någon som sett några tumregler på detta?
            ex 2-1 2års data att optimera 1 års data att testa på.

            Vilket år det var spelar också in ex 2011 vara lite mer extremt än andra år.

            /I

            Comment


            • Ursprungligen postat av petersi Visa inlägg
              Det kan mycket väl vara så, men överanpassning ger en mindre robust modell. Med rätt metod så kan modellen bli mer robust mot överanpassning och eventuellt gör att modellen ger ett jämnare resultat.

              Visst, ovanstående är nog sant. Det jag tycker är intressant är filosofin bakom scripten. Jag har ju på flera ställen redogjort för mina scripts filosofi, men har inte fått så mycket svar. Här är en sammanfattning hur mina script fungerar:
              a) 50 st script med ca 10 parametrar per script.
              b) All kursrörelse äldre än 400 minuter är ointressant.
              c) Parametrarna försöker identifiera de geometriska minsta gemensamma nämnarna i kursrörelserna.
              d) Tidsparametrar under dagen är viktiga för när handel får ske resp när man får ta hem vinst, Take Profit.
              e) Rörelser i DAX får under vissa omständigheter trigga.
              f) Ingen hänsyn tas till handelsvolymer.
              g) Alla script går på i1(
              h) inga terminer får innehas över natten.

              Hur Berras script fungerar vet jag på ett ungefär. Det är MACD script med optimerade parametrar på trigg och brusreducering.
              Men hur tänker ni andra då ni sätter ihop era script?
              undrar
              Bertil

              Comment


              • Så ser mina swing script ut:

                a) 3 Kontroll script, 5 long entry 1 long exit, 1 short entry 2 short exit summa 12 script
                b) Entry i i30 eller i40, exit i i5
                c) Trend filter med Bollinger bands med undantag för volativa period/high potential entry zons.
                d) Trigger via ATR check, DMI/DMP eller pivot punkter + check hhv/llv
                e) Exit via ATR, STDV eller %
                f) Inga take profit eller volym
                h) Bara swing trades aldrig mer en entry åt ett håll per dag
                g) Sedan 2010-01 134 affär long och 100 affär short dvs ca 66 affärer per år
                i) Sitter aldrig vid dator/VPS och övervakar (då svensk börsdag är natt i min tidzon)

                /I

                Comment


                • Ursprungligen postat av Bertil Visa inlägg
                  Då börjas det igen:
                  09:32 ORDER "sl) Mitt labba köp dax OMXS303H" kurs 1234.75
                  Nu är det pyspunkta på OMXS30 samtidigt som DAX går ner. Har inga script som kan hantera detta , utan gick in och blankade manuellt på 1233.00
                  mvh
                  Bertil

                  Comment


                  • Ursprungligen postat av Bertil Visa inlägg
                    Nu är det pyspunkta på OMXS30 samtidigt som DAX går ner. Har inga script som kan hantera detta , utan gick in och blankade manuellt på 1233.00
                    Kollade i Analysbänken nu några minuter efteråt. Ordinarie script skulle blankat på 1232.00. Vann alltså 1 punkt genom min manuella handel.
                    mvh
                    Bertil

                    Comment


                    • Ursprungligen postat av Bertil Visa inlägg
                      Visst, ovanstående är nog sant. Det jag tycker är intressant är filosofin bakom scripten. Jag har ju på flera ställen redogjort för mina scripts filosofi, men har inte fått så mycket svar. Här är en sammanfattning hur mina script fungerar:
                      a) 50 st script med ca 10 parametrar per script.
                      b) All kursrörelse äldre än 400 minuter är ointressant.
                      c) Parametrarna försöker identifiera de geometriska minsta gemensamma nämnarna i kursrörelserna.
                      d) Tidsparametrar under dagen är viktiga för när handel får ske resp när man får ta hem vinst, Take Profit.
                      e) Rörelser i DAX får under vissa omständigheter trigga.
                      f) Ingen hänsyn tas till handelsvolymer.
                      g) Alla script går på i1(
                      h) inga terminer får innehas över natten.

                      Hur Berras script fungerar vet jag på ett ungefär. Det är MACD script med optimerade parametrar på trigg och brusreducering.
                      Men hur tänker ni andra då ni sätter ihop era script?
                      undrar
                      Bertil
                      Generellt:
                      Förutom curve-fitting finns det optimeringsparadoxen. Även om en modell inte är överoptimerad så går det inte att hitta optimala parametrar över tid.

                      Bertil:
                      Jag är imponerad av dina resultat och förutsätter att det bara finns lite curve-fitting(finns i stort sätt alltid). Du använder en annorlunda metod där ett stort antal script kan trigga. Om jag har förstått din metod rätt är alla break-out och varje script bara känner till innehav, senaste avslut, etc. Annars finns det inget samband mellan scripten och först till kvarn gäller.

                      Det skulle vara intressant att veta hur ofta varje script har signalerat historiskt i kombination med alla triggers. Hur ser resultatet ut för varje trigger. Har tex ett script bara signalerat en gång och bara varit sann i några sekunder så kan det finnas en risk av överoptimering.

                      Håller din modell i framtiden innebär det att en kombination där varje oberoende trigger inte behöver ge bra resultat kan slå en enkel stjärnmodell.
                      (Annars skulle du köra den/de bästa). Lite som filmen Money Ball.

                      Comment


                      • Ursprungligen postat av Henric Visa inlägg
                        Generellt:
                        Förutom curve-fitting finns det optimeringsparadoxen. Även om en modell inte är överoptimerad så går det inte att hitta optimala parametrar över tid.

                        Bertil:
                        Jag är imponerad av dina resultat och förutsätter att det bara finns lite curve-fitting(finns i stort sätt alltid). Du använder en annorlunda metod där ett stort antal script kan trigga. Om jag har förstått din metod rätt är alla break-out och varje script bara känner till innehav, senaste avslut, etc. Annars finns det inget samband mellan scripten och först till kvarn gäller.

                        Det skulle vara intressant att veta hur ofta varje script har signalerat historiskt i kombination med alla triggers. Hur ser resultatet ut för varje trigger. Har tex ett script bara signalerat en gång och bara varit sann i några sekunder så kan det finnas en risk av överoptimering.

                        Håller din modell i framtiden innebär det att en kombination där varje oberoende trigger inte behöver ge bra resultat kan slå en enkel stjärnmodell.
                        (Annars skulle du köra den/de bästa). Lite som filmen Money Ball.
                        Hej Henric!
                        Man kan ju köra enskilda script i Analysbänken för att se hur ofta de triggar, men då tappar man ju lite av helheten. Här är ett exempel på hur scripten triggat med flaggor de senaste dagarna. Jag har även tillverkat egna röda och gröna "flaggor" som jag adderat (subtraherat) till kurvritningen. Flaggorna blir ju lite fel då man här inte tar hänsyn till villkoren för senaste köp/sälj som analysbänken gör.
                        De senaste dagarna har inte gett så mycket vinst då kursrörelserna varit för små, men bilden visar ju hur tätt triggarna kommer. Vissa flaggor har lite olika höjd och färgnyans beroende på triggande script, men jag har inte varit helt konsekvent.
                        mvh
                        Bertil
                        Attached Files

                        Comment


                        • Du kan köra med scriptkolumn från en global cell där varje trigger har ett eget nummer.

                          Edti: Tänkte på ditt tidigare tidsproblem. Det skulle kunna gå att lösa med en global cell som bara sätts en gång vid varje insamling i ett anslutet script.
                          Om jag har alla bitar rätt är all kursinformation snapshot vid insamlingen, medan tiden kontinuerligt använder systemtid?
                          Last edited by Henric; 2013-07-30, 12:05.

                          Comment


                          • Intressant diskussion som startat. Tänk bara på att allt som sagts om curvefitting, överoptimering och optimeringsparadoxen, endast gäller för linjära modeller.

                            Vad jag sett hittills från tidigare Berra-script är Berras modell linjär, och resonemangen ovan stämmer alltså in för honom.
                            Däremot kan man inte rakt av applicera ovanstående resonemang på Bertils modell då denna är icke-linjär utifrån vad han visat iform av upplagda script och beskrivning, så resonemanget går inte att tillämpa på hans fall.

                            Comment


                            • Absolut. Han använder dock en rad parametrar som optimeras. Relationerna blir komplexa. Är det då värt att förlita sig till backtesting av icke-linjära modeller?
                              (obs teoretisk diskussion, inte Bertils modell).
                              Last edited by Henric; 2013-07-30, 15:34.

                              Comment


                              • Jag ser inget konstigt i att backtesta icke-linjära modeller och även att förlita sig till resultatet. Modellerna anpassar sig ju till det för tillfället rådande klimatet. Det man måste göra däremot är att testa dem i en rad olika marknader och tidshorisonter så att det testade materialet blir någorlunda representativt för börsen som helhet.

                                En nackdel med Bertils modell är ju att den inte går att testa längre tillbaka än D-terminen och det skulle vara väldigt intressant att se hur den presterar i andra marknader. Jag har tidigare försökt att få Bertil att att ersätta DAX-scriptet/en med något annat men det verkar inte gå att hitta någon bra ersättare.

                                Comment

                                Working...
                                X