Flytte Gjennomsnittlig Crossover Strategy. On denne siden vil jeg ta deg gjennom en sammenligning av et par bevegelige gjennomsnittsovergangssystemer. En bruker to enkle bevegelige gjennomsnitt sma s og den andre bruker tre sma s. Ønsket om å bruke et dual moving average system å handle. Hvis du vurderer å bruke dobbeltflytende gjennomsnittsoverskridelser til både å angi og avslutte handler, kan du vurdere å teste et tredobbelt MA-system også Sammenlign dem side om side på forskjellige aksjer eller andre handelsinstrumenter, samt ulike tidsperioder eller tidsrammer. Test forskjellige bevegelige gjennomsnittsperioder, men vær forsiktig så du ikke stole på optimaliserte eller kurvpassende resultater. Men siden noen av mine besøkende ikke vet hva dette er, kan vi gå over noen grunnleggende først. VED AT SA FLYRE AVERAGE CROSSOVER. Bildet til høyre er et eksempel på et dobbeltflytende gjennomsnittsovergang som ville starte et kjøpesignal bullish crossover Et raskere bevegelige gjennomsnitt 8 sma-blå kryss over et langsommere gjennomsnitt 13 sma-gul. Merk at signalet ikke er co nfirmed til slutten av baren Dette betyr at den faktiske oppføringen i live trading ville være et sted i neste bar. Sannsynligvis i nærheten av åpningen av den baren. Hvis du ikke har gjort noen backtesting ennå, vil denne typen enkelt system trolig være en av Det første du vil teste, siden det krever svært lite programmeringsferdigheter Uansett, hvis du går nedover denne banen, vil du finne at åpningsprisen på den neste linjen etter krysset, er hvor backtesting programvare avhengig av innstillingen vil plassere simulert handler Hva er rimelig, fordi hvis du faktisk handlet ved hjelp av automatisert handelsprogramvare, er dette en nær tilnærming av hvor handelen din skulle finne sted. Med et typisk stopp-omvendt system vil denne lange oppføringen ikke bli avsluttet før den blå, raskere MA krysset under Den gule, langsommere MA Denne MA bearish crossover utløser ikke bare handel, men starter også en kort handel i motsatt retning. Med dual moving average crossover-systemer er handelsmannen alltid i handel, lang eller kort. Ta en titt på et intradageksempel i løpet av en dag. Dual Moving AVERAGE CROSSOVER. Vi vil bruke et 5-minutters diagram av SPY med to enkle glidende gjennomsnitt for det første eksempelet Hurtig 8 sma - grønn og Slow 13 sma - gul. Jeg valgte denne dagen fordi jeg ønsket å illustrere det som er veldig typisk for praktisk talt noen glidende gjennomsnittsovergangsstrategi. Den første lange handelen etter kl. 11.00 går veldig bra og faktisk fanger en god tilbaketrekningsoppføring. Utgangen på rundt 12 45 er lønnsomt. Men jeg vil at du skal observere, er den hakkede priskonkurransen mellom 12 00 - 3 00 Dette er hvor doble MA-systemer virkelig kan miste profittene dine. MA er bare whipsaw frem og tilbake som forårsaker tre tap på rad, sannsynligvis fordampe fortjenesten fra den første handelen Hvis en person handlet denne metoden på denne dagen, ville de heldigvis ha sett en mer anstendig vinnende handel på 2 30. Den gode delen av dette systemet vises på første handelen og den siste handelen mens flytter avera Geoverskridelser mislykkes miserably under hakkete prishandlinger, de fungerer veldig bra under trendende prishandlinger. Hvis du backtest disse enkle stopp - og reverssystemene, og inspiserer en som kommer ut med en fortjeneste, vil du mest sannsynlig finne at vinneren er mindre enn 50 , men gjennomsnittlig vinner vil være større enn gjennomsnittlig loser. Det er fordi flytende gjennomsnittsovergangssystemer er i hovedsak trendhandelssystemer. Trendhandelssystemer har nesten alltid denne karakteristikken for en liten prosentandel av vinnere og et godt forhold. I diagrammene under L Long, S Short og Ex Exit. TRIPLE FLYTING AVERAGE CROSSOVER. Så langt har diskusjonen sentrert rundt et stopp revers-type system, hvorved et signal for en utgang også produserer en handel i motsatt retning. Men hvis vi introduserer en tredje bevegelse Gjennomsnitt for systemet, det kan være en periode med nøytralitet Med andre ord, ingen handel foregår - du er i kontanter. For dette eksempelet skal vi bruke et 3-minutters diagram og tre enkle glidende gjennomsnitt på 4 sma, 1 0 sma og 50 sma. Reglene er veldig enkle Hvis den langsomme linjen 50 sma stiger, og den raske linjen 4 sma krysser over mellomlinjen 10 sma, er det et kjøpesignal. Utgangssignalet kommer når den raske linjen krysser under midtlinjen. Reglene er motsatte for korte oppføringer. Det er lett å se at dette systemet ligner på å ta handler av trenden med en høyere tidsramme. Et alternativ til dette systemet ville være å bare ta lange oppføringer når begge de raske og midtre glidende gjennomsnittene er over den langsomme sma. Vær oppmerksom på at når du arbeider med tre grader av frihet 3 variabler, i stedet for to som i eksempelet ovenfor, gjør du systemet mer komplekst og dermed skaper mange flere mulige kombinasjoner til test. Selvfølgelig gjør backtesting programvare dette et snap, men husk at å legge til filtre og kompleksitet gjør ikke alltid et bedre system. Ofte kan et enklere system være mer robust under testing. Et eksempel er under. Hvis du er interessert i å flytte gjennomsnitt , du mager Jeg vil også sjekke ut siden min om hvordan du bruker bevegelige gjennomsnitt som en etterfølgende stopp. Prøv å prøve en flytende gjennomsnittsoverskridelse i Python med pandas. I den forrige artikkelen om Research Backtesting Environments I Python With Pandas opprettet vi en objektorientert forskningsbasert backtesting miljø og testet det på en tilfeldig prognose strategi I denne artikkelen vil vi gjøre bruk av maskineri vi introduserte for å utføre forskning på en faktisk strategi, nemlig Moving Average Crossover på AAPL. Moving Gjennomsnittlig Crossover Strategy. The Moving Average Crossover teknikken er en ekstremt kjent, forenklet momentumstrategi. Det er ofte betraktet Hello World-eksempelet for kvantitativ handel. Strategien som skissert her er langvarig. To separate, enkle, glidende gjennomsnittlige filtre er opprettet med varierende tilbakekoblingsperioder av en bestemt tidsserie. Signaler til kjøp eiendelen oppstår når kortere tilbakegangsgjenomsnitt overstiger det lengre tilbakekjøpende glidende gjennomsnittet. Hvis lengre gjennomsnittlige subs overgår det kortere gjennomsnittet, eiendelen selges tilbake Strategien fungerer bra når en tidsserie går i en periode med sterk trend og så sakte reverserer trenden. For dette eksempelet har jeg valgt Apple, Inc AAPL som tidsseriene, med en kort tilbakekalling på 100 dager og en lang tilbakekalling på 400 dager Dette er eksemplet fra zipline algoritmiske handelsbiblioteket. Såfremt vi ønsker å implementere vår egen backtester, må vi sikre at den samsvarer med resultatene i zipline som et grunnleggende middel for validering . Pass på å følge den forrige veiledningen her, som beskriver hvordan det opprinnelige objekthierarkiet for backtesteren er konstruert, ellers vil koden nedenfor ikke fungere. For denne bestemte implementeringen har jeg brukt følgende biblioteker. Implementeringen av krever fra den forrige opplæringen Den første Trinn er å importere nødvendige moduler og objekter. Som i den forrige opplæringen skal vi subclass Strategi abstrakt grunnklassen for å produsere MovingAverageCrossStrategy w som inneholder alle detaljer om hvordan man genererer signaler når de bevegelige gjennomsnittene av AAPL krysser over hverandre. Objektet krever en shortwindow og en longwindow som skal brukes. Verdiene er satt til standardverdier på henholdsvis 100 dager og 400 dager, som er de samme parametrene som brukes i hovedeksempelet på zipline. De bevegelige gjennomsnittene opprettes ved å bruke pandas rollingmean-funksjonen på stolpene. Lukk sluttkurs for AAPL-aksjen Når individuelle bevegelige gjennomsnitt er blitt konstruert, genereres signalet Serie ved å sette inn kolonnen er lik 1 0 når det korte glidende gjennomsnittet er større enn det lange glidende gjennomsnittet eller 0 0 ellers Fra dette kan posisjonene ordrer genereres for å representere handelssignaler. MarketOnClosePortfolio er underklasse fra Portefølje som er funnet i Det er nesten identisk til implementeringen beskrevet i den tidligere opplæringen, med unntak av at handlingene nå utføres på nært hold, i stedet for en åpen til - Open basis For detaljer om hvordan Portfolio-objektet er definert, se den forrige veiledningen. Jeg har forlatt koden for fullstendighet og for å holde denne opplæringen selvopptatt. Nå som MovingAverageCrossStrategy og MarketOnClosePortfolio-klassene er definert, vil en hovedfunksjon være kalt for å knytte all funksjonaliteten sammen I tillegg vil strategiens utførelse bli undersøkt via en kurve av egenkapitalkurven. Pandas DataReader-objektet laster ned OHLCV-priser på AAPL-aksjer for perioden 1. januar 1990 til 1. januar 2002, på hvilket tidspunkt signalene DataFrame er opprettet for å generere langvarige signaler Deretter genereres porteføljen med en startkapitalbasert 100.000 USD og avkastningen beregnes på egenkapitalkurven. Det endelige trinnet er å bruke matplotlib til å tegne en tofigurert plot av begge AAPL-priser, overlaid med bevegelige gjennomsnitt og kjøpssalgssignaler, samt egenkapitalkurven med de samme kjøpssignaler. Tegningskoden tas og modifiseres fra z Ipline-implementeringseksempel. Den grafiske produksjonen av koden er som følger. Jeg benyttet seg av IPython Paste-kommandoen for å sette dette direkte inn i IPython-konsollen mens du var i Ubuntu, slik at den grafiske produksjonen forblir i visning. Den rosa oppblåsingen representerer kjøp av aksjen mens de svarte downticks representerer å selge den tilbake. AAPL Flytter Gjennomsnittlig Crossover Performance fra 1990-01-01 til 2002-01-01. Som det kan sees, mister strategien penger i løpet av perioden, med fem rundturer. Dette er ikke overraskende gitt oppførsel av AAPL i perioden, som var på en liten nedadgående trend, etterfulgt av en signifikant oppgang i 1998. Utsettelsesperioden for de bevegelige gjennomsnittssignalene er ganske stor, og dette påvirket resultatet av den endelige handel som ellers kunne ha gjort strategi lønnsom. I etterfølgende artikler vil vi skape et mer sofistikert middel til å analysere ytelse, samt å beskrive hvordan man optimaliserer tilbakekallingsperioder av det individuelle bevegelige gjennomsnittssignalet s. Just bare å komme i gang med kvantitative trading. BackTesting Moving Gjennomsnitt. Hvorfor Flytte Gjennomsnitt. Som en handelsmann eller investor, er den eneste grunnen til å undersøke glidende gjennomsnitt, å få kunnskap for å øke fortjenesten. Som mange andre tekniske indikatorer er flytteverdier ment å hjelpe oss objektivt fortelle markedsstatusen til enhver tid Dette hjelper oss med å se gjennom dagens følelser og gjøre rasjonelle beslutninger, som vi forteller, vil føre til større fortjeneste og eller færre tap i det lange løp. Flytte gjennomsnitt MAs glatter prisserien for et lager MAs er oftest brukt til å identifisere trenden i markedsretningen, og er klassifisert som en trend-følgende indikator Dette betyr ikke at MAs er bare for langsiktige investorer Korttidshandlere bruker dem også Flytte gjennomsnitt kan brukes til å skjerme aksjer for gode kandidater, signal kjøp muligheter, og tilbyr selger signaler. Hvorfor Backtest en historie. Målet med backtesting er å finne ut om flytte gjennomsnitt virkelig fører til bedre resultater en d hva er de mest lovende måtene å søke MAs La meg fortelle deg en kort historie Mens jeg satt sammen resultatene for en av de bevegelige gjennomsnittlige BackTesting Report-problemene, skjedde jeg å besøke en venn I hennes hus kom jeg over et lesemateriale fra en godt annonsert rabattmäklare I det var en artikkel som ga kundene sine råd til å bruke en bestemt bevegelig gjennomsnittlig lengde på en bestemt måte for å få de beste resultatene jeg hadde mine omfattende tester rett foran meg, og jeg kan fortelle deg at meglerens metode fikk ikke de beste resultatene, selv om de nevnte en MA-lengde som er nyttig på andre måter jeg hadde i mine håndtestresultater som viste at måten megleren brukte på glidende gjennomsnitt hadde en seiersats som var verre enn grunnlinjen da testet på 7147 aksjer over 14 år med aksjemarkedsdata Det var klart at megleren ikke kjørte den typen av testing. Det er opp til kundene oss å forsvare seg selv og finne ut hva som fungerer i forhold til hva som ikke gjør. Hvordan beregne MAs. When tilbake testing av glidende gjennomsnitt, den første avgjørelsen er hvordan du beregner det bevegelige gjennomsnittet. Vil du ha et enkelt, bevegelig gjennomsnittlig SMA eller noe som er utformet for å spore pris bedre, for eksempel et eksponentielt glidende gjennomsnittlig EMA Du kan vurdere et eksperiment for å sammenligne vinnersatsene for de to forskjellige gjennomsnitt jeg gjorde nettopp det for et par år siden, og mens jeg ikke får resultatene til å publisere, kom jeg bort med tanken om at det ikke gjorde stor forskjell om jeg valgte SMA eller EMA bare velg en og bruk den konsekvent Så for dette prosjektet velger jeg å bruke enkle glidende gjennomsnitt fordi jeg ser dem nevnt i kommentarene oftest For å faktisk beregne, stolte jeg på den innebygde funksjonen som fulgte med TradeStation. Valg av backtesting motor er en annen beslutning som er generell nok til å skriv om i et annet innlegg. Hvordan du bruker MAs. Next må du finne ut hvor nøyaktig du vil bruke glidende gjennomsnitt Hvordan vil du tolke forholdet mellom pris og glidende gjennomsnitt Hvilke regler wi vil du bruke til å bestemme når du skal kjøpe og selge Du trenger ikke å lese lenge om aksjer før du kommer over et bullish referanse til en børshandel over det 200 dagers glidende gjennomsnittet eller det 50-dagers glidende gjennomsnittet, eller til og med 10 eller 20-dagers MA Eller råd om kjøp av aksjer når de krysser deres 50-dagers eller 200-dagers glidende gjennomsnitt. Dette er viktige regler for å teste i motoren. Og så er det den bevegelige gjennomsnittsoverskridelsen en klassisk metode for teknisk analyse som gjør tre forskjellige måter å bruke bevegelige gjennomsnitt til å teste. Gjøre mer dyptgående, noen handelstekster snakker om skråningen av et bevegelige gjennomsnitt. Hvis du harker tilbake til algebra og vurderer MA som en linje, for å finne sin skråning, vil du velge to poeng på linje og bruk den vanlige formelen x2-x1 y2-y1 Dette bringer spørsmålet om hvor langt fra hverandre å velge de to punktene som kan gjøre forskjell på resultatene. Siden MA brukes til å identifisere trenden, vil vi bare vet om det er skråt opp eller ned Da kan vi forenkle th e hele beregningen ved å merke seg at hvis prisen er over det bevegelige gjennomsnittet, må det trekke gjennomsnittet opp, og en pris under MA trekker den ned. Dermed en annen grunn til å teste effektiviteten av prisen over det bevegelige gjennomsnittet. Parameterinnstillinger. du bestemmer deg for hvordan du bruker MAs, må du velge et utvalg av forskjellige lengder å teste Pass opp for overoptimalisering Et sted der ute er en fyr med backtesting-resultater som viser 3895 gevinst eller hva som helst ved å bruke bare det rette glidende gjennomsnittet. Synd han gjør ikke t vet hva MA vil produsere disse resultatene i fremtiden Når det er sagt, må du prøve mer enn en lengde for å sikre at resultatene dine er tydelige. Hold fast med standardinnstillinger eller de du hører mest om i media. Finn den perfekte parameterinnstillingen kommer ikke til å gjøre deg rik Å finne en klynge av gode og robuste innstillinger, kan bare gjøre deg veldig bra skjønt. Som en praktisk sak når backtesting tillater nok datalagring før måling, må alle tester begynne å måle en t samme sted for eple-til-epler sammenligning mellom forskjellige MA lengder Hvis du for eksempel tester et 200-dagers glidende gjennomsnitt, vil det ta de første 200 dagene med data for å beregne det første punktet i det glidende gjennomsnittet. Det betyr at at den første dagen du muligens kunne få et signal, er 200 dager i datasettet. For å gjøre en god sammenligning med, si 10-dagers glidende gjennomsnitt, må du sørge for at du ikke teller noen signaler fra 10-dagers bevegelse gjennomsnittet før 200-dagers er klar til å gå Heldigvis har TradeStation en måte å sette Maksimalt antall barstudier vil referere til i Egenskaper for alle strategier som tvinger motoren til å vente lenge før tabulering av data. Mer fortjeneste ved å kjøpe eller selge. Flytte gjennomsnittlige regler, og spesielt bevegelige gjennomsnittlige crossover-regler, diskuteres ofte som et reverseringssystem. Dette betyr at ett signal, sier at MAs krysser oppover er et kjøpsignal, og da er motsatt, sier MA-linjer som krysser ned, er ikke bare en selger signal, men også Utløseren går kort Teoretisk er det bare bra, men mange mennesker er ikke interessert i å forkorte markedet. De leter etter teknikker for å hjelpe dem å kjøpe og kanskje selge. Selv en person som regelmessig selger og selger kort, kan bruke forskjellige teknikker for kjøp og salg Av disse grunner er det klokt å teste kjøpesignaler separat fra selgesignalene. Dette stiller et dilemma fordi det er vanskelig å evaluere et kjøpesignal i isolasjon. En måte å gjøre dette på er å bruke tidsbegrensede utganger som går ut av handel eller selg aksjen etter at en viss tid har gått Jeg valgte å kjøre hver backtest tre ganger med tre forskjellige tider, fordi forskjellige personer har forskjellige stiler og forskjellige behov. For å produsere backtesting-resultater som er nyttige for å svinge handelsmenn, avslutter jeg etter 2 dager Til modellposisjon , 20 dager For å møte behovene til aktive investorer holder backtesting hver posisjon i 200 dager. Dette gir en måte å isolere kjøpesignalene på, og finne ut hvor nyttig det bevegelige gjennomsnittet er t o aksjekjøpere av ulike temperaments. Need å definere godhet. Enne mer veldig viktig ting å vurdere om du er backtesting glidende gjennomsnitt å finne ut hvor godt de gjør på aksjemarkedet Hvordan vil du vite hva som er bra Du trenger objektive kriterier for suksess At betyr å identifisere nøkkelstatistikken som gevinstfrekvens, forventning, hypotetiske egenkapitalgevinster osv. Det betyr også å sette standarder for akseptabel ytelse på hvert av disse områdene. Et eksempel illustrerer hvorfor dette er viktig og hvorfor det ikke er så enkelt som det først vises. Si Testene dine viser en gevinstfrekvens på 55 for en bestemt indikator. Det kan kanskje ikke være så bra hvis 62 sier at alle aksjene gikk opp i samme tidsperiode. Eller hvis bare 25 av aksjene steg i løpet av denne perioden, vinner din 55 seier rate vil være spektakulært Det som er bra, avhenger av hvordan det sammenlignes med baseline markedet ytelse under de samme forholdene. Du kan laste ned en gratis kopi av BackTesting Report Baseline problemet ved å klikke her. For en meningsfull backtest, Du må ha nok data til å gjøre en statistisk gyldig sammenligning. Det betyr at det betyr 30 handler Selv om du handler bare ett instrument, bare ett lager eller bare ett valutapar, tror jeg det er viktig å teste din handelsstrategi på mange forskjellige instrumenter for å bevise sin robusthet jeg gikk over toppen med et ekstremt stort testsett 7147 aksjer over 14 år for å sikre at resultatene mine ville gjelde i et bredt utvalg av markedsforhold. Du kan få din kopi av mine backtesting-rapporter om å flytte gjennomsnittlige kjøpssignaler etter klikker her.
Comments
Post a Comment