Wednesday, October 5, 2016

Eksponensiële Bewegende Gemiddelde Iir

Die eksponensiële bewegende gemiddelde is 'n tipe van IIR filter wat is maklik om te implementeer in C en gebruik minimale hulpbronne. In teenstelling met 'n eenvoudige bewegende gemiddelde, beteken dit nie vereis dat 'n geheue buffer na vorige monsters te stoor. Dit het net een waarde (die vorige gemiddelde) te stoor. 'N eksponensiële bewegende gemiddelde is uitgedruk as die volgende vergelyking: avgn (in alfa) avgn-1 (1-alfa). Implementering van hierdie vergelyking met behulp van drywende punt wiskunde is eenvoudig, maar die gebruik van vaste punt veranderlikes is 'n bietjie lastig. Die kode uit hier gebruik 32-bis onderteken heelgetalle vir die gemiddelde en insetwaardes. Intermediêre waardes moet 64-bit wiskunde gebruik om oorloop foute te vermy. Alpha waardes naby aan nul verteenwoordig swaar gemiddelde, terwyl 'n alfa waarde van 'n mens nie gemiddeld. Kommentaar: Op die lyn waar temp0 bereken, ek glo dat die einde van die lyn moet lees (65535 - Alpha) Anders n alfa van 1 onbehoorlik sou insluit die vorige gemiddelde sowel as die nuwe value. FIR filters, IIR filters, en die lineêre konstante-koëffisiënt verskilvergelyking Kousale bewegende gemiddelde (FIR) Comments nie Weve bespreek stelsels waarin elke monster van die produksie is 'n geweegde som van (sekere van die) die monsters van die insette. Kom ons neem 'n oorsaaklike geweegde som stelsel, waar oorsaaklike beteken dat 'n gegewe uitset monster hang net af van die huidige insette monster en ander insette vroeër in die ry. Nóg lineêre stelsels in die algemeen nie, en eindig impulsrespons stelsels in die besonder, moet oorsaaklike wees. Maar oorsaaklikheid is gerieflik vir 'n soort van analise wat op pad was om gou te verken. As ons simboliseer die insette as waardes van 'n vektor x. en die uitgange as die ooreenstemmende waardes van 'n vektor y. dan so 'n stelsel kan geskryf word as waar die b waardes quotweightsquot toegepas word om die huidige en vorige insette monsters om die huidige uitset monster te kry. Ons kan dink aan die uitdrukking as 'n vergelyking met die gelykaanteken wat beteken gelykes, of as 'n prosedurele onderrig, met die gelykaanteken wat beteken opdrag. Kom ons skryf die uitdrukking vir elke uitset monster as 'n MATLAB lus van opdrag state, waar x is 'n N-lengte vektor van insette monsters, en b is 'n M-lengte vektor van gewigte. Ten einde te gaan met die spesiale geval aan die begin, sal ons x insluit in 'n meer vektor xhat wie se eerste M-1 monsters is nul. Ons sal die geweegde opsomming vir elke y (N) as 'n innerlike produk te skryf, en sal 'n paar wysigings van die insette te doen (soos b omkeer) vir hierdie doel. Hierdie soort stelsel word dikwels bekend as 'n bewegende gemiddelde filter, vir ooglopende redes. Van ons vroeër besprekings, moet dit duidelik dat so 'n stelsel is lineêre en verskuiwing-invariante wees. Natuurlik sou dit baie vinniger wees om die MATLAB konvolusie funksie conv (gebruik) in plaas van ons mafilt (). In plaas van die oorweging van die eerste M-1 monsters van die insette tot nul, ons hulle kan oorweeg om dieselfde as die laaste M-1 monsters wees. Dit is dieselfde as die behandeling van die insette as periodieke. Wel gebruik cmafilt () as die naam van die funksie, 'n klein verandering van die vroeër mafilt () funksie. In die bepaling van die impulsrespons van 'n stelsel, is daar gewoonlik geen verskil tussen die twee, aangesien alle nie-aanvanklike monsters van die insette is nul: Aangesien 'n stelsel van hierdie aard is lineêre en skuif-invariante, ons weet dat die uitwerking daarvan op enige sinusgolf sal slegs volgens skaal en skuif dit. Hier is dit sake wat ons gebruik die omsendbrief weergawe Die sirkulêr-gekonvuleerde weergawe geskuif en afgeskaal 'n bietjie, terwyl die weergawe met gewone konvolusie verwring aan die begin. Kom ons kyk wat die presiese skalering en verskuiwing is deur die gebruik van 'n FFT: Beide toevoer en afvoer het amplitude net by frekwensies 1 en -1, wat is soos dit moet wees, aangesien die insette was 'n sinusgolf en die stelsel was lineêre. Die uitset waardes groter deur 'n verhouding van 10,6251 / 8 1,3281. Dit is die wins van die stelsel. Wat van die fase Ons moet net om te kyk waar die amplitude is nie-nul: Die insette het 'n fase van pi / 2, soos ons versoek. Die uitset fase verskuif met 'n bykomende 1,0594 (met teenoorgestelde teken vir die negatiewe frekwensie), of oor 1/6 van 'n siklus van die reg, soos ons kan sien op die grafiek. Nou kan probeer om 'n sinusgolf met dieselfde frekwensie (1), maar in plaas van amplitude 1 en fase pi / 2, Kom ons probeer amplitude 1,5 en fase 0. Ons weet dat net frekwensie 1 en -1 nie-nul amplitude sal hê, so laat net kyk na hulle: weereens die amplitude verhouding (15,9377 / 12,0000) is 1,3281 - en as vir die fase dit weer verskuif deur 1,0594 as hierdie voorbeelde is tipiese, kan ons die effek van ons stelsel (impulsrespons 0,1 0,2 voorspel 0,3 0,4 0,5) op enige sinusgolf met frekwensie 1 - die amplitude sal verhoog word met 'n faktor van 1,3281 en die (positiewe frekwensie) fase sal verskuif deur 1,0594. Ons kan gaan op na die uitwerking van hierdie stelsel op sinusoïede van ander frekwensies bereken deur dieselfde metodes. Maar daar is 'n baie makliker manier, en een wat die algemene punt vestig. Sedert (omsendbrief) konvolusie in die tydgebied beteken vermenigvuldiging in die frekwensiedomein, daaruit volg dat Met ander woorde, die DFT van die impulsrespons is die verhouding van die DFT van die uitset na die DFT van die insette. In hierdie verband die DFT koëffisiënte is komplekse getalle. Sedert ABS (C1 / C2) ABS (c1) / ABS (C2) vir alle komplekse getalle C1, C2, hierdie vergelyking vertel ons dat die amplitude spektrum van die impulsrespons altyd die verhouding van die amplitude spektrum van die uitset na wat sal wees van die insette. In die geval van die fase spektrum, hoek (C1 / C2) hoek (c1) - hoek (C2) vir alle C1, C2 (word met dien verstande dat fases verskil deur n2pi gelyk beskou). Daarom is die fase spektrum van die impulsrespons sal altyd die verskil tussen die fase spektra van die uitset en die insette (met alles wat regstellings deur 2pi is nodig om die resultaat tussen - pi en pi hou) wees. Ons kan die fase-effekte sien meer duidelik as ons oop maak die voorstelling van fase, dit wil sê as ons verskeie veelvoude voeg van 2pi as wat nodig is om die spronge wat geproduseer word deur die periodieke aard van die () funksie hoek te verminder. Hoewel die amplitude en fase gewoonlik gebruik vir grafiese en selfs 'n tabel aanbieding, want hulle is 'n intuïtiewe manier om te dink oor die gevolge van 'n stelsel op die verskillende frekwensie komponente van sy insette, die komplekse Fourier koëffisiënte is meer nuttig algebraïes, omdat hulle toelaat die eenvoudige uitdrukking van die verhouding die algemene benadering wat ons so pas gesien sal saam met arbitrêre filters van die tipe geskets, waarin elke uitset monster is 'n geweegde som van sommige stel insette monsters. Soos vroeër genoem, is hierdie dikwels genoem Eindige Impulse Response filters, omdat die impulsrespons is van beperkte omvang, of soms Moving Gemiddelde filters. Ons kan die frekwensieweergawe kenmerke van so 'n filter van die FFT van sy impulsrespons te bepaal, en ons kan ook nuwe filters met gewenste eienskappe te ontwerp deur IFFT van 'n spesifikasie van die frekwensieweergawe. Outoregressiewe (IIR) Filters Daar sal min punt in 'name vir FIR filters wees, tensy daar was 'n paar ander soort (e) om hulle te onderskei van, en so diegene wat bestudeer pragmatiek sal nie verbaas wees om te verneem dat daar wel nog 'n groot soort lineêre tyd-invariante filter. Hierdie filters is soms genoem rekursiewe omdat die waarde van die vorige uitsette (asook vorige insette) aangeleenthede, hoewel die algoritmes in die algemeen geskryf met behulp van iteratiewe konstrukte. Hulle word ook genoem Oneindige Impulse Response (IIR) filters, want in die algemeen hul reaksie op 'n impuls gaan op tot in ewigheid. Hulle word ook soms genoem outoregressiewe filters, omdat die koëffisiënte kan beskou word as die gevolg van doen lineêre regressie te sein waardes uit te druk as 'n funksie van vroeër sein waardes. Die verhouding van EIR en OIR filters kan duidelik gesien word in 'n lineêre konstante-koëffisiënt verskilvergelyking, dit wil sê die oprigting van 'n geweegde som van uitsette gelykstaande aan 'n geweegde som van insette. Dit is soos die vergelyking wat ons vroeër het vir die oorsaaklike FIR filter, behalwe dat bykomend tot die geweegde som van insette, ons het ook 'n geweegde som van uitsette. As ons wil hê om te dink aan dit as 'n prosedure vir die opwekking van uitset monsters, moet ons die vergelyking herrangskik om 'n uitdrukking vir die huidige uitset monster y (N) te kry, die aanneming van die konvensie dat 'n (1) 1 (soos deur skalering ander as en BS), ons kan ontslae te raak van die 1 / n (1) term: y (n) b (1) x (n) b (2) x (n-1). b (LW1) x (N-NB) - 'n (2) y (N-1) -. - 'N (Na1) y (N-na) As al die n (N) buiten 'n (1) is nul, dit verminder na ons ou vriend die oorsaaklike FIR filter. Dit is die algemene geval van 'n (kousale) LTI filter, en geïmplementeer word deur die MATLAB funksie filter. Kom ons kyk na die geval waar die ander as b b koëffisiënte (1) is nul (in plaas van die FIR geval, waar die n (N) is nul): In hierdie geval, die huidige uitset monster y (N) word bereken as 'n geweegde kombinasie van die huidige insette monster x (n) en die vorige uitset monsters y (n-1), y (n-2), ens Om 'n idee te kry van wat gebeur met sulke filters kry, kan ons begin met die geval waar: dit wil sê, die huidige uitset monster is die som van die huidige insette monster en die helfte van die vorige uitset monster. Wel neem 'n inset impuls deur 'n paar keer stappe, een op 'n slag. Dit moet duidelik op hierdie punt dat ons maklik 'n uitdrukking vir die nde uitset monster waarde kan skryf: dit is net (As MATLAB getel vanaf 0, sou dit eenvoudig .5n wees). Sedert wat ons berekening is die impulsrespons van die stelsel, het ons gedemonstreer deur 'n voorbeeld dat die impulsrespons, want dit kan hê oneindig baie nie-nul monsters. Om hierdie triviale eerste-orde filter in MATLAB te implementeer, kan ons gebruik filter. Die oproep sal lyk: en die resultaat is: Is hierdie besigheid eintlik nog lineêr Ons kan kyk na hierdie empiries: Vir 'n meer algemene benadering, oorweeg die waarde van 'n uitset monster y (N). Deur opeenvolgende vervanging kan ons dit skryf, want dit is net soos ons ou vriend die konvolusie-som vorm van 'n FIR filter, met die impulsrespons deur die uitdrukking .5k. en die lengte van die impulsrespons om oneindig. So dieselfde argumente wat ons gebruik om te wys dat FIR filters was lineêre sal nou hier van toepassing. Tot dusver dit mag lyk soos 'n groot bohaai oor nie veel nie. Wat is hierdie hele lyn van ondersoek goed vir Wel beantwoord hierdie vraag in fases, wat begin met 'n voorbeeld. Dit is nie 'n groot verrassing dat ons kan bereken 'n gemonsterde eksponensiële deur rekursiewe vermenigvuldiging. Kom ons kyk na 'n rekursiewe filter dat daar iets minder voor die hand liggend nie. Hierdie keer goed maak dit 'n tweede-orde filter, sodat die oproep om te filter van die vorm sal wees Kom stel die tweede uitset koëffisiënt a2 om -2cos (2pi / 40), en die derde uitset koëffisiënt A3 tot 1, en kyk na die impulsrespons. Nie baie nuttig as 'n filter, eintlik, maar dit genereer 'n gemonsterde sinusgolf (van 'n impuls) met drie vermenigvuldig-voeg per monster Ten einde te verstaan ​​hoe en hoekom dit doen dit, en hoe rekursiewe filters kan ontwerp en in ontleed die meer algemene geval, moet ons terug te stap en 'n blik op 'n paar ander eienskappe van komplekse getalle, op pad na die begrip van die Z transform. Moore amp Moore Consultancy Services Securities and Tegniese Analise Digitale Filters - Eksponensiële Bewegende Gemiddeldes (1) Rekursiewe digitale filters Een manier om digitale filters te struktureer op 'n meer doeltreffende basis is om 'n paar te gebruik van die opbrengs en pas dit toe op die insette. Dit maak die filter rekursiewe as die uitset re voorkom in die insette, die maak van die filter verskyn oneindige lengte. As gevolg van hierdie hierdie filters het ook die naam Oneindige Impulse Response (IIR) filters, soos die reaksie kan voortgaan om oneindig In hierdie geval hierdie baie eenvoudige IIR filter het net een stadium en neem 'n (klein) persentasie van die vorige uitset. Die vergelyking vir hierdie eenvoudige IIR Digitale Filter is: skematies die tekening van hierdie baie eenvoudige IIR filter lyk dit onder die grafiek hieronder toon wat gebeur. Reeks 1 die dun stap insette, produseer die volgende tipiese verbygaande uitgange. Met 'n 9 waarde vir k dan k 0.09, dan Series 2 (die dik lyn) is die eerste tipiese verbygaande reaksie. As die persentasie (k) is gedaal tot 5 (k 0.05) dan Series 3 (die dun lyn onder Series 1) is die verwagte resultaat. Met k verder gedaal tot 1 (k 0,01) dan het ons reeks 4 (die stippellyn goed onder die ander twee uitgange) is die reaksie. Hierdie uitgange al volg eksponensiële tyd antwoorde. So, met 'n bietjie terugvoer wat ons het die eerder komplekse nie-rekursiewe filter verander in 'n eenvoudige rekursiewe filter met min of meer dieselfde frekwensie reaksie, maar 'n ander tyd reaksie Die IIR filter uitsetgolfvorm steeds vir ewig (tot oneindig) om saam te kom op die stabiele waarde, en dit is hoekom hierdie filters kry die naam Oneindige Impulse Response (IIR) filters. Die probleem is nou om hierdie antwoorde te bind sodat hulle met mekaar verband hou met beide tegniese Trading, die gemene deler is (normaalweg dae), en daarom is dit nodig om die rekursiewe faktor (k) verband in 'n tydperk faktor. Gelukkig is daar 'n gegewe direkte verhouding en dit is deur middel van die formule soos volg: Waar het ons besluit k 0.09, hierdie formule vat om 21,2222 periodes, en vir k 0.05, hierdie formule vat om 39,0 tydperke en vir k 0,01, hierdie formule vat om 199,0 tydperke. Gaan agteruit, ons regtig wil om uit te vind die k-faktor van die tydperk en deur die omzetting die formule word dit: So vir 11.0 Periodes dan k 0,1666666, vir 21.0 Periodes dan k 0,090909 en vir k 40.0 Periodes k dan 0,0487804 Dit alles lyk baie eenvoudig , maar die verhouding moet vasgemaak. Met verwysing na die grafiek is dit duidelik dat die tyd reaksie is 'n eksponensiële verval. In fisika land, al die natuurlike optrede volg 'n eksponensiële koers van lading en verval. Kyk na 'n put spoel: al varoosh aan die begin en dit eindig 'n druppel (voor die prop druppels in die tenk te hervul) Wanneer motor hoofligte blus hulle dowwe en donker gaan in 'n eksponensiële wyse. Dit is 'n natuurlike verskynsel oral Wanneer reën begin en stop val, reën digtheid met verloop van tyd is 'n eksponensiële funksie, en dit volg dieselfde eksponensiële verval reëls Terug in Elektroniese Land eksponensiële verrot is baie algemeen en die lading en ontlading keer gemeet word in 'n genormaliseerde benadering genoem tydkonstante (T). Een tydkonstante ontlaai tot ongeveer 37, twee tot ongeveer 14, drie tot sowat 5 vier tot ongeveer 1,8 en vyf tot sowat 0,6 - wat is basies niks Wanneer elektroniese komponente hef hulle die omgekeerde van die ontlading dws volg: 63, 86, 95 , 98,2, 99,4, ens met verwysing na die eenvoudige IIR Digitale Filter vergelyking waar dit is te reageer op 'n Heaviside trapfunksie, die aanklag kurwe het die volgende vergelyking: y (t) x (0). (1-exp t / T) Waar T tydkonstante (of tydperk) waarde. Die grafiek van hierdie vergelyking presies in lyn met die eenvoudige rekursiewe filter hierbo beskryf, so sal ook deur die toepassing van Heavisides Stap funksie (deur die tyd wat wissel insette 'n 1 in plaas van 'n 0) en dan vervang die tydperke wat die tyd faktor t (39) in die direk bo vergelyking, dan y (39) (1-exp -39 / T) 0,8646647 so 0,1353352 exp -39 / T en ln (0,1353352) -2 so exp -2 exp -39 / T so -2 -39 / T, en transponering, T 19.5 wat alles gedoen wat die Hoërskool wiskunde beteken dit basies beteken dat die gespesifiseerde aantal periodes in 'n eenvoudige rekursiewe filter is gelykstaande aan twee (2) tydkonstantes. Met ander woorde, wanneer ons spesifiseer 'n (sê) 100-dag rekursiewe filter, by die 100 ste dag, sal die opbrengs van die filter reaksie (uit 'n stap Input) gelyk dié van twee tydkonstante (86 van die maksimum bedrag). Ons het nou die wiskunde om die opbrengs van die filter akkuraat te voorspel uit enige bekende insette nie raai Dankie, Oliver Heaviside en diegene vroeër briljante wiskundiges Nou kan ons sy fundamentele wiskunde gebruik om die reaksie op 'n oprit te bereken, en die fout te Die op grafiek die linkerkant hieronder toon 'n 100-eenheid stap insette word toegepas op beide 'n SMA20 en 'n EMA20 filter, en die twee uitgange en duidelik gesien. Van die stap insette, die SMA20 uitset styg as 'n oprit totdat dit treffers die maksimum waarde net soos 'n keur koers beperkte versterker Die EMA20 styg vinnig dan val af om eksponensieel te asimptoties konvergeer op die stabiele opbrengs. Die twee uitgange te steek oor die 80 merk, en dit 'n verwysing na gebruik wanneer vergelyk 'n magdom van ander reaksies. Die onderstaande regterhand grafiek toon 'n IIR filter reaksie op 'n eenheid oprit (een vertikale posisie per horisontale stap). (Dit kan gekyk word as sê 1 sent per dag.) Hierdie keer k 0,15 sodat die tydperke 12,33333, en die tydkonstante (T) is dus 6,166667 Periodes. Die Eenheid Ramp is die reguit stippellyn dun positiewe helling lyn en onder dit is die dik lyn uitset reaksie op die oprit, wat ook neem af en raak asimptoties parallel met die oprit. Die vertikale afstand tussen hierdie twee is die fout. So nou weet ons dat hierdie eenvoudige IIR filter het 'n eksponensiële eerste orde reaksie, wat 'n nul fout om 'n stabiele insetwaarde en 'n bekende konstante fout om 'n oprit insette het. Die formule vir die fout is fout R / k 1, waar R die tempo van helling van die insette. Vervang k 0,15 in hierdie vergelyking gee 'n oneindige dwaling van 5,66666 en dit is presies wat die grafiek toon. 'N rekursiewe (IIR) Filter in Praktyk Bogenoemde artikel het net beskryf die innerlike werking van die mees eenvoudige rekursiewe filter, (IIR filter) wat net gebeur met die identiese werking van 'n eksponensiële bewegende gemiddelde (EMA) en feitlik niks behalwe verander word van 'n paar benaming byvoorbeeld 'n 20-dag EMO is regtig 'n IIR filter met k 0,095238 en dat behoort geen verrassing te wees. Ons weet ook nou dat die tydkonstante vir 'n 20 dag EMO filter is dus 10 dae en dat die oprit fout faktor is 9.5 (met die aanvaarding een sent per dag oprit koers). Die bostaande grafiek (geneem uit MarketTools Chart) toon die reaksie verskil tussen 'n SMA20 (Groen) en 'n EMA20 (Blue). Soos die buurt prys begin by die EMO oprit aanvanklik spore nader en wankel rond terwyl die SMA20 gly in stadiger (veelsydige) en vorm 'n feitlik reguit lyn. Dit behoort geen verrassing te wees, as ons weet dat die SMA is veel minder reaktief om onlangse wysigings as 'n EMO. Jy kan duidelik sien die fout dat hulle 'n oprit in pryse en dit kan gebruik word om 'n voordeel wanneer jy tegniese ontleding Hierdie grafiek toon ook die Moving Gemiddeldes dop van die pryse, maar met 'n baie soortgelyke prys verreken (fout) wat veroorsaak word deur die bykans konstante tempo van verandering in die prys oor 'n beperkte tyd (in hierdie geval). Die probleem met die prys is dat daar 'n terugvoer stelsel wat die prys variasies reguleer en hierdie terugvoering menslike beheer wat werk soos volg: Vir een of ander rede, iemand sien wat hulle wil graag 'n bepaalde voorraad aan te koop, maar die prys is effens hoër as die vorige verhandelingsprys. Toe hulle die voorraad aankoop van die nuwe prys is nou hoër. Ander sien dat die prys as óf te hoog is, korrek of nog goedkoop. Met hierdie gedagte in gedagte, ander handelaars gebruik die vorige pryse as 'n verwysing en is geneig om daardie prys terug na die verwysing prys wat elkeen van hulle het reg te stel. Dit veroorsaak dat die prys om te wissel in 'n ossillasie wyse wat geneig is om te stabiliseer met die tyd. Alles is nie verlore as dit is belangrik om te verstaan ​​dat die bewegende gemiddelde tegnologie is 'n 1ste orde stelsel, vir nou is dit gebruik kan word in die wete dat as die pryse is oor die algemeen laer as die bewegende gemiddelde, dan is die pryse is eintlik val met verloop van tyd, en as die pryse is bo die bewegende gemiddelde, dan is die pryse is oor die algemeen stygende met tyd. Dit maak dus baie sin om hierdie baie basiese reël weet, want dit beteken dat die enigste aandele om betrokke te wees in diegene met die pryse bo die bewegende gemiddelde lyn. Maar wat tydkonstante moet gebruik word vir die bewegende gemiddelde en waarom Feitlik geen tegniese ontleding pakkette kom oral in die buurt hierdie diepte, en hulle het almal te behandel SMA en EMO met 'n werklike gebrek aan begrip. Die probleem is amper selfverduidelikend in dat feitlik al die data is EOD gebaseer en as gevolg van daardie, oorkruising bewegende gemiddeldes kan die meeste koop-verkoop seine Met ander woorde op te los, die bevordering van tegniese ontleding gestop soos 'n bus slaan van 'n krans toe bewegende gemiddeldes was opgelos met EOD data. Dit werk winste uit tegniese gebaseer verkope kan verwesenlik stop ontwikkeling Een bewegende gemiddelde Nadat stewig gevestig die feit dat 'n SMA en 'n EMO is albei 1ste orde stelsels, en dat beide van hierdie die geraas van handel variasies, veral die noue waardes effektief te verminder gebaseer op EOD data dit kom as geen verrassing dat hierdie gemiddeldes het 'n gebruik as 'n koop of aanduiding nie te koop vir sekuriteite wat enige vorm van tendens het. Hulle gebruik 'n eenvoudige aansoek dat die fout tussen die werklike naby prys en die bewegende gemiddelde met positiewe aangedui dat die sekuriteit gehou moet word en die omgekeerde. Hierdie aanwyser is die mees primitiewe van alle tegniese aanwysers, en dit is ligjare buite die gebruik van enige vorm van finansiële gegenereer aanduiding te wys as 'n sekuriteit prys styg of val in 'n tendens. Die aanwyser regtig skyn wanneer die sekuriteit is in 'n tendens, maar wanneer die prys hang of plat uit dit 'n probleem van besluiteloosheid. Die grafiek hieronder dui hierdie situasie, en dit word geïllustreer deur die insluiting van 'n skakelaar funksie om te wys wat kan gebeur. Die skakelaar funksie getoon die prys bewegende gemiddelde grafieke. In die linkerkantse geval is dit 'n EMA12, en as die noue prys wissel, die skakelaar word baie besluiteloos wanneer die prys tendens vlak uit of veranderinge rigting. Een manier om die probleem is om 'n stadiger bewegende gemiddelde soos die EMA21 gebruik soos aangedui op die regterkant. Die aantal besluiteloosheid punte verminder, wat beteken dat die aantal nutteloos ambagte aansienlik sal verminder word, maar kyk nader en 'n aansienlike wins lopies verloor omdat die bewegende gemiddelde is te laat in te skakel oor. In die agtergrond is daar 'n positiewe deurdat die 12 en 21 EOD bewegende gemiddeldes is gladder as die EOD naby en dit op sigself kan gebruik word om voordeel. Twee Moving gemiddeldes volgens twee bewegende gemiddeldes te vergelyk (wat op sigself is reeds stryk deur hul eie eienskappe), kan 'n skoner aanduiding verkry word en dit kan 'n paar voordele bied. Die onderstaande grafieke toon 'n paar voorbeelde op dieselfde sekuriteit vir direkte vergelyking. Bogenoemde linkerhand grafiek het dieselfde skakelaar funksie gebaseer op twee bewegende gemiddeldes EMA12 en EMA26 en sien dat die besluiteloosheid is feitlik nul. Dit is 'n positiewe stap, maar 'n nader kyk na die werklike oorskakeling punte toon dat dit baie konserwatief en in baie gevalle 'n aansienlike winste verlore voordat die besluit geneem is om uit te trek. As dit nie was vir hierdie dan dit kan 'n ideale houvas / sell aanwyser suiwer gebaseer op noue pryse van EOD figure wees. Die regs bo grafiek (geneem uit OmniTrader) toon 'n ses maande die lig van 'n voorraad en daar is twee eksponensiële bewegende gemiddeldes (EMAS) ook op die grafiek. In hierdie spesifieke geval is die bewegende gemiddelde wat die aandeelpryse drukkies is 'n EMA8 en die ander een wat stadig konvergeer in die aandeelprys is 'n EMA35. Dit is 'n goeie voorbeeld as die vinniger EMO het die omvang van die EOD waardes van die aandeelprys sny dit verskeie kere. Die stadiger EMO skaars bereik die EOD prys wissel. OmniTrader het 'n baie mooi eienskap in dat elke toets aanwyser kan ingestel word om self-optimaliseer self vir elke sekuriteit oor 'n bepaalde geskiedenis (bv 250 handelsdae). Dit gee die aanwysers 'n goeie kans om 'n baie beter treffer-koers as wat jy normaalweg sou kry deur eenvoudig die opstel van die aanwyser parameters self voorsien. In hierdie geval het hulle by EMA12 en EMA40 en gevestig op EMA8 en EMA35 vir 'n optimale resultaat. Die probleem is dat van onsekerheid as beide bewegende gemiddeldes konvergeer op mekaar en het nie 'n skoon crossover. Dit is nie 'n groot probleem as ons weet dat beide SMA en EMO albei 1ste orde stelsels en as gevolg van dat hulle asimptoties konvergeer op 'n konstante toevoer, so as 'n prys konstant bly, dan is die twee bewegende gemiddeldes sal beide konvergeer op daardie konstante waarde, maar teen verskillende tempo's. Die werklike probleem is een van geraas (eintlik prys fluktuasie oor 'n konstante waarde) en dit kan veroorsaak dat die vinniger bewegende gemiddelde om geheel verslaan oor die meer stabiele stadiger (meer) bewegende gemiddelde. Daar is verskeie oplossings vir hierdie probleem, en elkeen het hul meriete. Verskeie Bewegende Gemiddeldes uitbreiding op die tema van bewegende gemiddeldes van een tot twee baie is 'n logiese progressie en die benadering van veelvuldige Bewegende Gemiddeldes is nogal 'n eenvoudige konsep om te visualiseer. Daryl Guppy uitgedink en dit bestaan ​​uit tien bewegende gemiddeldes in twee groepe wat meetkundig gespasieer. Die eerste groep is korttermyn EMA3, EMA5, EMA7, EMA10 en EMA15, terwyl die lang termyn bewegende gemiddeldes is EMA30, EMA35, EMA40, EMA50 en EMA60. Om 'n visuele oor hoe dit lyk te kry, die twee grafieke hieronder toon die algemene foto's. In die linkerhand grafiek hieronder, die vyf langer termyn bewegende gemiddeldes te volg in die algemeen parallelle lyne as die voorraad prystendense up, die pryse steiler dan dan terug op en die bewegende gemiddelde lyne uit te brei van mekaar en dan bymekaar en dan uit te brei as die nuwe tendens stelle in plek en die bewegende gemiddeldes te vorm weer parallelle lyne. nader kyk in die regterhand grafiek van dieselfde voorraad met die korter stel bewegende gemiddeldes, word dit duidelik dat wanneer die eksponensiële bewegende gemiddeldes konvergeer of divergeer, dan is daar iets is om te gebeur Die rede dat hierdie bewegende gemiddeldes te vorm doeltreffend parallelle lyne, terwyl 'n tendens in die gang is dat die fout van werklike prys bewegende gemiddelde is afhanklik van die terugvoer faktor in die EMO. In direkte vergelyking die SMA gebaseer op dieselfde tyd konstantes word hieronder getoon: Die grafieke hierbo toon dieselfde reënboog van kurwes, maar almal met SMA in plaas van EMO. Dit is as gevolg van die nie-lineêre te stap insette reaksie wat die EMO het dat die kurwes laat bymekaarkom op mekaar, waar die SMA stel kurwes in hierdie laer twee grafieke duidelik mekaar verby skiet. Guppy meerdere Bewegende Gemiddeldes Daryl Guppy ontwikkel 'n reënboog van verskeie bewegende gemiddeldes, bekend as die Guppy Bewegende Gemiddeldes (GMA) dat wanneer geplaas op 'n prys grafiek, konvergeer as die tendens begin om plaas te vind, en weer bymekaar as die tendens van die hand gewys, en al die res van die tyd wat hulle is uiteenlopende Hoe maklik is dit op grond van EOD verkeer, Daryls EMO konstantes is, vir die kort termyn: 3, 5, 8, 10, 12, 15, en vir 'n lang termyn 30, 35, 40, 45, 50, en 60. vir die kort termyn konstantes, my raaiskoot is dat dit gebaseer is op 'n eenvoudige rekenkundige stel EMAS wat nominaal 2.4 periodes uitmekaar was en stel tot die naaste heelgetal vir die tydperk, wat lei tot: 3 , 5.4, 7.8, 10.2, 12.6 en 15.0 gee 3, 5, 8, 10, 13 en 15, met die 13 teruggesak tot 12 Dit lyk vir my dat die langtermyn-konstantes is gebaseer op 'n ander rekenkundige reeks met 55 ontbreek uit waarskynlik omdat dit te krap het daar, en dat my vertel dat hierdie volgorde 'n meetkundige vordering in elk geval moes gewees het. Met vyf tussenposes tussen 30 en 60 die vermenigvuldiger is oor 1,1487 so die volgorde word 30.00, 34.46, 39,59, 45,47, 52,23, 60,00 en bring dit na die naaste Heelgetalle verleen: 30, 34, 40, 45, 52, 60 en dit sou Gee 'n baie selfs stel langer termyn EMA van 'n meetkundige vordering kry die langtermyn konstantes. So hoekom is ek verslaaf aan meetkundige reekse, en hoekom het hulle hierdie dinge by die skool leer dit is goed soos hierdie, die lewe verhoudings is eintlik meetkundig verwant alles is 'n verhouding met die ander dinge, selfs toevoegings tot gesinne meetkundig verwant nie aritmetisch verwant aan die groter skaal. Ek weet dat die onderwysers my nie wys wanneer by die skool en ek het 'n paar bloedige fantastiese onderwysers. By verre was die beste onderwysers diegene wat industriële en sakevaardighede het deur nie-skool ervaring, en was die afguns van diegene wat didnt. In elk geval Om die prentjie daar is niks soos 'n visuele voorbeeld hierbo Die twee grafieke voorbeelde van die Guppy Bewegende Gemiddeldes (GMMA) gee te sien, en dit is Eksponensiële Bewegende Gemiddeldes, nie Eenvoudige bewegende gemiddeldes. Interessant, as SMA het 'n veelsydige reaksie omdat hulle dit nie oorreageer op die mees onlangse waardes as EMA doen. Daar is twee families van hierdie en die linkerkant toon die langtermyn-band weg van die pryse en saam op veranderinge. Die regterkant toon die kort termyn bewegende gemiddeldes van naderby na die (naby) pryse. Gaan op 'n ander raaklyn, deur die oprigting van 'n meetkundige vordering gebaseer op wortel 2 soos per 'n fotografie lens, 'n tipiese volgorde is 5, 7, 10, 14, 20, 28, 40, 56, 80, 113, 200 ens Die links hand een is gebaseer op EMO en die een aan die regterkant is gebaseer op SMA. Omdat die SMA het 'n liniêre verbygaande reaksie hierop het die algehele spoor is 'n bietjie meer afgeronde as die EMO wat 'n tapse verval reaksie, vandaar die spuit van eksponensiële bewegende gemiddeldes in vergelyking met die aantal CROSSOVER met die eenvoudige bewegende gemiddeldes het. Dit is 'n baie gewilde instrument en Guppys reënboë gee 'n hoë impak van visuele, en as dit is wat jy soek, dan is dit dit is nie net dit interessant om te kyk na die verskillende bewegende gemiddeldes afwyk en konvergeer, maar gaan dit 'n stap verder te bereken en vertoon dit divergensie en konvergensie is die volgende logiese evolusionêre stap. Terwyl hierdie reënboë van bewegende gemiddeldes 'n visuele impak behulp EOD data, wanneer dit kom by data te handel is dit 'n heel ander storie, as die stappe is baie kleiner as gevolg van die kort tydgleuwe, en dit gee aanleiding tot die volgorde van CROSSOVER eintlik ontleed , aangesien dit tel die verskil tussen 'n handelsmerk en 'n belegging, maar meer later 'n plaasvervanger vir wend om handel te dryf (live) data is om 'n beter filter gebruik - of waterval (sit een na die ander) 'n eerste orde filters in probeer om 'n hoër maak verlies in die stop band met 'n korter en meer lineêre risetime - en kaskade EMAS die volgende avontuur stepExponential filter Hierdie bladsy beskryf eksponensiële filter, die eenvoudigste en mees gewilde filter. Dit is deel van die artikel filter wat deel is van 'n Gids tot Fout opsporing en diagnose .. Oorsig, tydkonstante, en analoog gelykstaande Die eenvoudigste filter is die eksponensiële filter. Dit het net een stem parameter (behalwe die voorbeeld interval). Dit vereis dat die berging van slegs een veranderlike - die vorige uitset. Dit is 'n IIR (outoregressiewe) filter - die gevolge van 'n inset verandering verval eksponensieel tot die grense van uitstallings of rekenaar rekenkundige wegsteek nie. In verskeie dissiplines, is die gebruik van hierdie filter ook verwys na as 8220exponential smoothing8221. In sommige dissiplines soos belegging analise, is die eksponensiële filter genoem 'n 8220Exponentially Geweegde Moving Average8221 (EWMA), of net 8220Exponential Moving Average8221 (EMA). Dit misbruik die tradisionele ARMA 8220moving average8221 terminologie van tydreeksanalise, want daar is geen insette geskiedenis wat gebruik word - net die huidige insette. Dit is die diskrete tyd ekwivalent van die 8220first orde lag8221 algemeen gebruik in analoog modellering van kontinue-tyd stelsels. In elektriese stroombane, 'n RC filter (filter met een weerstand en een kapasitor) is 'n eerste-orde lag. Wanneer die klem op die analogie te analoog stroombane, die enkele stem parameter is die 8220time constant8221, gewoonlik geskryf as die kleinletter Griekse letter Tau (). Trouens, die waardes van die diskrete monster tye presies ooreenstem met die ekwivalent deurlopende tydsverloop met dieselfde tyd konstant. Die verhouding tussen die digitale implementering en die tydkonstante word in die onderstaande vergelykings. Eksponensiële filter vergelykings en inisialisering Die eksponensiële filter is 'n geweegde kombinasie van die vorige skatting (uitset) met die nuutste insette data, met die som van die gewigte gelyk aan 1 sodat die uitset ooreenstem met die insette by gestadigde toestande. Na aanleiding van die filter notasie reeds bekendgestel: y (k) ay (k-1) (1-a) x (k) waar x (k) is die rou insette ten tye stap ky (k) is die gefilterde uitset ten tye stap ka is 'n konstante tussen 0 en 1, gewoonlik tussen 0.8 en 0.99. (A-1) of 'n word soms die 8220smoothing constant8221. Vir stelsels met 'n vaste tyd stap T tussen monsters, is die konstante 8220a8221 bereken en gestoor vir die gemak net vir die program ontwikkelaar spesifiseer 'n nuwe waarde van die verlangde tyd konstant. Vir stelsels met monsterneming data op ongereelde tussenposes, moet die eksponensiële funksie hierbo gebruik word met elke keer stap, waar t die tyd sedert die vorige voorbeeld. Die filter uitset is gewoonlik geïnisialiseer die eerste insette te pas. Soos die tydkonstante benaderings 0, 'n gaan na nul, so daar is geen filter 8211 die uitset is gelyk aan die nuwe insette. Soos die tydkonstante kry baie groot, 'n benaderings 1, sodat nuwe insette byna geïgnoreer 8211 baie swaar filter. Die filter vergelyking hierbo kan herrangskik in die volgende voorspeller-corrector ekwivalent: Hierdie vorm maak dit meer duidelik dat die veranderlike skatting (uitset van die filter) word voorspel as onveranderd teenoor die vorige skatting y (k-1) plus 'n regstelling termyn gebaseer op die onverwagte 8220innovation8221 - die verskil tussen die nuwe insette x (k) en die voorspelling y (k-1). Hierdie vorm is ook die gevolg van die afleiding van die eksponensiële filter as 'n eenvoudige spesiale geval van 'n Kalman filter. wat is die optimale oplossing vir 'n skatting probleem met 'n bepaalde stel aannames. Stap reaksie Een manier om te visualiseer die werking van die eksponensiële filter is om sy reaksie verloop van tyd tot 'n stap insette plot. Dit wil sê, wat begin met die filter toevoer en afvoer by 0, is die insetwaarde skielik verander na 1. Die gevolglike waardes word hieronder aangestip: In die bogenoemde plot, is die tyd gedeel deur die filter tydkonstante TLU, sodat jy kan meer maklik voorspel die resultate vir enige tydperk, vir enige waarde van die filter tydkonstante. Na 'n tyd gelyk aan die tydkonstante, die filter uitset styg tot 63,21 van sy finale waarde. Na 'n tyd gelyk aan 2 keer konstantes, die waarde styg tot 86,47 van sy finale waarde. Die uitset na tye gelyk aan 3,4 en 5 keer konstantes is 95,02, 98,17, en 99,33 van die finale waarde, onderskeidelik. Sedert die filter is lineêre, beteken dit dat hierdie persentasies kan gebruik word vir enige grootte van die stapverandering, nie net vir die waarde van 1 wat hier gebruik word. Hoewel die stap reaksie in teorie neem 'n oneindige tyd, uit 'n praktiese oogpunt, dink aan die eksponensiële filter as 98-99 8220done8221 reageer ná 'n tyd gelyk aan 4 tot 5 filter tyd konstantes. Variasies op die eksponensiële filter Daar is 'n variasie van die eksponensiële filter bekend as 'n 8220nonlinear eksponensiële filter8221 Weber, 1980 bedoel om swaar filter geraas binne 'n sekere 8220typical8221 amplitude, maar dan vinniger te reageer op groter veranderinge. Kopiereg 2010 - 2013, Greg Stanley Deel hierdie bladsy: 'n Eksponensiële bewegende gemiddelde IIR Filter Filter van gemete veranderlikes ingesluit mikrobeheerder gebaseer kringe is nodig om die gemiddelde waarde van die seine op te spoor en om hul veranderlikheid te verminder. As die seine verskil in hul gemiddelde waarde met verloop van tyd, die filter moet 'n manier om ou mates weggooi terwyl die integrasie van nuwe monsters. Die eksponensiële bewegende gemiddelde oneindige impule reaksie (IIR) filter is goed verstaan ​​vir baie dekades en word op groot skaal in statistiese analise. Dit bied 'n bestryk eenvoudige middel van die bepaling van die gemiddelde waarde van 'n veranderlike wanneer die onderliggende model van die veranderlike is onbekend. As v N is die veranderlike wat gefiltreer, dan 'n nde beramer vir die gemiddelde waarde is: waar a gewig koëffisiënt waarvan die waarde bepaal die bedrag van gladstryking. Hoe nader 'n is om 0, hoe groter is die hoeveelheid glad. In sommige gevalle is die algoritme in hierdie vorm produseer intermediêre resultate wat groot kan word. Om dit te implementeer met behulp van 'n eindige presisie heelgetal rekenkunde, is dit gegiet in 'n effens ander vorm waarin intermediêre resultate word begrens deur 'n bekende waarde. Die gewig koëffisiënt is voorgestel as 'n 1-1 / h. waar c 'n krag van 2. Die krag k kan verhoog word tot die bedrag van smoothing verhoog, terwyl beperking tot 'n krag van 2 sal toelaat vermenigvuldig en deel te word uitgevoer met behulp van 'n baie vinnige links en regs skuif bedrywighede in 'n mikroverwerker. Die hoeveelheid CV av (N) is nagespoor tot presisie handhaaf: As byvoorbeeld die monsters is 8 bit hoeveelhede (soos gebruik in baie van die beskryf vir die SMPS kringe hier beskryf algoritmes), en k is gekies om 8, dan is die hoeveelheid CV av (n) kan voorgestel word as 'n 16 bit waarde sonder verlies van inligting (juis: 8k stukkies, sien hieronder). Sodra dit vasgestel is, is die hoeveelheid v av (N) wat verkry word deur 'n eenvoudige regs skuif deur k plekke. Op hierdie stadium is daar 'n verlies van inligting van minder as 1 lsb omvang wat (egter daarop dat daar korrelasies in hierdie verlore inligting wat sistematiese foute kan veroorsaak mag wees) kan geabsorbeer word in die onsekerhede van v N. Die veronderstelling dat die veranderlikes V I statisties onafhanklike, analise van variansie toon dat dit verminder met 'n faktor 1 / (2c). Vir stap veranderinge in v N die tydkonstante is c berekening tussenposes. Dop van die gemiddelde waarde word minder akkuraat as die tydkonstante verhoog om te vergelyk met die laagste frekwensie in die onderliggende sein model geword. Boonste limiet vir die gemiddelde waarde Die filter begin met v av (0) 0. Alle afmetings v N is tussen 0 en minstens B (waar B is gewoonlik 256 in ons voorbeelde). So werk terug na die begin van die reeks (wat in die praktyk is altyd eindig) wat net B. So het die maksimum waarde van die versterkte gemiddelde CV av (N) is cB wat binne 'n 16 bit nommer in die voorbeeld hierbo. Gewig in die geval waar die monsters het verskillende statistiese belang, dit is, 'n paar het 'n groter fout waarskynlikheid as ander, gewigte aangewend kan word om 'n meer algemene vorm van die filter te skep. Hierdie gewigte sal gekies word om 'n omgekeerde verhouding tot die foutwaarskynlikheid het. As w N is die gewigte wat toegepas moet word, kan die volgende filter gebruik word: Die tweede vergelyking produseer 'n IIR raming van die gemiddelde van die gewigte wat gebruik word in die eerste vergelyking. Dit kan bewys dat 'n onbevooroordeelde raming van die gemiddelde van v N produseer met 'n vergeet faktor van (1-a). Soos voorheen die gewysigde gemiddeldes CW av (N) en CW av (N) v av (N) wat op die linkerkant sal gevolg word, en die verlangde hoeveelhede onttrek deur 'n eenvoudige verdeling.


No comments:

Post a Comment