Friday 22 December 2017

Glidande medelvärde signal matlab


Flytta medeltal - Enkla och exponentiella rörliga medelvärden - Enkel och exponentiell Introduktion Flyttande medelvärden släpper prisdata för att bilda en trendföljande indikator. De förutspår inte prisriktningen, men definierar snarare den nuvarande riktningen med en fördröjning. Flyttande medelvärden försenas eftersom de är baserade på tidigare priser. Trots denna fördröjning hjälper glidande medelvärden till en jämn prisåtgärd och filtrerar bort bullret. De utgör också byggstenar för många andra tekniska indikatorer och överlagringar, som Bollinger Bands. MACD och McClellan Oscillatorn. De två mest populära typerna av glidande medelvärden är Simple Moving Average (SMA) och Exponentential Moving Average (EMA). Dessa glidande medelvärden kan användas för att identifiera riktningens riktning eller definiera potentiella stöd - och motståndsnivåer. Här är ett diagram med både en SMA och en EMA på den: Enkel rörlig medelberäkning Ett enkelt glidande medelvärde bildas genom att beräkna det genomsnittliga priset på en säkerhet under ett visst antal perioder. De flesta glidande medelvärden är baserade på slutkurs. Ett 5-dagars enkelt glidande medelvärde är den fem dagars summan av slutkurserna dividerat med fem. Som namnet antyder är ett glidande medelvärde ett medel som rör sig. Gamla data släpps när nya data kommer att finnas tillgängliga. Detta medför att medelvärdet flyttas längs tidsskalan. Nedan är ett exempel på ett 5-dagars glidande medelvärde som utvecklas över tre dagar. Den första dagen i glidande medel täcker helt enkelt de senaste fem dagarna. Den andra dagen i glidande medel faller den första datapunkten (11) och lägger till den nya datapunkten (16). Den tredje dagen i glidande medel fortsätter genom att släppa den första datapunkten (12) och lägga till den nya datapunkten (17). I exemplet ovan ökar priserna gradvis från 11 till 17 över totalt sju dagar. Observera att det rörliga genomsnittet också stiger från 13 till 15 över en tre dagars beräkningsperiod. Observera också att varje glidande medelvärde ligger strax under det sista priset. Till exempel är det rörliga genomsnittet för dag ett lika med 13 och det sista priset är 15. Priserna de föregående fyra dagarna var lägre och det medför att det rörliga genomsnittet försvinner. Exponentiell rörlig medelberäkning Exponentiell glidande medelvärden minskar fördröjningen genom att tillämpa mer vikt på de senaste priserna. Den vikt som tillämpas på det senaste priset beror på antalet perioder i glidande medelvärde. Det finns tre steg för att beräkna ett exponentiellt rörligt medelvärde. Beräkna först det enkla glidande medlet. Ett exponentiellt rörligt medelvärde (EMA) måste starta någonstans så att ett enkelt glidande medelvärde används som föregående period039s EMA i den första beräkningen. För det andra, beräkna viktnings multiplikatorn. Tredje, beräkna exponentiell glidande medelvärde. Formeln nedan är för en 10-dagars EMA. Ett 10-årigt exponentiellt glidande medel gäller en 18,18 viktning till det senaste priset. En 10-årig EMA kan också kallas en 18.18 EMA. En 20-årig EMA tillämpar en vägar på 9,52 till det senaste priset (2 (201) .0952). Observera att viktningen för den kortare tidsperioden är mer än vikten för den längre tidsperioden. I själva verket sjunker vikten med hälften varje gång den glidande medeltiden fördubblas. Om du vill ha en viss procentandel för en EMA kan du använda denna formel för att konvertera den till tidsperioder och ange det där värdet som EMA039-parametern: Nedan är ett kalkylblad exempel på ett 10-dagars enkelt glidande medelvärde och en 10- dag exponentiell glidande medelvärde för Intel. Enkla glidande medelvärden är rakt framåt och kräver liten förklaring. 10-dagars genomsnittet rör sig helt enkelt eftersom nya priser blir tillgängliga och gamla priser faller av. Det exponentiella glidande medlet börjar med det enkla glidande medelvärdet (22,22) i den första beräkningen. Efter den första beräkningen tar den normala formeln över. Eftersom en EMA börjar med ett enkelt glidande medelvärde, kommer dess sanna värde inte att realiseras förrän 20 eller så perioder senare. Med andra ord kan värdet på Excel-kalkylbladet skilja sig från diagramvärdet på grund av den korta återkallningsperioden. Detta kalkylblad går bara tillbaka 30 perioder, vilket innebär att påverkan av det enkla glidande medlet har haft 20 perioder att försvika. StockCharts går tillbaka minst 250 perioder (vanligtvis mycket längre) för dess beräkningar, så effekterna av det enkla glidande medlet i den första beräkningen har helt försvunnit. Lagfaktorn Ju längre glidande medelvärde desto mer är fördröjningen. Ett 10-dagars exponentiellt glidande medelvärde kommer att krama priserna ganska nära och vända sig strax efter prissättningen. Korta glidande medelvärden är som fartygsbåtar - snygga och snabba att byta. Däremot innehåller ett 100-dagars glidande medelvärde massor av tidigare data som saktar ner det. Längre glidande medelvärden är som havs tankfartyg - slö och långsam att förändras. Det tar en större och längre prisrörelse för ett 100-dagars glidande medelvärde för att ändra kursen. Diagrammet ovan visar SampP 500 ETF med 10-dagars EMA-efterföljande priser och en 100-dagars SMA-slipning högre. Även med nedgången i januari-februari höll den 100-dagars SMA kursen och avstod inte. 50-dagars SMA passar någonstans mellan 10 och 100 dagars glidande medelvärden när det gäller lagfaktorn. Enkelt mot exponentiella rörliga medelvärden Även om det finns tydliga skillnader mellan enkla rörliga medelvärden och exponentiella glidmedel är en inte nödvändigtvis bättre än den andra. Exponentiella glidande medelvärden har mindre fördröjning och är därför mer känsliga för de senaste priserna - och de senaste prisförändringarna. Exponentiella glidande medelvärden kommer att vända före enkla glidande medelvärden. Enkla glidande medelvärden representerar däremot ett sannt genomsnitt av priser för hela tidsperioden. Som sådana kan enkla glidande medelvärden vara bättre lämpade för att identifiera stöd - eller motståndsnivåer. Flyttande medelpreferens beror på mål, analysstil och tidshorisont. Chartister ska experimentera med båda typerna av glidande medelvärden samt olika tidsramar för att hitta den bästa passformen. Tabellen nedan visar IBM med 50-dagars SMA i rött och 50-dagars EMA i grönt. Båda toppade i slutet av januari, men nedgången i EMA var skarpare än minskningen i SMA. EMA vände sig upp i mitten av februari, men SMA fortsatte lägre till slutet av mars. Observera att SMA visade sig över en månad efter EMA. Längder och tidsplaner Längden på glidande medel beror på de analytiska målen. Korta glidande medelvärden (5-20 perioder) passar bäst för kortsiktiga trender och handel. Chartister intresserade av medellångsiktiga trender skulle välja längre glidmedel som kan sträcka sig 20-60 perioder. Långsiktiga investerare föredrar att flytta medeltal med 100 eller flera perioder. Vissa glidande medellängder är mer populära än andra. 200-dagars glidande medelvärde är kanske den mest populära. På grund av dess längd är detta tydligt ett långsiktigt glidande medelvärde. Därefter är det 50-dagars glidande medlet ganska populärt för den medellånga trenden. Många kartläggare använder de 50 dagars och 200 dagars glidande medelvärdena tillsammans. På kort sikt var ett 10-dagars glidande medelvärde ganska populärt tidigare eftersom det var lätt att beräkna. Man lade enkelt till siffrorna och flyttade decimalpunkten. Trend Identification Samma signaler kan genereras med hjälp av enkla eller exponentiella glidande medelvärden. Som ovan nämnts beror preferensen på varje individ. Dessa exempel nedan kommer att använda både enkla och exponentiella glidande medelvärden. Termen glidande medel gäller både enkla och exponentiella glidande medelvärden. Rörelsens genomsnittliga riktning ger viktig information om priserna. Ett stigande glidande medelvärde visar att priserna i allmänhet ökar. Ett fallande rörligt genomsnitt indikerar att priserna i genomsnitt faller. Ett stigande långsiktigt glidande medelvärde speglar en långsiktig uppgång. Ett fallande långsiktigt glidande medel återspeglar en långsiktig nedåtgående trend. Diagrammet ovan visar 3M (MMM) med ett 150-dagars exponentiellt rörligt medelvärde. I det här exemplet visas hur bra glidande medelvärden fungerar när trenden är stark. 150-dagars EMA avslogs i november 2007 och igen i januari 2008. Observera att det tog 15 nedgångar för att vända riktningen för detta glidande medelvärde. Dessa eftersläpande indikatorer identifierar trendbackbacker när de uppträder (i bästa fall) eller efter att de uppträder (i värsta fall). MMM fortsatte under mars 2009 och ökade sedan 40-50. Observera att 150-dagars EMA inte vände sig fram till efter denna överskott. När det gjorde det fortsatte MMM dock de närmaste 12 månaderna. Rörliga medelvärden arbetar briljant i starka trender. Double Crossovers Två glidande medelvärden kan användas tillsammans för att generera crossover-signaler. I Teknisk Analys av Finansmarknaden. John Murphy kallar det för dubbla crossover-metoden. Dubbelkorsningar omfattar ett relativt kort glidande medelvärde och ett relativt långt glidande medelvärde. Som med alla glidande medelvärden definierar den allmänna längden på glidande medel tidsramen för systemet. Ett system med en 5-dagars EMA och 35-dagars EMA skulle anses vara kortsiktig. Ett system med en 50-dagars SMA och 200-dagars SMA skulle anses vara på medellång sikt, kanske till och med på lång sikt. En haussead crossover uppträder när det kortare glidande medelvärdet passerar över det längre glidande medlet. Detta är också känt som ett gyllene kors. En baisse crossover uppträder när det kortare glidande medelvärdet korsar det längre glidande medlet. Detta är känt som ett dött kors. Flyttande genomsnittliga övergångar ger relativt sena signaler. Systemet använder trots allt två nedslagsindikatorer. Ju längre de rörliga genomsnittliga perioderna desto större är fördröjningen i signalerna. Dessa signaler fungerar bra när en bra trend tar hand. Ett glidande medelvärdesöverföringssystem kommer emellertid att producera massor av whipsaws i avsaknad av en stark trend. Det finns också en trippel crossover-metod som innefattar tre glidande medelvärden. Återigen genereras en signal när det kortaste glidande medelvärdet passerar de två längre glidande medelvärdena. Ett enkelt tredubbelt crossover-system kan innebära 5-dagars, 10-dagars och 20-dagars glidande medelvärden. Diagrammet ovan visar Home Depot (HD) med en 10-dagars EMA (grön prickad linje) och 50-dagars EMA (röd linje). Den svarta linjen är den dagliga stängningen. Genom att använda ett glidande medelvärde skulle det ha resulterat i tre whipsaws innan man fick en bra handel. 10-dagars EMA bröt under 50-dagars EMA i slutet av oktober (1), men det varade inte länge då 10-dagarna flyttade tillbaka ovan i mitten av november (2). Detta kors varade längre, men nästa bearish crossover i januari (3) inträffade nära prisnivåerna i slutet av november, vilket resulterade i en annan whipsaw. Det här baisse korset varade inte länge då 10-dagars EMA flyttade tillbaka över 50-dagen några dagar senare (4). Efter tre dåliga signaler föreslog den fjärde signalen ett starkt drag när stocken avancerade över 20. Det finns två takeaways här. För det första är övergångar benägna att piska. Ett pris - eller tidsfilter kan användas för att undvika whipsaws. Handlare kan kräva överkorsningen senast 3 dagar före skådespel eller kräva att 10-dagars EMA flyttar överbelasta 50-dagars EMA med en viss summa innan de agerar. För det andra kan MACD användas för att identifiera och kvantifiera dessa övergångar. MACD (10,50,1) kommer att visa en linje som representerar skillnaden mellan de två exponentiella glidande medelvärdena. MACD blir positiv under ett gyllene kors och negativt under ett dött kors. Percentageprisoscillatorn (PPO) kan användas på samma sätt för att visa procentuella skillnader. Observera att MACD och PPO är baserade på exponentiella glidmedel och matchar inte med enkla glidande medelvärden. Detta diagram visar Oracle (ORCL) med 50-dagars EMA, 200-dagars EMA och MACD (50,200,1). Det fanns fyra glidande medelvärde över en 2 12-årig period. De första tre resulterade i whipsaws eller dåliga affärer. En hållbar trend började med den fjärde crossover som ORCL avancerade till mitten av 20-talet. Återigen fungerar glidande genomsnittliga övergångar bra när trenden är stark, men producerar förluster i avsaknad av en trend. Prisövergångar Flyttande medelvärden kan också användas för att generera signaler med enkla prisövergångar. En bullish signal genereras när priserna rör sig över det glidande medlet. En bearish signal genereras när priserna flyter under det glidande medlet. Prisövergångar kan kombineras för handel inom den större trenden. Det längre glidande mediet sätter tonen för den större trenden och det kortare glidande medlet används för att generera signalerna. Man skulle leta efter hausse priskorsar endast när priserna redan ligger över det längre glidande genomsnittet. Detta skulle handla i harmoni med den större trenden. Till exempel, om priset ligger över 200-dagars glidande medelvärde, skulle kartläggare bara fokusera på signaler när priset rör sig över 50-dagars glidande medelvärde. Självfallet skulle ett drag under 50-dagars glidande medelvärde föregå en sådan signal, men sådana baisseövergångar skulle ignoreras eftersom den större trenden är uppe. Ett baisse kors skulle helt enkelt föreslå en återhämtning inom en större uptrend. Ett kors bakom 50-dagars glidande medelvärde skulle signalera en uppgång i priserna och fortsättningen av den större uptrenden. Nästa diagram visar Emerson Electric (EMR) med 50-dagars EMA och 200-dagars EMA. Aktien flyttades över och hölls över det 200-dagars glidande genomsnittet i augusti. Det fanns dips under 50-dagars EMA i början av november och igen i början av februari. Priserna flyttade sig snabbt tillbaka över 50-dagars EMA för att ge positiva signaler (gröna pilar) i harmoni med den större uptrenden. MACD (1,50,1) visas i indikatorfönstret för att bekräfta prisövergångar över eller under 50-dagars EMA. Den 1-dagars EMA är lika med slutkursen. MACD (1,50,1) är positiv när stängningen ligger över 50-dagars EMA och negativ när stängningen ligger under 50-dagars EMA. Stöd och motstånd Flyttande medelvärden kan också fungera som stöd i en uptrend och motstånd i en downtrend. En kortsiktig uppgång kan hitta stöd nära det 20-dagars enkla glidande medlet, vilket också används i Bollinger Bands. En långsiktig uppgång kan hitta stöd nära det 200-dagars enkla glidande medlet, vilket är det mest populära långsiktiga glidande medlet. Om faktum kan det 200-dagars glidande genomsnittet erbjuda stöd eller motstånd helt enkelt för att den används så mycket. Det är nästan som en självuppfyllande profetia. Diagrammet ovan visar NY Composite med det 200-dagars enkla glidande medlet från mitten av 2004 till slutet av 2008. Den 200-dagarslevererade supporten talar flera gånger under förskottet. När trenden var omvänd med en dubbelstöd, var det 200 dagars glidande medelvärdet som motstånd runt 9500. Förvänta dig inte exakt stöd och motståndsnivåer från glidande medelvärden, särskilt längre glidande medelvärden. Marknader drivs av känslor, vilket gör dem benägna att överskridas. Istället för exakta nivåer kan glidande medelvärden användas för att identifiera stöd - eller motståndszoner. Slutsatser Fördelarna med att använda glidande medelvärden måste vägas mot nackdelarna. Flyttande medelvärden är trenden som följer eller sänker indikatorer som alltid kommer att vara ett steg bakom. Detta är dock inte nödvändigtvis en dålig sak. Trenden är trots allt din vän och det är bäst att handla i riktning mot trenden. Flytta medelvärden försäkra att en näringsidkare är i linje med den nuvarande trenden. Trots att trenden är din vän, spenderar värdepapper mycket tid i handelsområdena, vilket gör rörliga medeltal ineffektiva. En gång i en trend kommer glidande medelvärden att hålla dig i, men också ge sena signaler. Don039t förväntar sig att sälja högst upp och köpa i botten med hjälp av glidande medelvärden. Som med de flesta tekniska analysverktyg bör rörliga medelvärden inte användas på egen hand, men i kombination med andra kompletterande verktyg. Chartister kan använda glidande medelvärden för att definiera den övergripande trenden och sedan använda RSI för att definiera överköpta eller överlämnade nivåer. Lägga till rörliga medelvärden till StockCharts-diagrammen Flyttande medelvärden är tillgängliga som prisöverlagringsfunktion på SharpCharts arbetsbänk. Med hjälp av rullgardinsmenyn Överlag kan användarna välja antingen ett enkelt glidande medelvärde eller ett exponentiellt glidande medelvärde. Den första parametern används för att ställa in antalet tidsperioder. En valfri parameter kan läggas till för att ange vilket prisfält som ska användas i beräkningarna - O för Öppna, H för Hög, L för Låg och C för Stäng. Ett komma används för att separera parametrar. En annan valfri parameter kan läggas till för att flytta de glidande medelvärdena till vänster (tidigare) eller höger (framtid). Ett negativt tal (-10) skulle flytta det glidande medlet till de 10 vänstra 10 perioderna. Ett positivt tal (10) skulle flytta det glidande medlet till de högra 10 perioderna. Flera glidande medelvärden kan överlagras prissättet genom att helt enkelt lägga till en annan överlagringslinje till arbetsbänken. StockCharts medlemmar kan ändra färger och stil för att skilja mellan flera glidande medelvärden. När du har valt en indikator öppnar du Avancerade alternativ genom att klicka på den lilla gröna triangeln. Avancerade alternativ kan också användas för att lägga till ett glidande genomsnittligt överlag till andra tekniska indikatorer som RSI, CCI och Volume. Klicka här för ett live-diagram med flera olika glidande medelvärden. Använda rörliga medelvärden med StockCharts-skanningar Här är några exempelskanningar som StockCharts-medlemmar kan använda för att söka efter olika rörliga genomsnittssituationer: Bullish Moving Average Cross: Dessa skanningar söker efter aktier med ett stigande 150-dagars enkelt glidande medelvärde och ett hausseartat kors på 5 - dag EMA och 35-dagars EMA. Det 150-dagars rörliga genomsnittet stiger så länge det handlar över sin nivå för fem dagar sedan. Ett hausseartat kors uppträder när 5-dagars EMA rör sig över 35-dagars EMA på över genomsnittlig volym. Bearish Moving Average Cross: Dessa scanningar letar efter lager med ett fallande 150-dagars enkelt glidande medelvärde och ett baisse kors av 5-dagars EMA och 35-dagars EMA. Det 150-dagars glidande genomsnittet faller så länge det handlar under sin nivå för fem dagar sedan. Ett baisse kors uppstår när 5-dagars EMA flyttas under 35-dagars EMA på över genomsnittlig volym. Ytterligare studie John Murphy039s bok har ett kapitel som ägnas åt glidande medelvärden och deras olika användningsområden. Murphy täcker för och nackdelar med glidande medelvärden. Dessutom visar Murphy hur glidande medelvärden arbetar med Bollinger Bands och kanalbaserade handelssystem. Teknisk analys av finansmarknaderna John Murphy29 september 2013 Flyttande medelvärde genom convolution Vad rör sig i genomsnitt och vad är det bra för Hur rör sig medelvärdet genom att använda konvoltering Flyttande medelvärde är en enkel operation som vanligtvis används för att undertrycka ljud av en signal: vi ställer in värdet av varje punkt till genomsnittet av värdena i dess grannskap. Med en formel: Här är x ingången och y är utsignalen, medan storleken på fönstret är w, skulle vara udda. Formeln ovan beskriver en symmetrisk operation: proven tas från båda sidor av den aktuella punkten. Nedan är ett verkligt exempel. Den punkt som fönstret ligger faktiskt är rött. Värden utanför x är tänkt att vara nollor: Att leka och se effekterna av glidande medelvärde, ta en titt på denna interaktiva demonstration. Hur man gör det genom konvoltering Som du kanske har insett, räknar man med det enkla glidande medlet liknar konvolutionen: i båda fallen glider ett fönster längs signalen och elementen i fönstret sammanfattas. Så försök att göra samma sak genom att använda convolution. Använd följande parametrar: Den önskade utgången är: Som första tillvägagångssätt, låt oss försöka vad vi får genom att samla x-signalen med följande k-kärna: Utsignalen är exakt tre gånger större än den förväntade. Det kan också ses att utgångsvärdena är sammanfattningen av de tre elementen i fönstret. Det beror på att under fönstret glider fönstret, alla element i det multipliceras med en och sedan sammanfattas: yk 1 cdot x 1 cdot x 1 cdot x För att få önskade värden på y. utgången ska delas med 3: Med en formel inklusive divisionen: Men skulle det inte vara optimalt att göra uppdelningen under konvoltering Här kommer tanken genom att omordna ekvationen: Så vi ska använda följande k-kärna: På så sätt kommer vi att få önskad produktion: Generellt: om vi vill göra glidande medelvärde genom convolution som har en fönsterstorlek på w. vi ska använda följande k-kärna: En enkel funktion som gör det rörliga medlet är: Ett exempel är: Ladda ner movAv. m (se även movAv2 - en uppdaterad version som tillåter viktning) Beskrivning Matlab innehåller funktioner som kallas movavg och tsmovavg genomsnittet) i Financial Toolbox är movAv utformat för att replikera de grundläggande funktionaliteten för dessa. Koden här ger ett bra exempel på hantering av index inom slingor, vilket kan vara förvirrande till att börja med. Ive hålls medvetet koden kort och enkel att hålla processen klar. movAv utför ett enkelt glidande medelvärde som kan användas för att återställa bullriga data i vissa situationer. Det fungerar genom att ta en medelvärde av ingången (y) över ett glidande tidsfönster, vars storlek anges av n. Ju större n är, desto större blir utjämningen av effekten av n i förhållande till längden på ingångsvektorn y. och effektivt (bra slags) skapar ett lågpassfrekvensfilter - se avsnittet exempel och överväganden. Eftersom mängden utjämning som tillhandahålls av varje värde av n är relativt längden på ingångsvektorn, är det alltid värt att testa olika värden för att se vad som är lämpligt. Kom också ihåg att n poäng går förlorade vid varje genomsnitt om n är 100, innehåller de första 99 punkterna i ingångsvektorn inte tillräckligt med data för ett 100pt-medelvärde. Detta kan undvikas något genom att stapla medelvärden, till exempel, koden och grafen nedan jämför ett antal olika längdfönstermedelvärden. Lägg märke till hur jämn 1010pt jämförs med ett enda 20pt-medelvärde. I båda fallen förloras totalt 20 data. Skapa xaxis x1: 0.01: 5 Generera brusbrusReps 4 bullerrepmat (randn (1, ceil (numel (x) noiseReps)), noiseReps, 1) brusreformer (brus, 1, längd (brus) noiseReps) Generera ydata noise yexp x) 10noise (1: längd (x)) Per genomsnittvärden: y2 movAv (y, 10) 10 pt y3 movAv (y2, 10) 1010 pt y4 movAv (y, 20) 20 pt y5 movAv (y, 40) 40 pt y6 movAv (y, 100) 100 pt Plottbildsplot (x, y, y2, y3, y4, y5, y6) legend (Rådata, 10pt glidande medelvärde, 1010pt, 20pt, 40pt, 100pt) xlabel (x) ylabel y) titel (Jämförelse av rörliga medelvärden) movAv. m-kod genomgångsfunktion output movAv (y, n) Den första raden definierar funktionsnamn, ingångar och utgångar. Inmatningen x borde vara en vektor med data för att utföra medelvärdet, n skulle vara antalet punkter som ska utföra det genomsnittliga överutmatningen kommer att innehålla den genomsnittliga data som returneras av funktionen. Fördela utgångsutgångNaN (1, numel (y)) Hitta mittpunkten i n midPoint-runda (n2) Funktionens huvuduppgift görs i loopbandet, men innan man börjar startas två saker. För det första fördelas utdelningen som NaNs, detta tjänade två syften. För det första är förallokering i allmänhet god praxis eftersom det minskar minnesjugglingen Matlab måste göra, för det andra gör det mycket enkelt att placera den genomsnittliga data i en utmatning som är lika stor som ingångsvektorn. Det betyder att samma xaxis kan användas senare för båda, vilket är lämpligt för plottning, alternativt kan NaN: erna tas bort senare i en rad kod (utgångsutgången (Den variabla midPoint kommer att användas för att rikta in data i utmatningsvektorn. n 10, 10 poäng kommer att gå vilse eftersom för de första 9 punkterna av ingångsvektorn finns det inte tillräckligt med data för att ta 10 poäng. Eftersom utmatningen kommer att vara kortare än ingången måste den justeras korrekt. användas så att en lika stor mängd data går förlorad vid start och slut, och ingången hålls inriktad med utgången av NaN-buffertarna som skapas vid preallokering av utgången. För en 1: längd (y) - n Hitta indexintervall för att ta medeltal över (a: b) förbud Beräkna medelvärde (amidpunkt) medelvärde (y (a: b)) slutet I själva loopbandet tas ett medel över varje på varandra följande segment av ingången. Slingan körs för a. definierad som 1 upp till längden på ingången (y), minus de data som kommer att gå vilse (n). Om ingången är 100 poäng lo ng och n är 10 kommer slingan att springa från (a) 1 till 90. Detta betyder att det första segmentets index blir genomsnittligt. Det andra indexet (b) är helt enkelt an-1. Så vid första iterationen, a1. n10. så b 11-1 10. Det första genomsnittet tas över y (a: b). eller x (1:10). Medelvärdet för det här segmentet, som är ett enda värde, lagras i utgången på index amidPoint. eller 156. Vid den andra iterationen, a2. b 210-1 11. så medelvärdet tas över x (2:11) och lagras i utgången (7). Vid den sista iterationen av slingan för en ingång av längden 100, a91. b 9010-1 100 så medelvärdet tas över x (91: 100) och lagras i utgången (95). Detta lämnar utdata med totalt n (10) NaN-värden vid index (1: 5) och (96: 100). Exempel och överväganden Flytta medelvärden är användbara i vissa situationer, men de är inte alltid det bästa valet. Här är två exempel där de inte nödvändigtvis är optimala. Mikrofonkalibrering Denna uppsättning data representerar nivåerna för varje frekvens som produceras av en högtalare och inspelad av en mikrofon med känt linjärt svar. Högtalarens utgång varierar med frekvens, men vi kan korrigera för denna variation med kalibreringsdata - utgången kan justeras på nivå för att beräkna fluktuationerna i kalibreringen. Observera att rådata är bullriga - det betyder att en liten förändring i frekvens tycks kräva en stor, oregelbunden nivåförändring för att redovisa. Är detta realistiskt eller är detta en produkt av inspelningsmiljön. Det är rimligt att i detta fall tillämpa ett glidande medelvärde som släpper ut nivåfrekvenskurvan för att ge en kalibreringskurva som är något mindre ojämn. Men varför är det inte optimalt i det här exemplet? Mer data skulle vara bättre - flera kalibreringar körs i genomsnitt tillsammans skulle förstöra bruset i systemet (så länge det är slumpmässigt) och ge en kurva med mindre subtila detaljer förlorade. Det rörliga genomsnittet kan bara approximera detta och kan ta bort några högre frekvensdips och toppar från den kurva som verkligen existerar. Sinvågor Med hjälp av ett rörligt medelvärde på sinusvågor framhävs två punkter: Den allmänna frågan om att välja ett rimligt antal poäng för att utföra medelvärdet över. Det är enkelt, men det finns mer effektiva metoder för signalanalys än genomsnittliga oscillerande signaler i tidsdomänen. I denna graf kartläggs den ursprungliga sinusvågen i blått. Buller läggs till och ritas som apelsinskurvan. Ett glidande medel utförs vid olika antal punkter för att se om den ursprungliga vågen kan återvinnas. 5 och 10 poäng ger rimliga resultat, men ta inte bort bullret helt, där så större antal punkter börjar förlora amplituddetalj som medeltalet sträcker sig över olika faser (kom ihåg att vågoscillerar runt noll och medelvärdet (-1 1) 0) . Ett alternativt tillvägagångssätt skulle vara att konstruera ett lågpassfilter än vad som kan appliceras på signalen i frekvensdomänen. Jag tänker inte gå in i detalj eftersom det går utöver omfattningen av denna artikel, men eftersom bruset är betydligt högre frekvens än vågens grundläggande frekvens, skulle det vara ganska lätt att i detta fall konstruera ett lågpassfilter än att avlägsna högfrekvensen ljud.

No comments:

Post a Comment