Tuesday, 31 October 2017

Eksponentielt Veide Moving Average Filter Matlab


Utforsking av eksponentielt vektet Flytende Gjennomsnittlig volatilitet er det vanligste risikobilledet, men det kommer i flere smaker. I en tidligere artikkel viste vi hvordan du kan beregne enkel historisk volatilitet. (For å lese denne artikkelen, se Bruke volatilitet for å måle fremtidig risiko.) Vi brukte Googles faktiske aksjekursdata for å beregne den daglige volatiliteten basert på 30 dagers lagerdata. I denne artikkelen vil vi forbedre den enkle volatiliteten og diskutere eksponentielt vektet glidende gjennomsnitt (EWMA). Historisk Vs. Implisitt volatilitet Først kan vi sette denne metriske inn i litt perspektiv. Det er to brede tilnærminger: historisk og underforstått (eller implisitt) volatilitet. Den historiske tilnærmingen antar at fortid er prolog, vi måler historie i håp om at det er forutsigbart. Implisitt volatilitet, derimot, ignorerer historien den løser for volatiliteten underforstått av markedsprisene. Det håper at markedet vet best, og at markedsprisen inneholder, selv om det implisitt er, et konsensusoverslag over volatiliteten. Hvis du fokuserer på bare de tre historiske tilnærmingene (til venstre over), har de to trinn til felles: Beregn serien av periodisk avkastning Bruk en vektingsplan Først må vi beregne periodisk avkastning. Det er vanligvis en serie av daglige avkastninger der hver retur er uttrykt i kontinuerlig sammensatte vilkår. For hver dag tar vi den naturlige loggen av forholdet mellom aksjekursene (det vil si prisen i dag fordelt på pris i går, og så videre). Dette gir en rekke daglige avkastninger, fra deg til deg i-m. avhengig av hvor mange dager (m dager) vi måler. Det får oss til det andre trinnet: Det er her de tre tilnærmingene er forskjellige. I den forrige artikkelen (Bruk av volatilitet for å måle fremtidig risiko) viste vi at det med noen akseptable forenklinger er den enkle variansen gjennomsnittet av kvadreret retur: Legg merke til at dette beløper hver periodisk avkastning, og deler deretter den totale av antall dager eller observasjoner (m). Så, det er egentlig bare et gjennomsnitt av den kvadratiske periodiske avkastningen. Sett på en annen måte, hver kvadret retur blir gitt like vekt. Så hvis alfa (a) er en vektningsfaktor (spesifikt en 1m), ser en enkel varians slik ut: EWMA forbedrer seg på enkel variasjon Svakheten i denne tilnærmingen er at alle avkastningene tjener samme vekt. Yesterdays (veldig nylig) avkastning har ingen større innflytelse på variansen enn de siste månedene tilbake. Dette problemet er løst ved å bruke det eksponentielt vektede glidende gjennomsnittet (EWMA), der nyere avkastning har større vekt på variansen. Det eksponentielt vektede glidende gjennomsnittet (EWMA) introduserer lambda. som kalles utjevningsparameteren. Lambda må være mindre enn en. Under denne betingelsen, i stedet for likevekter, vektlegges hver kvadret retur med en multiplikator på følgende måte: RiskMetrics TM, et finansiell risikostyringsfirma, har en tendens til å bruke en lambda på 0,94 eller 94. I dette tilfellet er den første ( siste) kvadratiske periodiske avkastningen er vektet av (1-0.94) (.94) 0 6. Den neste kvadrerade retur er bare et lambda-flertall av den tidligere vekten i dette tilfellet 6 multiplisert med 94 5,64. Og den tredje forrige dagens vekt er lik (1-0,94) (0,94) 2 5,30. Det er betydningen av eksponensiell i EWMA: hver vekt er en konstant multiplikator (dvs. lambda, som må være mindre enn en) av den tidligere dagens vekt. Dette sikrer en variasjon som er vektet eller forspent mot nyere data. (For å lære mer, sjekk ut Excel-regnearket for Googles volatilitet.) Forskjellen mellom bare volatilitet og EWMA for Google er vist nedenfor. Enkel volatilitet veier effektivt hver periodisk avkastning med 0,196 som vist i kolonne O (vi hadde to års daglig aksjekursdata. Det er 509 daglige avkastninger og 1509 0,196). Men merk at kolonne P tildeler en vekt på 6, deretter 5,64, deretter 5,3 og så videre. Det er den eneste forskjellen mellom enkel varians og EWMA. Husk: Etter at vi summerer hele serien (i kolonne Q) har vi variansen, som er kvadratet av standardavviket. Hvis vi vil ha volatilitet, må vi huske å ta kvadratroten av den variansen. Hva er forskjellen i den daglige volatiliteten mellom variansen og EWMA i Googles tilfelle. Det er signifikant: Den enkle variansen ga oss en daglig volatilitet på 2,4, men EWMA ga en daglig volatilitet på bare 1,4 (se regnearket for detaljer). Tilsynelatende avviklet Googles volatilitet mer nylig, derfor kan en enkel varianse være kunstig høy. Dagens variasjon er en funksjon av Pior Days Variance Du vil legge merke til at vi trengte å beregne en lang rekke eksponentielt avtagende vekter. Vi vil ikke gjøre matematikken her, men en av EWMAs beste egenskaper er at hele serien reduserer til en rekursiv formel: Rekursiv betyr at dagens variansreferanser (dvs. er en funksjon av tidligere dager varians). Du kan også finne denne formelen i regnearket, og det gir nøyaktig samme resultat som longhandberegningen. Det står: Dagens varians (under EWMA) er lik ydersidens varians (veid av lambda) pluss yderdagskvadret retur (veid av en minus lambda). Legg merke til hvordan vi bare legger til to begreper sammen: Yesterdays weighted variance og yesterdays weighted, squared return. Likevel er lambda vår utjevningsparameter. En høyere lambda (for eksempel som RiskMetrics 94) indikerer tregere forfall i serien - relativt sett vil vi ha flere datapunkter i serien, og de kommer til å falle av sakte. På den annen side, hvis vi reduserer lambda, indikerer vi høyere forfall: vikene faller av raskere, og som et direkte resultat av det raske forfallet blir færre datapunkter benyttet. (I regnearket er lambda en inngang, slik at du kan eksperimentere med følsomheten). Sammendrag Volatilitet er den øyeblikkelige standardavviket for en aksje og den vanligste risikometrisk. Det er også kvadratroten av variansen. Vi kan måle variansen historisk eller implisitt (implisitt volatilitet). Når man måler historisk, er den enkleste metoden enkel varians. Men svakheten med enkel varians er alle returene får samme vekt. Så vi står overfor en klassisk avvei: vi vil alltid ha mer data, men jo flere data vi har jo mer vår beregning er fortynnet av fjernt (mindre relevante) data. Det eksponentielt vektede glidende gjennomsnittet (EWMA) forbedres på enkel varians ved å tildele vekt til periodisk retur. Ved å gjøre dette kan vi begge bruke en stor utvalgsstørrelse, men gi også større vekt til nyere avkastninger. (For å se en filmopplæring om dette emnet, besøk Bionic Turtle.) Eksponentielt filter Denne siden beskriver eksponensiell filtrering, det enkleste og mest populære filteret. Dette er en del av avsnittet Filtrering som er en del av En veiledning til feilsøking og diagnose. Oversikt, tidskonstant og analoge ekvivalenter Det enkleste filteret er eksponensielt filter. Den har bare en innstillingsparameter (annet enn prøveintervallet). Det krever lagring av bare én variabel - den forrige utgangen. Det er et IIR (autoregressivt) filter - virkningene av en inngangsendring forfall eksponentielt inntil grensene for skjermer eller dataregning skjuler det. I ulike discipliner benyttes også dette filteret som 8220exponential smoothing8221. I noen disipliner som investeringsanalyse kalles eksponentielt filter en 8220Exponentielt vektet bevegelig gjennomsnittlig8221 (EWMA), eller bare 8220Exponential Moving Average8221 (EMA). Dette misbruker den tradisjonelle ARMA 8220moving average8221 terminologien av tidsserieanalyse, siden det ikke er noen innloggingshistorikk som brukes - bare gjeldende inngang. Det er den diskrete tidsekvivalenten til 8220 første orden lag8221 som vanligvis brukes i analog modellering av kontinuerlig kontrollsystemer. I elektriske kretser er et RC-filter (filter med en motstand og en kondensator) en førsteordringsforsinkelse. Når man understreker analogien til analoge kretser, er single tuning parameteren 8220time constant8221, vanligvis skrevet som små bokstaver gresk bokstav Tau (). Faktisk stemmer verdiene på de diskrete prøvetidene nøyaktig overens med ekvivalent kontinuerlig tidsforsinkelse med samme tidskonstant. Forholdet mellom digital implementering og tidskonstanten er vist i ligningene under. Eksponentielle filterligninger og initialisering Det eksponensielle filteret er en vektet kombinasjon av det forrige estimatet (utgang) med de nyeste inntastingsdataene, med summen av vektene lik 1 slik at utgangen stemmer overens med inngangen ved steady state. Følgende filternotasjon er allerede innført: y (k) ay (k-1) (1-a) x (k) hvor x (k) er den råinngangen på tidspunktet trinn ky (k) er den filtrerte utgangen på tidspunktet trinn ka er en konstant mellom 0 og 1, vanligvis mellom 0,8 og 0,99. (a-1) eller a kalles noen ganger 8220smoothing constant8221. For systemer med et fast tidssteg T mellom prøver blir konstanten 8220a8221 beregnet og lagret for enkelhets skyld bare når applikasjonsutvikleren spesifiserer en ny verdi av ønsket tidskonstant. For systemer med datasampling i uregelmessige intervaller, må den eksponensielle funksjonen ovenfor brukes med hvert trinn, hvor T er tiden siden forrige prøve. Filterutgangen blir vanligvis initialisert for å matche den første inngangen. Når tidskonstanten nærmer seg 0, går a til null, så det er ingen filtrering 8211 utgangen er lik den nye inngangen. Som tidskonsentrasjonen blir veldig stor, en tilnærming 1, slik at ny inngang nesten ignoreres 8211 veldig tung filtrering. Filter-ligningen ovenfor kan omarrangeres til følgende prediktor-korrigerende ekvivalent: Dette skjemaet gjør det mer tydelig at variabelestimatet (utgang av filteret) er forutsatt som uendret fra forrige estimat y (k-1) pluss en korreksjonsperiode basert på den uventede 8220innovation8221 - forskjellen mellom den nye inngangen x (k) og prediksjonen y (k-1). Dette skjemaet er også et resultat av å avlede det eksponensielle filteret som et enkelt spesielt tilfelle av et Kalman-filter. som er den optimale løsningen på et estimeringsproblem med et bestemt sett av antagelser. Trinnrespons En måte å visualisere driften av eksponensielt filter på er å plotte sitt svar over tid til en trinninngang. Det vil si, med utgangspunkt i filterinngang og - utgang ved 0, endres inngangsverdien plutselig til 1. De resulterende verdiene er plottet under: I det ovennevnte tegnet deles tiden med filtertidskonstanten tau, slik at du lettere kan forutsi Resultatene for en hvilken som helst tidsperiode, for en hvilken som helst verdi av filtertidskonstanten. Etter en tid som er lik tidskonstanten, øker filterutgangen til 63,21 av den endelige verdien. Etter en tid lik 2 tidskonstanter, øker verdien til 86,47 av sin endelige verdi. Utgangene etter tidene lik 3,4 og 5 tidskonstanter er henholdsvis 95,02, 98,17 og 99,33 av sluttverdien. Siden filteret er lineært betyr dette at disse prosentene kan brukes til hvilken som helst størrelsesorden av trinnendringen, ikke bare for verdien av 1 som brukes her. Selv om trinnresponsen i teorien tar en uendelig tid, tenker det fra det praktiske synspunkt på det eksponensielle filteret som 98 til 99 8220done8221 som svarer etter en tid lik 4 til 5 filtertidskonstanter. Variasjoner på det eksponensielle filteret Det er en variasjon av det eksponensielle filteret som kalles et 8220 ikke-lineært eksponensielt filter8221 Weber, 1980. ment å sterkt filtrere støy innenfor en bestemt 8220typical8221 amplitude, men deretter reagere raskere på større endringer. Copyright 2010 - 2013, Greg Stanley Del denne siden: Dokumentasjon Dette eksemplet viser hvordan du bruker glidende gjennomsnittsfiltre og resampling for å isolere effekten av periodiske komponenter på tidspunktet for dagen på timelastemperaturavlesning, samt fjerne uønsket linjestøy fra en åpen - spenningsmåling. Eksemplet viser også hvordan du kan glatte nivået på et klokke signal mens du beholder kantene ved å bruke et medianfilter. Eksemplet viser også hvordan man bruker et Hampel filter for å fjerne store utjevninger. Motivasjonsutjevning er hvordan vi oppdager viktige mønstre i våre data mens du utelater ting som er ubetydelige (dvs. støy). Vi bruker filtrering for å utføre denne utjevningen. Målet med utjevning er å produsere lave verdiendringer, slik at det er enklere å se trender i våre data. Noen ganger når du undersøker inndata, kan det hende du ønsker å glatte dataene for å se en trend i signalet. I vårt eksempel har vi et sett med temperaturmålinger i Celsius tatt hver time på Logan flyplass for hele januar måned 2011. Merk at vi visuelt kan se effekten som tiden på dagen har på temperaturavlesningene. Hvis du bare er interessert i den daglige temperaturvariasjonen i løpet av måneden, bidrar timelengsfluktene bare med støy, noe som kan gjøre det vanskelig å skille dagens variasjoner. For å fjerne effekten av tidspunktet på dagen, vil vi nå glatte ut dataene våre ved å bruke et glidende gjennomsnittsfilter. Et flytende gjennomsnittsfilter I sin enkleste form tar et glidende gjennomsnittlig filter med lengde N gjennomsnittet av hver N påfølgende bølgeform. For å bruke et glidende gjennomsnittsfilter til hvert datapunkt, konstruerer vi våre koeffisienter for filteret vårt slik at hvert punkt er likevektet og bidrar 124 til det totale gjennomsnittet. Dette gir oss gjennomsnittstemperaturen over hver 24-timers periode. Filterforsinkelse Merk at filtrert utgang forsinkes med ca. tolv timer. Dette skyldes det faktum at vårt bevegelige gjennomsnittlige filter har en forsinkelse. Ethvert symmetrisk filter med lengde N vil ha en forsinkelse på (N-1) 2 prøver. Vi kan rapportere denne forsinkelsen manuelt. Utvinning av gjennomsnittlige forskjeller Alternativt kan vi også bruke det bevegelige gjennomsnittlige filteret for å få et bedre estimat av hvordan tidspunktet på dagen påvirker den totale temperaturen. For å gjøre dette, må du først trekke ut glatte data fra timetemperaturmålingene. Deretter segmenter de forskjellige dataene i dager og tar gjennomsnittet over alle 31 dager i måneden. Utvinning av toppkuvert Noen ganger vil vi også ha et jevnt varierende estimat av hvordan høyde og nedturer av temperatursignalet endres daglig. For å gjøre dette kan vi bruke konvoluttfunksjonen til å koble til ekstreme høyder og nedturer oppdaget over en delmengde av 24-timersperioden. I dette eksemplet sikrer vi at det er minst 16 timer mellom hver ekstrem høy og ekstrem lav. Vi kan også få en følelse av hvordan høyder og nedturer er trending ved å ta gjennomsnittet mellom de to ytterpunktene. Veidede Flytte gjennomsnittlige filtre Andre typer bevegelige gjennomsnittlige filtre veier ikke hver prøve like mye. Et annet vanlig filter følger binomial utvidelsen av (12,12) n Denne typen filter tilnærmer en normal kurve for store verdier på n. Det er nyttig for å filtrere ut høyfrekvent støy for små n. For å finne koeffisientene for binomialfilteret, konvolver 12 12 med seg selv og deretter iterativt konvolver utgangen med 12 12 et foreskrevet antall ganger. I dette eksemplet bruker du fem totale iterasjoner. Et annet filter som ligner på det gaussiske ekspansjonsfilteret er eksponentiell glidende gjennomsnittsfilter. Denne typen vektet glidende gjennomsnittsfilter er enkelt å konstruere og krever ikke en stor vindusstørrelse. Du justerer et eksponentielt vektet glidende gjennomsnittlig filter med en alfaparameter mellom null og en. En høyere verdi av alpha vil ha mindre utjevning. Zoom inn på avlesningene i en dag. Velg ditt land

No comments:

Post a Comment