Jeg er ny på Pandas Jeg har fått en mengde avstemningsdata Jeg vil beregne et rullende middel for å få et estimat for hver dag basert på et tre-dagers vindu Som jeg forstår fra dette spørsmålet, beregner rullingsfunksjonene vinduet basert på en spesifisert antall verdier, og ikke et spesifikt datetime-område. Er det en annen funksjon som implementerer denne funksjonaliteten Eller stikker jeg fast med å skrive min egen. Eksempel på input data. Output ville bare ha én rad for hver date. EDIT x2 fast typo. Dette eksemplet virker å ringe etter en vektet gjennomsnitt som foreslått i andyhayden s kommentar For eksempel er det to meningsmålinger på 10 25 og en hver på 10 26 og 10 27 Hvis du bare resample og deretter ta det gjennomsnittlige, gir dette effektivt dobbelt så mye vekting til meningsmålinger på 10 26 og 10 27 sammenlignet med de på 10 25. For å gi like vekt til hver meningsmåling i stedet for like stor vekt hver dag, kan du gjøre noe som følger. Det gir deg rå ingrediensene for å gjøre en meningsmåling i stedet for en dagbasert middel som før, meningsmålinger er i gjennomsnitt på 10 25, men vekten for 10 25 lagres også og er dobbeltvekten på 10 26 eller 10 27 for å gjenspeile at to avstemninger ble tatt på 10 25. Merk at rullende middel for 10 27 er nå 0 51500 poll-weighted i stedet for 52 1667 dagvektet. Merk også på at det har vært endringer i APIene for resample og rolling som av versjon 0 18 0. For å holde det grunnleggende, brukte jeg en loop og noe slikt for å komme i gang min indeksen er datetimes. and så kan du kjøre funksjoner på det stykket. Du kan se hvordan å legge til en iterator for å gjøre starten av vinduet noe annet enn den første verdien i dataframesindeksen din, så ruller du vinduet du kan bruke en regel for starten også for eksempel. Merknad, dette kan være mindre effektivt for SUPER store data eller svært små trinn som snittet ditt kan bli mer anstrengende fungerer for meg godt nok for hundretusenvis av rader med data og flere kolonner skjønt for timevisninger på tvers av noen få weeks. answered 8. mars kl 21 09. Ditt svar.201 7 Stack Exchange, Inc. Backtesting en Moving Gjennomsnittlig Crossover i Python med pandas. I den forrige artikkelen om Research Backtesting Environments I Python With Pandas opprettet vi et objektorientert forskningsbasert backtesting miljø og testet det på en tilfeldig prognosestrategi. I denne artikkelen Vi vil benytte seg av maskinen vi introduserte for å utføre forskning på en faktisk strategi, nemlig Moving Average Crossover på AAPL. Moving Average Crossover Strategy. The Moving Average Crossover-teknikken er en ekstremt kjent, forenklet momentumstrategi. Det regnes ofte som Hei Verdenseksempel for kvantitativ handel. Strategien som skissert her er langvarig. To separate enkle glidende gjennomsnittlige filtre er opprettet med varierende tilbakekoblingsperioder for en bestemt tidsserie. Signaler for å kjøpe aktivet oppstår når det kortere tilbakegangsgjenomsnittet overstiger det lengre lookback moving average Hvis lengre gjennomsnitt etterfølgende overstiger det kortere gjennomsnittet, blir aktiva solgt tilbake Strategien fungerer bra når en tidsserie går inn i en periode med sterk trend og deretter sakte reverserer trenden. For dette eksempelet har jeg valgt Apple, Inc AAPL som tidsserien, med en kort tilbakekalling på 100 dager og en lang tilbakekalling på 400 dager Dette er eksemplet fra zipline algoritmiske handelsbiblioteket. Hvis vi ønsker å implementere vår egen backtester, må vi sørge for at den samsvarer med resultatene i zipline, som et grunnleggende middel for validering. Sørg for å følge den tidligere opplæringen 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 Det første trinnet er å importere nødvendige moduler og objekter. i den forrige opplæringen skal vi subclass strategisk abstrakt baseklasse for å produsere MovingAverageCrossStrategy som inneholder alle detaljer om hvordan man genererer tegnet als når de bevegelige gjennomsnittene for 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 hovedeksemplet av zipline. De bevegelige gjennomsnittene er opprettet ved å bruke pandas rollingmean-funksjonen på stolpene. Lukk sluttkurs for AAPL-aksjen Når de individuelle bevegelige gjennomsnittene er konstruert, genereres signalet Serie ved å sette kolonnen lik 1 0 når det korte glidende gjennomsnittet er større enn det lange glidende gjennomsnittet, eller 0 0 ellers Fra dette kan stillingsordrene genereres for å representere handelssignaler. MarketOnClosePortfolio er subclassed fra Portfolio som er funnet i. Det er nesten identisk med implementeringen beskrevet i den tidligere opplæringen, med unntak at handlingene nå utføres på nært hold, i stedet for en åpen til åpen basis For detaljer om hvordan porteføljeobjektet er definert ed, se forrige veiledning Jeg har forlatt koden for fullstendig og for å holde denne opplæringen selvbestemt. Nå som MovingAverageCrossStrategy og MarketOnClosePortfolio-klassene er definert, vil en hovedfunksjon bli kalt for å knytte alle funksjonalitet sammen. I tillegg Resultatet av strategien vil bli undersøkt via et plott av egenkapitalkurven. Pandas DataReader-objektet laster ned OHLCV-priser for AAPL-lager for perioden 1. januar 1990 til 1. januar 2002, hvoretter signalene DataFrame er opprettet for å generere den langvarige signaler Deretter genereres porteføljen med en startkapitalgrunnlag på 100 000 USD og avkastningen beregnes på egenkapitalkurven. Det endelige trinnet er å bruke matplotlib til å tegne en tofigurert plot av begge AAPL-prisene, overlagt med de bevegelige gjennomsnittene og kjøpe selger signaler, samt egenkapitalkurven med de samme kjøpesalgssignalene. Plottingskoden er tatt og modifisert fra zipline implementeringseksempel. Den grafiske produksjonen av co de 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 utgangen forblir i visning. Den rosa opptellingen representerer kjøp av aksjen, mens de svarte downticks representerer å selge den tilbake. AAPL Flytte gjennomsnittlig Crossover Performance fra 1990-01-01 til 2002-01-01. Som det kan sees, mister strategien penger over perioden, med fem rundturer. Dette er ikke overraskende gitt AAPLs oppførsel i perioden, som var etter en svak nedadgående trend, etterfulgt av en betydelig oppgang i 1998 Utsiktsperioden for de bevegelige gjennomsnittssignalene er ganske stor og dette påvirket resultatet av slutthandelen, noe som ellers kan ha gjort strategien lønnsom. I etterfølgende artikler vil vi skape en mer sofistikert måte å analysere ytelse på, samt å beskrive hvordan man optimaliserer tilbakekallingsperioder av de enkelte bevegelige gjennomsnittlige signaler. Bare å komme i gang med kvantitativ handel. alders - og eksponensielle utjevningsmodeller. Som et første skritt i å bevege seg ut over gjennomsnittlige modeller, kan tilfeldige gangmodeller og lineære trendmodeller, nonseasonal mønstre og trender ekstrapoleres ved hjelp av en gjennomsnittlig eller utjevningsmodell. Den grunnleggende forutsetningen bak gjennomsnittlige og utjevningsmodeller er at tidsseriene er lokalt stasjonære med et sakte varierende gjennomsnitt. Derfor tar vi et lokalt lokalt gjennomsnitt for å estimere nåverdien av gjennomsnittet og deretter bruke det som prognosen for nær fremtid. Dette kan betraktes som et kompromiss mellom den gjennomsnittlige modellen og Den samme strategien kan brukes til å estimere og ekstrapolere en lokal trend. Et glidende gjennomsnitt kalles ofte en glatt versjon av den opprinnelige serien, fordi kortsiktig gjennomsnittsverdi har til hensikt å utjevne støtene i den originale serien Ved å justere graden av utjevning av bredde av det bevegelige gjennomsnittet, kan vi håpe å finne noen form for optimal balanse mellom ytelsen til den gjennomsnittlige og tilfeldige gangmodeller Den enkleste typen gjennomsnittsmodell er det enkle, likevektede flytende gjennomsnittet. Forventningen for verdien av Y på tidspunktet t 1 som er laget ved tid t, er lik det enkle gjennomsnittet av de nyeste m-observasjonene. Her og andre steder vil jeg bruke symbolet Y-hatten til å utgjøre en prognose av tidsserien Y laget så tidlig som mulig før en bestemt modell. Dette gjennomsnittet er sentrert i perioden t-m 1 2, noe som innebærer at estimatet av det lokale gjennomsnittet vil ha en tendens til å ligge bak den sanne verdien av det lokale gjennomsnittet med ca. m 1 2 perioder. Således sier vi at gjennomsnittsalderen for dataene i det enkle glidende gjennomsnittet er m 1 2 i forhold til perioden for prognosen beregnes dette er hvor lang tid prognosene vil ha til å ligge bak vendepunkter i dataene. For eksempel, hvis du er gjennomsnittlig de siste 5 verdiene, vil prognosene være ca 3 perioder sent i å svare på vendepunkt. Merk at hvis m 1, Den enkle glidende SMA-modellen er ekvivalent med den tilfeldige turmodellen uten vekst Hvis m er veldig stor i forhold til lengden av estimeringsperioden, er SMA-modellen tilsvarlig for den gjennomsnittlige modellen. Som med hvilken som helst parameter i en prognosemodell, er det vanlig å justere verdien av ki n for å få den beste pasienten til dataene, dvs. de minste prognosefeilene i gjennomsnitt. Her er et eksempel på en serie som ser ut til å vise tilfeldige svingninger rundt et sakte varierende middel. Først må vi prøve å passe den med en tilfeldig spasertur modellen, som tilsvarer et enkelt bevegelige gjennomsnitt på 1 sikt. Den tilfeldige turmodellen reagerer veldig raskt på endringer i serien, men ved å gjøre det plukker mye av støyen i dataene de tilfeldige svingningene samt signalet den lokale mener Hvis vi i stedet prøver et enkelt glidende gjennomsnitt på 5 vilkår, får vi et smidigere sett med prognoser. Det 5-termens enkle glidende gjennomsnittet gir betydelig mindre feil enn den tilfeldige turmodellen i dette tilfellet Gjennomsnittsalderen for dataene i dette prognosen er 3 5 1 2, slik at den har en tendens til å ligge bak vendepunkter med om lag tre perioder. For eksempel synes det å ha oppstått en nedgang i perioden 21, men prognosene vender seg ikke til flere perioder senere. langsiktige prognoser fra SMA mod el er en horisontal rett linje, akkurat som i den tilfeldige turmodellen. Således antar SMA-modellen at det ikke er noen trend i dataene. Mens prognosene fra den tilfeldige turmodellen ganske enkelt er lik den siste observerte verdien, vil prognosene fra SMA-modellen er lik et vektet gjennomsnitt av de siste verdiene. Forsikringsgrensene beregnes av Statgraphics for de langsiktige prognosene for det enkle glidende gjennomsnittet, blir ikke større enn forventningshorisonten øker. Dette er åpenbart ikke riktig. Dessverre er det ingen underliggende statistisk teori som forteller oss hvordan konfidensintervallene skal utvides for denne modellen. Det er imidlertid ikke så vanskelig å beregne empiriske estimater av konfidensgrensene for lengre horisont-prognoser. For eksempel kan du sette opp et regneark der SMA-modellen vil bli brukt til å prognose 2 trinn foran, 3 trinn foran osv. i den historiske dataprøven. Du kan deretter beregne utvalgsstandardavvikene til feilene ved hver prognose h orizon, og deretter konstruere konfidensintervaller for langsiktige prognoser ved å legge til og trekke ut multipler av passende standardavvik. Hvis vi prøver et 9-glatt simpelt glidende gjennomsnitt, får vi enda jevnere prognoser og mer av en slående effekt. Gjennomsnittsalderen er nå 5 perioder 9 1 2 Hvis vi tar et 19-årig glidende gjennomsnitt, øker gjennomsnittsalderen til 10. Merk at prognosene nå ligger nede etter vendepunkter med ca 10 perioder. Hvor mye utjevning er best for denne serien Her er et bord som sammenligner deres feilstatistikk, også inkludert et 3-årig gjennomsnitt. Modell C, det 5-årige glidende gjennomsnittet, gir den laveste verdien av RMSE med en liten margin over 3 og 9-siktene, og deres andre statistikker er nesten identiske Så, blant modeller med svært like feilstatistikk, kan vi velge om vi foretrekker litt mer respons eller litt mer glatt i prognosene. Tilbake til toppen av siden. Bronse s Enkel eksponensiell utjevning eksponentielt vektet glidende gjennomsnitt. Den enkle bevegelige gjennomsnittsmodellen beskrevet ovenfor har den uønskede egenskapen som den behandler de siste k-observasjonene, like og fullstendig ignorerer alle foregående observasjoner. Intuitivt bør tidligere data diskonteres på en gradvis måte - for eksempel bør den nyeste observasjonen få litt mer vekt enn 2. siste, og den 2. siste skal få litt mer vekt enn den 3. siste, og så videre. Den enkle eksponensielle utjevning SES-modellen oppnår dette. La oss angi en utjevningskonstant et tall mellom 0 og 1 En måte å skrive modellen på er å definere en serie L som representerer det nåværende nivået, dvs. lokal middelverdi av serien som estimert fra data til nåtid. Verdien av L til tid t beregnes rekursivt fra sin egen tidligere verdi som dette. Den nåværende glatteverdien er således en interpolasjon mellom den forrige glattede verdien og den nåværende observasjonen, hvor kontrollen av nærheten til den interpolerte verdien til de mest re cent observasjon Prognosen for neste periode er bare den nåværende glatteverdien. Tilsvarende kan vi uttrykke neste prognose direkte i forhold til tidligere prognoser og tidligere observasjoner, i en hvilken som helst av følgende ekvivalente versjoner. I den første versjonen er prognosen en interpolering mellom forrige prognose og forrige observasjon. I den andre versjonen blir neste prognose oppnådd ved å justere forrige prognose i retning av den forrige feilen med en brøkdel. erroren til tid t I den tredje versjonen er prognosen en eksponentielt vektet dvs. nedsatt glidende gjennomsnitt med rabattfaktor 1.Interpoleringsversjonen av prognoseformelen er den enkleste å bruke hvis du implementerer modellen på et regneark det passer i en enkelt celle og inneholder cellehenvisninger som peker på forrige prognose, den forrige observasjon, og cellen der verdien av er lagret. Merk at hvis 1, SES-modellen er ekvivalent med en tilfeldig turmodell med trevekst Hvis 0 er SES-modellen ekvivalent med middelmodellen, forutsatt at den første glattede verdien er satt lik gjennomsnittet Tilbake til toppen av siden. Gjennomsnittsalderen for dataene i den enkle eksponensielle utjevningsprognosen er 1 relativ til den perioden som prognosen beregnes for. Dette er ikke ment å være åpenbart, men det kan enkelt vises ved å evaluere en uendelig serie. Derfor har den enkle glidende gjennomsnittlige prognosen en tendens til å ligge bak vendepunkter med ca. 1 perioder. For eksempel når 0 5 Laget er 2 perioder når 0 2 Laget er 5 perioder når 0 1 Laget er 10 perioder, og så videre. For en gitt gjennomsnittsalder, dvs. mengdeforsinkelse, er den enkle eksponensielle utjevning SES-prognosen noe bedre enn den enkle bevegelsen gjennomsnittlig SMA-prognose fordi den plasserer relativt mer vekt på den siste observasjonen - det er litt mer lydhør overfor endringer som skjedde i nyere tid. For eksempel har en SMA-modell med 9 vilkår og en SES-modell med 0 2 begge en gjennomsnittlig alder av 5 for da ta i sine prognoser, men SES-modellen legger mer vekt på de siste 3 verdiene enn SMA-modellen, og samtidig gliser den ikke helt over verdier som er mer enn 9 perioder gamle, som vist i dette diagrammet. En annen viktig fordel ved SES-modellen over SMA-modellen er at SES-modellen bruker en utjevningsparameter som er kontinuerlig variabel, slik at den enkelt kan optimaliseres ved å bruke en solveralgoritme for å minimere gjennomsnittlig kvadratfeil. Den optimale verdien av SES-modellen for denne serien viser seg å være 0 2961, som vist her. Gjennomsnittlig alder av dataene i denne prognosen er 1 0 2961 3 4 perioder, noe som ligner på et 6-rent simpelt gjennomsnitt. De langsiktige prognosene fra SES-modellen er en horisontal rettlinje som i SMA-modellen og den tilfeldige turmodellen uten vekst. Vær imidlertid oppmerksom på at konfidensintervallene som beregnes av Statgraphics, divergerer nå på en rimelig måte, og at de er vesentlig smalere enn konfidensintervaller for rand om gangmodellen SES-modellen antar at serien er noe mer forutsigbar enn den tilfeldige turmodellen. En SES-modell er egentlig et spesielt tilfelle av en ARIMA-modell, slik at den statistiske teorien om ARIMA-modeller gir et godt grunnlag for å beregne konfidensintervall for SES-modell Spesielt er en SES-modell en ARIMA-modell med en ikke-sesongforskjell, en MA 1-term, og ingen konstant term, ellers kjent som en ARIMA 0,1,1-modell uten konstant. MA 1-koeffisienten i ARIMA-modellen tilsvarer kvantum 1 i SES-modellen For eksempel, hvis du passer på en ARIMA 0,1,1 modell uten konstant til serien analysert her, viser den estimerte MA 1-koeffisienten seg å være 0 7029, som nesten er nesten en minus 0 2961. Det er mulig å legge til antagelsen om en ikke-null konstant lineær trend på en SES-modell. For å gjøre dette, bare angi en ARIMA-modell med en ikke-sesongforskjell og en MA 1-term med en konstant, dvs. en ARIMA 0,1,1 modell med konstant De langsiktige prognosene vil da har en trend som er lik den gjennomsnittlige trenden observert over hele estimeringsperioden. Du kan ikke gjøre dette i forbindelse med sesongjustering, fordi sesongjusteringsalternativene er deaktivert når modelltypen er satt til ARIMA. Du kan imidlertid legge til en konstant lang langsiktig eksponensiell trend til en enkel eksponensiell utjevningsmodell med eller uten sesongjustering ved å benytte inflasjonsjusteringsalternativet i prospektprosedyren. Den aktuelle inflasjonsprosentveksten per periode kan estimeres som hellingskoeffisienten i en lineær trendmodell som er montert på dataene i sammen med en naturlig logaritme transformasjon, eller det kan være basert på annen uavhengig informasjon om langsiktige vekstutsikter. Tilbake til toppen av siden. Brett s Lineær, dvs. dobbel eksponensiell utjevning. SMA-modellene og SES-modellene antar at det ikke er noen trend av noe som helst i dataene som vanligvis er OK eller i det minste ikke for dårlig for 1-trinns prognoser når dataene er relativt nei sy, og de kan endres for å inkorporere en konstant lineær trend som vist over. Hva med kortsiktige trender Hvis en serie viser en varierende veksthastighet eller et syklisk mønster som skiller seg klart ut mot støyen, og hvis det er behov for å prognose mer enn 1 år framover, kan estimering av en lokal trend også være et problem. Den enkle eksponensielle utjevningsmodellen kan generaliseres for å oppnå en lineær eksponensiell utjevning av LES-modell som beregner lokale estimater av både nivå og trend. Den enkleste tidsvarierende trenden modellen er Brown s lineær eksponensiell utjevningsmodell, som bruker to forskjellige glatte serier som er sentrert på forskjellige tidspunkter. Forutsigelsesformelen er basert på en ekstrapolering av en linje gjennom de to sentrene. En mer sofistikert versjon av denne modellen, Holt s, er diskuteres nedenfor. Den algebraiske formen av Browns lineære eksponensielle utjevningsmodell, som for den enkle eksponensielle utjevningsmodellen, kan uttrykkes i en rekke forskjellige, men e kvivalente former Standardformen til denne modellen uttrykkes vanligvis som følger. La S betegne den enkeltglattede serien som er oppnådd ved å anvende enkel eksponensiell utjevning til serie Y Det er verdien av S ved period t gitt av. Husk at under enkel eksponensiell utjevning ville dette være prognosen for Y ved periode t 1 Så la S betegne den dobbeltslettede serien oppnådd ved å anvende enkel eksponensiell utjevning ved å bruke det samme til serie S. Til slutt er prognosen for Y tk for noen k 1, gis av. Dette gir e 1 0, dvs lurer litt, og la den første prognosen ligne den faktiske første observasjonen, og e 2 Y 2 Y 1 hvoretter prognosene genereres ved hjelp av ligningen over. Dette gir de samme monterte verdiene som formelen basert på S og S dersom sistnevnte ble startet med S 1 S 1 Y 1 Denne versjonen av modellen brukes på neste side som illustrerer en kombinasjon av eksponensiell utjevning med sesongjustering. Helt s lineær eksponensiell utjevning. s LES-modellen beregner lokale estimater av nivå og trend ved å utjevne de siste dataene, men det faktum at det gjør det med en enkelt utjevningsparameter, stiller en begrensning på datamønstrene som det er i stand til å passe nivået og trenden, ikke tillates å variere ved uavhengige priser Holt s LES-modellen løser dette problemet ved å inkludere to utjevningskonstanter, en for nivået og en for trenden. På et hvilket som helst tidspunkt t, som i Browns modell, er det et estimat L t på lokalt nivå og et estimat T t av den lokale trenden Her beregnes de rekursivt fra verdien av Y observert ved tid t og de forrige estimatene av nivået og trenden ved to likninger som gjelder eksponensiell utjevning til dem separat. Hvis estimert nivå og trend ved tid t-1 er henholdsvis L t 1 og T t 1, vil prognosen for Y t som ville vært blitt gjort på tidspunktet t-1 være lik L t-1 T t 1 Når den virkelige verdien observeres, vil det oppdaterte estimatet av nivå beregnes rekursivt ved å interpolere mellom Y t og dets prognose, L t-1 T t-1, med vekt på og 1. Forandringen i estimert nivå, nemlig L t L t 1, kan tolkes som en støyende måling av trend på tiden t Det oppdaterte estimatet av trenden beregnes deretter rekursivt ved å interpolere mellom L t L t 1 og det forrige estimatet av trenden, T t-1 ved bruk av vekt og 1.Tolkningen av trend-utjevningskonstanten er analog med den for nivåutjevningskonstanten. Modeller med små verdier antar at trenden endrer seg bare veldig sakte over tid, mens modeller med større antar at det endrer seg raskere. En modell med en stor mener at den fjerne fremtiden er veldig usikker, fordi feil i trendberegning blir ganske viktig når prognose for mer enn en periode fremover. Tilbake til toppen av side. Utjevningskonstantene og kan estimeres på vanlig måte ved å minimere den gjennomsnittlige kvadriske feilen i 1-trinns prognosene. Når dette gjøres i Statgraphics, viser estimatene seg å være 0 3048 og 0 008. Den svært små verdien av betyr at modellen antar svært liten endring i trenden fra en periode til den neste. Så i utgangspunktet prøver denne modellen å estimere en langsiktig trend. I analogi med begrepet gjennomsnittlig alder av dataene som brukes til estimering av t Han lokale nivå av serien, er gjennomsnittsalderen for dataene som brukes til å estimere den lokale trenden, proporsjonal med 1, men ikke akkurat lik den. I dette tilfellet viser det sig å være 1 0 006 125 Dette er ikke veldig presis tall forutsatt at nøyaktigheten av estimatet ikke er virkelig 3 desimaler, men det er av samme generelle størrelsesorden som prøvestørrelsen på 100, så denne modellen er gjennomsnittlig over ganske mye historie for å estimere trenden. Prognosen nedenfor viser at LES-modellen anslår en litt større lokal trend på slutten av serien enn den konstante trenden som er estimert i SES-trendmodellen. Den estimerte verdien er nesten identisk med den som oppnås ved å montere SES-modellen med eller uten trend , så dette er nesten den samme modellen. Nå ser disse ut som rimelige prognoser for en modell som skal estimere en lokal trend. Hvis du eyeball denne plottet, ser det ut som om den lokale trenden har vendt nedover på slutten av serie Wh ved har skjedd Parametrene til denne modellen har blitt estimert ved å minimere den kvadratiske feilen i 1-trinns prognoser, ikke langsiktige prognoser, i hvilket tilfelle trenden ikke gjør stor forskjell. Hvis alt du ser på er 1 Forsinkede feil ser du ikke det større bildet av trender over si 10 eller 20 perioder. For å få denne modellen mer i tråd med øye-ekstrapoleringen av dataene, kan vi manuelt justere trendutjevningskonstanten slik at den bruker en kortere basislinje for trendestimering. For eksempel, hvis vi velger å angi 0 1, er gjennomsnittsalderen for dataene som brukes til å estimere den lokale trenden, 10 perioder, noe som betyr at vi gjennomsnittsverdi trenden over de siste 20 perioder eller så Her ser prognoseplottet ut om vi stiller 0 1 mens du holder 0 3 Dette ser intuitivt rimelig ut på denne serien, selv om det er sannsynligvis farlig å ekstrapolere denne trenden mer enn 10 perioder i fremtiden. Hva med feilstatistikken her er en modell sammenligning f eller de to modellene som er vist ovenfor, samt tre SES-modeller. Den optimale verdien av SES-modellen er ca. 0 3, men tilsvarende resultater med litt mer eller mindre respons er henholdsvis oppnådd med 0 5 og 0 2. En Holt s lineær utglatting med alfa 0 3048 og beta 0 008. B Holt s lineær utjevning med alfa 0 3 og beta 0 1. C Enkel eksponensiell utjevning med alfa 0 5. D Enkel eksponensiell utjevning med alfa 0 3. E Enkel eksponensiell utjevning med alfa 0 2.De statistikkene er nesten identiske, slik at vi virkelig ikke kan velge på grunnlag av 1-trinns prognosefeil i dataprøven. Vi må falle tilbake på andre hensyn. Hvis vi sterkt tror at det er fornuftig å basere dagens trendoverslag over hva som har skjedd i løpet av de siste 20 perioder, kan vi gjøre et tilfelle for LES-modellen med 0 3 og 0 1 Hvis vi vil være agnostiker om det er en lokal trend, kan en av SES-modellene være enklere å forklare og vil også gi mer middl e-of-the-road prognoser for de neste 5 eller 10 periodene. Tilbake til toppen av siden. Hvilken type trend-ekstrapolering er best horisontal eller lineær? Empiriske bevis tyder på at hvis dataene allerede er justert om nødvendig for inflasjon, så Det kan være uhensiktsmessig å ekstrapolere kortsiktige lineære trender svært langt inn i fremtiden. Trender som tydeligvis i dag kan løsne seg i fremtiden på grunn av ulike årsaker som forverring av produkt, økt konkurranse og konjunkturnedganger eller oppgang i en bransje. Derfor er enkel eksponensiell utjevning utføres ofte bedre ut av prøven enn det ellers kunne forventes, til tross for den naive horisontale trendenes ekstrapolering. Dampede trendmodifikasjoner av den lineære eksponensielle utjevningsmodellen brukes også i praksis til å introdusere en konservatismeddel i dens trendfremskrivninger. Den dempede trenden LES-modellen kan implementeres som et spesielt tilfelle av en ARIMA-modell, spesielt en ARIMA 1,1,2-modell. Det er mulig å beregne konfidensintervall arou nd langsiktige prognoser produsert av eksponentielle utjevningsmodeller, ved å betrakte dem som spesielle tilfeller av ARIMA-modeller Pass på at ikke alle programmer beregner konfidensintervall for disse modellene riktig. Bredden på konfidensintervaller avhenger av RMS-feilen i modellen, ii typen av utjevning enkel eller lineær iii verdien av utjevningskonstanten s og iv antall perioder fremover du progniserer Generelt sprer intervallene raskere som blir større i SES-modellen, og de sprer seg mye raskere når de er lineære i stedet for enkle utjevning er brukt Dette emnet blir diskutert videre i ARIMA-modellene i notatene. Gå tilbake til toppen av siden.
Comments
Post a Comment