Saturday, 11 November 2017

Moving Average Script Matlab


Moving gemiddelde Filter van Verkeer Data Hierdie voorbeeld wys hoe om verkeersvloei data glad met behulp van 'n bewegende gemiddelde filter met 'n 4-uur gly venster. Die volgende verskilvergelyking beskryf 'n filter wat gemiddeldes die huidige uur en die drie vorige uur van data. Voer die verkeer data en die kolom van voertuig tel toewys aan die vektor x is. Skep die filter koëffisiënt vektore. Bereken 4-uur bewegende gemiddelde van die data, en plot beide die oorspronklike data en die gefilterde inligting. MATLAB en Simulink is geregistreerde handelsmerke van The MathWorks, Inc. Sien www. mathworks / handelsmerke vir 'n lys van ander handelsmerke in besit van die MathWorks, Inc. Ander produk of handelsmerk name is handelsmerke of geregistreerde handelsmerke van hul onderskeie eienaars. Kies jou Country29 September 2013 Moving gemiddeld konvolusie Wat is bewegende gemiddelde en wat is dit goed vir Hoe beweeg gemiddelde gedoen deur die gebruik van konvolusie Moving gemiddelde is 'n eenvoudige operasie gewoonlik gebruik om geraas van 'n sein te onderdruk: ons stel die waarde van elke punt om die gemiddeld van die waardes in die buurt. Deur 'n formule: Hier x is die insette en y is die uittreesein, terwyl die grootte van die venster is w, veronderstel vreemd te wees. Die formule hierbo beskryf 'n simmetriese werking: die monsters geneem word van beide kante van die werklike punt. Hier is 'n werklike lewe voorbeeld. Die punt waarop die venster eintlik gelê is rooi. Waardes buite x veronderstel is om nulle wees: om te speel en sien die gevolge van bewegende gemiddelde, 'n blik op hierdie interaktiewe demonstrasie. Hoe om dit te doen deur konvolusie Soos jy dalk herken het, die berekening van die eenvoudige bewegende gemiddelde is soortgelyk aan die konvolusie: in beide gevalle 'n venster is gegly langs die sein en die elemente in die venster word opgesom. So, gee dit 'n probeer om dieselfde ding te doen deur gebruik te maak van konvolusie. Gebruik die volgende parameters: Die verlangde uitset is: As eerste benadering, laat ons probeer om dit wat ons kry deur convolving die x sein deur die volgende k kern: Die uitset is presies drie keer groter as die verwagte. Dit kan ook gesien word dat die uitset waardes is die opsomming van die drie elemente in die venster. Dit is as gevolg tydens konvolusie die venster gly langs, al die elemente daarin word vermenigvuldig met een en dan opgesom: yk 1 cdot x 1 cdot x 1 cdot x Om die gewenste waardes van y kry. die uitset sal verdeeld wees teen 3: deur 'n formule insluitende die afdeling: Maar sou dit nie wees optimale om die afdeling te doen tydens konvolusie Hier kom die idee deur herrangskik die vergelyking: So sal ons die volgende k kern gebruik: In hierdie manier waarop ons sal kry die verlangde uitset: In die algemeen: as ons wil doen bewegende gemiddelde deur konvolusie 'n venster grootte van w. Ons sal gebruik maak van die volgende k kern: 'n eenvoudige funksie doen die bewegende gemiddelde is: 'n Voorbeeld gebruik is: Dokumentasie tsmovavg uitset tsmovavg (tsobj, s, lag) gee terug Die eenvoudige bewegende gemiddeld vir finansiële tydreekse voorwerp, tsobj. lag dui die aantal vorige datapunte gebruik met die huidige data punt by die berekening van die bewegende gemiddelde. uitset tsmovavg (vektor, s, lag, dowwe) gee terug Die eenvoudige bewegende gemiddelde vir 'n vektor. lag dui die aantal vorige datapunte gebruik met die huidige data punt by die berekening van die bewegende gemiddelde. uitset tsmovavg (tsobj, e, timeperiod) gee terug Die eksponensiële geweegde bewegende gemiddelde vir finansiële tydreekse voorwerp, tsobj. Die eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod spesifiseer die tydperk. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n 10-tydperk eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. Eksponensiële Persentasie 2 / (TIMEPER 1) of 2 / (WINDOWSIZE 1). uitset tsmovavg (vektor, e, timeperiod, dowwe) gee terug Die eksponensiële geweegde bewegende gemiddelde vir 'n vektor. Die eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod spesifiseer die tydperk. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n 10-tydperk eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. (2 / (timeperiod 1)). uitset tsmovavg (tsobj, t, numperiod) gee terug Die driehoekige bewegende gemiddelde vir finansiële tydreekse voorwerp, tsobj. Die driehoekige bewegende gemiddelde dubbel glad die data. tsmovavg word bereken dat die eerste eenvoudige bewegende gemiddelde met venster breedte van oordek (numperiod 1) / 2. Dan bereken dit 'n tweede eenvoudige bewegende gemiddelde op die eerste bewegende gemiddelde met dieselfde venster grootte. uitset tsmovavg (vektor, t, numperiod, dowwe) gee terug Die driehoekige bewegende gemiddelde vir 'n vektor. Die driehoekige bewegende gemiddelde dubbel glad die data. tsmovavg word bereken dat die eerste eenvoudige bewegende gemiddelde met venster breedte van oordek (numperiod 1) / 2. Dan bereken dit 'n tweede eenvoudige bewegende gemiddelde op die eerste bewegende gemiddelde met dieselfde venster grootte. uitset tsmovavg (tsobj, w, gewigte) gee terug Die geweegde bewegende gemiddelde vir die finansiële tydreekse voorwerp, tsobj. deur die verskaffing van gewigte vir elke element in die bewegende venster. Die lengte van die gewig vektor bepaal die grootte van die venster. As groter gewig faktore word gebruik vir meer onlangse pryse en kleiner faktore vir vorige pryse, die neiging is meer ontvanklik vir onlangse wysigings. uitset tsmovavg (vektor, w, gewigte, dowwe) gee terug Die geweegde bewegende gemiddelde vir die vektor deur die verskaffing van gewigte vir elke element in die bewegende venster. Die lengte van die gewig vektor bepaal die grootte van die venster. As groter gewig faktore word gebruik vir meer onlangse pryse en kleiner faktore vir vorige pryse, die neiging is meer ontvanklik vir onlangse wysigings. uitset tsmovavg (tsobj, m, numperiod) gee terug Die gemodifiseerde bewegende gemiddelde vir die finansiële tydreekse voorwerp, tsobj. Die aangepaste bewegende gemiddelde is soortgelyk aan die eenvoudige bewegende gemiddelde. Oorweeg die argument numperiod die lag van die eenvoudige bewegende gemiddelde wees. Die eerste gewysigde bewegende gemiddelde bereken word soos 'n eenvoudige bewegende gemiddelde. Daaropvolgende waardes word bereken deur die toevoeging van die nuwe prys en trek die laaste gemiddelde van die gevolglike bedrag. uitset tsmovavg (vektor, m, numperiod, dowwe) gee terug Die gemodifiseerde bewegende gemiddelde vir die vektor. Die aangepaste bewegende gemiddelde is soortgelyk aan die eenvoudige bewegende gemiddelde. Oorweeg die argument numperiod die lag van die eenvoudige bewegende gemiddelde wees. Die eerste gewysigde bewegende gemiddelde bereken word soos 'n eenvoudige bewegende gemiddelde. Daaropvolgende waardes word bereken deur die toevoeging van die nuwe prys en trek die laaste gemiddelde van die gevolglike bedrag. dowwe 8212 dimensie te bedryf saam positiewe heelgetal met waarde 1 of 2 Dimension te bedryf saam, wat as 'n positiewe heelgetal met 'n waarde van 1 of 2. dowwe is 'n opsionele insette argument, en as dit nie gebruik word as 'n inset, die verstek waarde 2 word aanvaar. Die standaard van dowwe 2 dui op 'n ry-georiënteerde matriks, waar elke ry is 'n veranderlike en elke kolom is 'n waarneming. As dowwe 1. die insette is veronderstel om 'n kolomvektor of-kolom-georiënteerde matriks, waar elke kolom is 'n veranderlike en elke ry 'n waarneming wees. e 8212 aanwyser vir eksponensiële bewegende gemiddelde karakter vektor Eksponensiële bewegende gemiddelde is 'n geweegde bewegende gemiddelde, waar timeperiod is die tydperk van die eksponensiële bewegende gemiddelde. Eksponensiële bewegende gemiddeldes te verminder die lag deur die toepassing van meer gewig aan onlangse pryse. Byvoorbeeld, 'n tydperk van 10 eksponensiële bewegende gemiddelde gewigte die mees onlangse prys deur 18.18. Eksponensiële Persentasie 2 / (TIMEPER 1) of 2 / (WINDOWSIZE 1) timeperiod 8212 Lengte van tyd positiewe getal Kies Jou CountryMetaTrader 5 - Indicators Fractal Adaptive bewegende gemiddelde (Frama) - aanwyser vir Meta Trader 5 Beskrywing: Fractal Adaptive bewegende gemiddelde tegniese aanwyser ( Frama) is ontwikkel deur John Ehlers. Hierdie aanwyser is saamgestel op grond van die algoritme van die eksponensiële bewegende gemiddelde. waarin die glad faktor word bereken op grond van die huidige fraktale dimensie van die prys reeks. Die voordeel van Frama is die moontlikheid om 'n sterk tendens bewegings te volg en om voldoende stadiger by die oomblikke van prys konsolidasie. Alle vorme van analise gebruik word vir Bewegende Gemiddeldes aangewend kan word om hierdie aanwyser. Fractal Adaptive bewegende gemiddelde aanwyser Berekening: Frama (i) A (i) Prys (i) (1 - A (i)) Frama (i-1) Frama (i) - huidige waarde van Frama Prys (i) - huidige prys Frama (i-1) - vorige waarde van Frama A (i) - huidige faktor van eksponensiële gladstryking. Eksponensiële gladstryking faktor word bereken volgens die onderstaande formule: A (i) EXP (-4,6 (D (i) - 1)) D (i) - huidige fraktale dimensie EXP () - wiskundige funksie van eksponent. Fractal dimensie van 'n reguit lyn is gelyk aan een. Dit is vanuit die formule dat indien D 1, dan is 'n EXP (-4,6 (1-1)) EXP (0) 1. So as die prys veranderinge in reguit lyne, eksponensiële gladstryking word nie gebruik nie, want in so 'n geval die formule lyk soos volg: Frama (i) 1 prys (i) (1 - i) Frama (i-1) prys (i) dit wil sê die aanwyser volg die prys presies. Die fraktale dimensie van 'n vliegtuig is gelyk aan twee. Van die formule kry ons dat as D 2, dan is die glad faktor A EXP (-4,6 (2-1)) EXP (-4,6) 0,01. So 'n klein waarde van die eksponensiële gladstryking faktor is verkry by oomblikke wanneer die prys maak 'n sterk zaag tand beweging. So 'n sterk verlangsaming ooreenstem met ongeveer 200-tydperk eenvoudige bewegende gemiddelde. Formule van fraktale dimensie: D (log (N1 N2) - log (N3)) / log (2) Dit word bereken op grond van die addisionele formule: N (Duur, i) (HighestPrice (i) - LowestPrice (i)) / lengte HighestPrice (i) - huidige maksimale waarde vir lengte tydperke LowestPrice (i) - huidige minimale waarde vir lengte tydperke Waardes N1, N2 en N3 is onderskeidelik gelyk aan: N1 (i) N (lengte, i) N2 (i) N ( lengte, ek lengte) N3 (i) n (2 lengte, i) Die inligting, kode en data op hierdie bladsy is 'n artikel quot Die Swart Kuns van Gladstryking quot gepubliseer in Elektriese amp Automation tegniese ondersteuning. deur David I. Wilson. Die kode op hierdie bladsy sluit algoritmes vir: Moving gemiddelde filter amp Savitzky-Golay filters Löss (plaaslike geweegde regressie) filter Whittaker kern smoothers Hodrick-Prescott filters in die ontwikkeling van omgewings Matlab en Scicos. In beide gevalle, daar is geen spesiale gereedskapkaste vereis. Matlab is 'n kommersiële produk, maar Scilab is 'n gratis ekwivalent. Let wel: Die kode hier aangebied kwotas isquot met geen waarborg uitgedruk of geïmpliseer. As jy belangstel in 'n poging uit hierdie glad bedrywighede op jou eie data is doen die volgende: As jy Matlab ( 'n kommersiële produk), af te laai en pak die Matlab glad lêers. Begin die smootherdemo. m script lêer. Jy moet erwe iets wat soortgelyk is aan die figure in die gepubliseerde artikel te sien. As jy wil jou eie data te gebruik, plaas dan die (tyd, data) pare in 'n Excel spreiblad, en die smootherdemo lêer om jou eie Excel sigblad lees wysig. Jy sal nodig hê om die script lêer wysig, en moontlik aan te pas die verskillende glad parameters. Alternatiewelik, as jy eerder die freeware Scilab sou gebruik, dan: Aflaai en installeer Scilab (ongeveer 13Mb). Jy het die opsie van Windows, Linux of Mac. Laai die Scilab gladder lêers en pak in 'n paar maklike gids Voer die smootherdemo. sci lêer. Matlab is 'n kommersiële wetenskaplike sagteware en prototyping omgewing gewild met baie ingenieurs. Matlab is in Nieu-Seeland wat verkoop word deur Hoare Navorsing sagteware. Aflaai en Pak die Matlab glad lêers in jou werk gids, en hardloop die smootherdemo. m Matlab teks lêer. Scilab is 'n gratis Wetenskaplike Softwarepakket soortgelyk aan, maar nie presies versoenbaar is met, Matlab. Scilab is beskikbaar vir Linux, Windows en Mac en is beskikbaar vir aflaai van hier af. (Ongeveer 13Mb). Dit word tans ontwikkel deur navorsers van INRIA en ENPC in Frankryk, en soos Matlab, sluit talle gereedskapkaste en 'n grafiese blokdiagram simulator soortgelyk aan Simulink genoem Scicos. Die volgende data lêers is gebruik in die artikel. Hulle word in Excel-formaat en reguit ASCII-teks met 'n mens ry-opskrif.

No comments:

Post a Comment