Friday 27 January 2017

Gleitender Mittelwert Algorithmus

Grundlagen des algorithmischen Handels: Konzepte und Beispiele Ein Algorithmus ist ein spezifischer Satz klar definierter Anweisungen, die eine Aufgabe oder einen Prozess ausführen sollen. Algorithmischer Handel (automatisierter Handel, Black-Box-Handel oder einfach algo-Handel) ist der Prozess der Verwendung von Computern programmiert, um eine definierte Reihe von Anweisungen für die Platzierung eines Handels folgen, um Gewinne mit einer Geschwindigkeit und Häufigkeit, die unmöglich ist, Menschlichen Händler. Die definierten Regelsätze basieren auf Timing, Preis, Menge oder jedem mathematischen Modell. Neben den Gewinnchancen für den Trader macht algo-trading die Märkte liquider und macht den Handel systematischer, indem er emotionale menschliche Auswirkungen auf die Handelsaktivitäten ausschließt. Angenommen, ein Trader folgt diesen einfachen Handelskriterien: Kaufe 50 Aktien einer Aktie, wenn der 50-Tage-Gleitende Durchschnitt über dem 200-Tage-Gleitdurchschnitt liegt. Verkaufe Aktien der Aktie, wenn der 50-Tage-Gleitende Durchschnitt unter den 200-Tage-Gleitender Durchschnitt fällt Unter Verwendung dieses Satzes von zwei einfachen Anweisungen ist es einfach, ein Computerprogramm zu schreiben, das automatisch den Aktienkurs (und die gleitenden Durchschnittsindikatoren) überwacht und die Kauf - und Verkaufsaufträge platziert, wenn die definierten Bedingungen erfüllt sind. Der Händler muss nicht mehr eine Uhr für Live-Preise und Grafiken, oder legen Sie die Aufträge manuell zu halten. Das algorithmische Handelssystem tut es automatisch, indem er die Handelschance korrekt identifiziert. (Mehr zu den gleitenden Durchschnitten finden Sie unter: Einfache Bewegungsdurchschnitte machen Trends aus.) Algo-trading bietet die folgenden Vorteile: Handel zu bestmöglichen Preisen ausgeführt Sofortige und genaue Auftragsabwicklung (dadurch hohe Chancen bei der Ausführung auf gewünschten Ebenen) Trades Timing korrekt und sofort, um signifikante Preisänderungen zu vermeiden Reduzierte Transaktionskosten (siehe nachfolgendes Beispiel für die Implementierungsminderung) Gleichzeitige automatisierte Überprüfung mehrerer Marktbedingungen Reduziertes Risiko für manuelle Fehler bei der Platzierung der Trades Backtest des Algorithmus auf der Grundlage verfügbarer historischer und Echtzeitdaten Reduziert Möglichkeit von Fehlern durch menschliche Händler auf der Grundlage emotionaler und psychologischer Faktoren Der größte Teil des heutigen Algo-Handels ist der Hochfrequenzhandel (HFT), der versucht, eine große Anzahl von Aufträgen mit sehr schnellen Geschwindigkeiten auf mehrere Märkte und mehrere Entscheidungen zu setzen Parameter, basierend auf vorprogrammierten Anweisungen. Algo-Handel wird in vielen Formen von Handels - und Investitionstätigkeiten eingesetzt, darunter: mittel - bis langfristige Anleger oder Kaufbeteiligungen (Pensionskassen) , Investmentfonds, Versicherungsgesellschaften), die zwar in großen Mengen kaufen, aber nicht die Aktienpreise mit diskreten, großvolumigen Investitionen beeinflussen wollen. Kurzfristige Händler und Verkaufsseitenteilnehmer (Marktmacher, Spekulanten und Arbitrageure) profitieren von automatisierter Handelsausführung, algo-Handelshilfen, um genügend Liquidität für Verkäufer auf dem Markt zu schaffen. Systematische Händler (Trendfolger, Paare Händler, Hedgefonds usw.) finden es viel effizienter, ihre Handelsregeln zu programmieren und das Programm automatisch handeln zu lassen. Algorithmischen Handel bietet einen systematischeren Ansatz für den aktiven Handel als Methoden auf der Grundlage einer menschlichen Händler Intuition oder Instinkt. Algorithmische Handelsstrategien Jede Strategie für den algorithmischen Handel erfordert eine identifizierte Chance, die in Bezug auf ein verbessertes Ergebnis oder eine Kostensenkung rentabel ist. Die folgenden handelsstrategien werden im algo-handel verwendet: Die gebräuchlichsten algorithmischen handelsstrategien folgen den trends bei gleitenden durchschnitten. Kanal Ausbrüche. Preisniveaubewegungen und damit zusammenhängende technische Indikatoren. Dies sind die einfachsten und einfachsten Strategien, um durch den algorithmischen Handel zu implementieren, da diese Strategien keine Prognosen oder Preisvorhersagen beinhalten. Trades werden basierend auf dem Auftreten von wünschenswerten Trends initiiert. Die einfach und unkompliziert durch Algorithmen implementiert werden können, ohne in die Komplexität der Vorhersageanalyse einzutreten. Das oben genannte Beispiel für 50 und 200 Tage gleitenden Durchschnitt ist ein beliebter Trend nach Strategie. (Für mehr über Tendenzhandelsstrategien siehe: Einfache Strategien zur Aktivierung von Trends.) Der Kauf eines dualen börsennotierten Wertpapiers zu einem niedrigeren Kurs in einem Markt und der gleichzeitigen Veräußerung zu einem höheren Preis in einem anderen Markt bietet die Preisdifferenz als risikofreien Gewinn Oder Arbitrage. Der gleiche Vorgang kann für Aktien gegen Futures-Instrumente repliziert werden, da Preisunterschiede von Zeit zu Zeit bestehen. Die Implementierung eines Algorithmus zur Identifizierung solcher Preisunterschiede und die Platzierung der Aufträge ermöglicht profitable Chancen in effizienter Weise. Die Indexfonds haben definierte Perioden des Ausgleichs festgelegt, um ihre Bestände auf ihre Benchmark-Indizes zu bringen. Dies schafft profitable Chancen für algorithmische Händler, die auf erwarteten Trades, die 20-80 Basispunkte Gewinne in Abhängigkeit von der Anzahl der Aktien im Index-Fonds, kurz vor dem Index Fonds Rebalancing bieten zu profitieren. Solche Trades werden über algorithmische Handelssysteme für rechtzeitige Ausführung und beste Preise initiiert. Viele bewährte mathematische Modelle, wie die delta-neutrale Trading-Strategie, die den Handel auf Kombination von Optionen und die zugrunde liegenden Sicherheit ermöglichen. Wo Trades zum Ausgleich von positiven und negativen Deltas platziert werden, so dass das Portfolio-Delta auf Null gehalten wird. Die mittlere Reversionsstrategie basiert auf der Idee, dass die hohen und niedrigen Preise eines Vermögenswertes ein temporäres Phänomen sind, das periodisch auf ihren Mittelwert zurückgeht. Ermittlung und Definition einer Preisspanne und Implementierung Algorithmus auf der Grundlage, dass Trades automatisch platziert werden, wenn der Preis für Asset Pausen in und aus der definierten Bereich ermöglicht. Die volumengewogene durchschnittliche Preisstrategie bricht einen großen Auftrag auf und gibt dynamisch bestimmte kleinere Stücke des Auftrags auf den Markt ab, indem sie spezifische historische Volumenprofile verwendet. Ziel ist es, die Order in der Nähe des volumengewichteten Durchschnittspreises (VWAP) auszuführen und damit den Durchschnittspreis zu nutzen. Die zeitgewichtete durchschnittliche Preisstrategie baut einen großen Auftrag auf und gibt dynamisch bestimmte kleinere Stücke des Auftrags auf dem Markt unter Verwendung gleichmäßig geteilter Zeitschlitze zwischen einer Anfangs - und einer Endzeit frei. Ziel ist es, die Order in der Nähe des Durchschnittspreises zwischen der Start - und Endzeit durchzuführen und damit die Marktwirkung zu minimieren. Solange der Handelsauftrag nicht vollständig gefüllt ist, setzt dieser Algorithmus fort, Teilaufträge entsprechend der definierten Teilnahmequote und entsprechend dem auf den Märkten gehandelten Volumen zu senden. Die zugehörige Schrittstrategie sendet Aufträge zu einem benutzerdefinierten Prozentsatz des Marktvolumens und erhöht oder verringert diese Beteiligungsquote, wenn der Aktienkurs auf benutzerdefinierte Ebenen ankommt. Die Implementierungs-Defizit-Strategie zielt darauf ab, die Ausführungskosten eines Auftrags durch den Handel auf dem Real-Time-Markt zu minimieren, wodurch die Kosten der Bestellung gespart und die Opportunitätskosten der verzögerten Ausführung profitieren. Die Strategie wird die angestrebte Beteiligungsquote erhöhen, wenn sich der Aktienkurs positiv entwickelt und sinkt, wenn der Aktienkurs sich negativ bewegt. Es gibt einige spezielle Klassen von Algorithmen, die versuchen, Ereignisse auf der anderen Seite zu identifizieren. Diese Sniffing-Algorithmen, die beispielsweise von einem Sell-Market-Hersteller genutzt werden, haben die eingebaute Intelligenz, um die Existenz von Algorithmen auf der Buy-Seite eines großen Auftrags zu identifizieren. Eine solche Erkennung durch Algorithmen hilft dem Marktmacher, große Orderchancen zu identifizieren und ihm zu ermöglichen, durch das Ausfüllen der Aufträge zu einem höheren Preis zu profitieren. Dies wird manchmal als Hightech-Front-Run bezeichnet. (Für mehr über Hochfrequenzhandel und betrügerische Praktiken, siehe: Wenn Sie Aktien kaufen, sind Sie in HFTs beteiligt.) Technische Anforderungen für Algorithmic Trading Die Umsetzung der Algorithmus mit einem Computer-Programm ist der letzte Teil, mit Backtesting clubbed. Die Herausforderung besteht darin, die identifizierte Strategie in einen integrierten EDV-gestützten Prozess umzuwandeln, der Zugang zu einem Handelskonto für die Auftragserteilung hat. Die folgenden werden benötigt: Programmierkenntnisse, um die erforderliche Handelsstrategie zu programmieren, angeheuerte Programmierer oder vorgefertigte Handelssoftware Netzwerkkonnektivität und Zugang zu Handelsplattformen, um die Aufträge zu vergeben Zugang zu Marktdatenfeeds, die durch den Algorithmus auf Gelegenheitsmöglichkeiten überwacht werden Bestellungen Die Fähigkeit und Infrastruktur, Backtest System einmal gebaut, bevor es live auf realen Märkten Erhältliche historische Daten für Backtesting, abhängig von der Komplexität der Regeln in Algorithmen implementiert Hier ist ein umfassendes Beispiel: Royal Dutch Shell (RDS) ist in Amsterdam gelistet (AEX) und der London Stock Exchange (LSE). Erstellen Sie einen Algorithmus, um Arbitrage-Chancen zu identifizieren. Hier sind einige interessante Beobachtungen: AEX-Geschäfte in Euros, während LSE in Sterling Pfund handelt Wegen der einstündigen Zeitverschiebung, öffnet AEX eine Stunde früher als LSE, gefolgt von beiden Börsen, die gleichzeitig für die nächsten paar Stunden gehandelt werden und dann nur im LSE Handel Die letzte Stunde als AEX schließt Können wir erkunden die Möglichkeit des Arbitrage-Handels auf der Royal Dutch Shell-Aktien auf diesen beiden Märkten in zwei verschiedenen Währungen aufgeführt Ein Computer-Programm, das aktuelle Marktpreise lesen können Preis-Feeds von LSE und AEX A forex Rate Feed für GBP-EUR-Umrechnungskurs Auftragsvergabe, die den Auftrag an den richtigen Austausch weiterleiten kann Rücktestfähigkeit auf historische Preisvorschübe Das Computerprogramm sollte folgende Schritte ausführen: Lesen Sie den eingehenden Preisvorschub des RDS-Bestands von beiden Börsen mit den verfügbaren Wechselkursen . Wandeln Sie den Preis einer Währung in einen anderen um. Wenn es eine ausreichend große Preisdiskrepanz gibt (Rabatt auf die Maklergebühren), die zu einer rentablen Chance führt, dann legen Sie den Kaufauftrag auf den günstigeren Devisenumtausch und Verkaufsauftrag auf höherer Kurswährung an Erwünscht, wird die Arbitrage Profit folgen Einfach und leicht Aber die Praxis der algorithmischen Handel ist nicht so einfach zu pflegen und auszuführen. Denken Sie daran, wenn Sie einen Algo-generierten Handel platzieren können, so können die anderen Marktteilnehmer. Infolgedessen schwanken die Preise in Milli - und sogar Mikrosekunden. In dem oben genannten Beispiel, was passiert, wenn Ihr Kaufhandel ausgeführt wird, aber verkaufen Handel nicht, wie die Verkaufspreise ändern sich durch die Zeit Ihre Bestellung trifft den Markt Sie werden am Ende sitzen mit einer offenen Position. So dass Ihre Arbitrage-Strategie wertlos. Es gibt zusätzliche Risiken und Herausforderungen: zum Beispiel Systemausfallrisiken, Netzwerkkonnektivitätsfehler, Zeitverzögerungen zwischen Handelsaufträgen und Ausführung und vor allem unvollständige Algorithmen. Je komplexer ein Algorithmus ist, desto strenger ist das Backtesting, bevor es in die Tat umgesetzt wird. Quantitative Analyse einer Algorithmen-Performance spielt eine wichtige Rolle und sollte kritisch untersucht werden. Seine spannende für die Automatisierung von Computern mit einer Vorstellung, um Geld zu machen mühelos gehen. Aber man muss sicherstellen, dass das System gründlich getestet wird und die erforderlichen Grenzen gesetzt sind. Analytische Händler sollten das Lernen von Programmierungs - und Gebäudesystemen selbst in Erwägung ziehen, um sicherzustellen, dass die richtigen Strategien in narrensicherer Weise umgesetzt werden. Sorgfältige Verwendung und gründliche Prüfung von Algo-Handel kann profitable Chancen zu schaffen. Statistiken ein einfacher gleitender Durchschnitt ist ein Algorithmus, der die ungewichtete Mittel der letzten n Proben berechnet. Der Parameter n wird oft als Fenstergröße bezeichnet, da der Algorithmus als Fenster betrachtet werden kann, das über die Datenpunkte gleitet. Unter Verwendung einer rekursiven Formulierung des Algorithmus wird die Anzahl der Operationen, die pro Probe erforderlich sind, auf eine Addition, eine Subtraktion und eine Division reduziert. Da die Formulierung unabhängig von der Fenstergröße n ist. Die Laufzeitkomplexität ist O (1). D. h. Die rekursive Formel des ungewichteten gleitenden Mittelwertes ist, wobei avg der rollende Mittelwert und x ein Datenpunkt ist. Wenn also das Fenster nach rechts gleitet, fällt ein Datenpunkt, der Schwanz, ab und ein Datenpunkt, der Kopf, bewegt sich hinein. Implementierung Eine Implementierung des einfachen gleitenden Mittels muss folgendes berücksichtigen Algorithmusinitialisierung Solange Das Fenster nicht vollständig mit Werten belegt wird, schlägt die rekursive Formel fehl. Lagerung Der Zugriff auf das Heizelement ist erforderlich, was je nach Implementierung eine Speicherung von n Elementen erfordert. Meine Implementierung verwendet die vorgestellte Formel, wenn das Fenster vollständig mit Werten gefüllt wird, und wechselt andererseits auf die Formel, die den Mittelwert aktualisiert, indem die Summe der vorherigen Elemente neu berechnet wird. Beachten Sie, dass dies aufgrund der Gleitpunktarithmetik zu numerischen Instabilitäten führen kann. Was den Speicherverbrauch angeht, verwendet die Implementierung Iteratoren zum Verfolgen von Kopf - und Schwanz-Elementen. Dies führt zu einer Implementierung mit konstantem Speicherbedarf unabhängig von der Fenstergröße. Hier ist die Aktualisierungsprozedur, die das Fenster nach rechts verschiebt. In. NET die meisten der Sammlungen ihre Enumeratoren ungültig, wenn die zugrundeliegende Sammlung geändert wird. Die Implementierung setzt jedoch auf gültige Enumeratoren. Insbesondere bei streamingbasierten Anwendungen muss die zugrundeliegende Sammlung geändert werden, wenn ein neues Element eintrifft. Eine Möglichkeit, dies zu bewältigen, besteht darin, eine einfache kreisförmige Sammlung von fester Größe der Größe n1 zu erstellen, die ihre Iteratoren niemals ungültig macht und alternativ ein Element hinzufügt und die Verschiebung aufruft. Ich wünschte, ich könnte herausfinden, wie man tatsächlich implementieren, da die Test-Funktion ist sehr verwirrend, me8230 Muss ich Daten in Array konvertieren, dann SMA SMA SMA (20, Array) für eine 20-Periode SMA laufen Wie behandle ich Shift () - Funktion Ist es notwendig, Konstruktoren zu implementieren. (Entschuldigen Sie das Durcheinander). Nein Sie don8217t müssen Ihre Daten in ein Array zu konvertieren, solange Ihre Daten implementiert IEnumerable1 und die Aufzählung Typ ist doppelt. Soweit Ihr privates Messaging betroffen ist, müssen Sie das DataRow zu etwas umwandeln, das von den doppelten Werten aufzählbar ist. Ihr Ansatz funktioniert. Shift, verschiebt das Fenster um eine Position nach links. Für einen Datensatz von etwa 40 Werten und eine 20-stündige SMA haben Sie 21 Positionen das Fenster passt in (40 8211 20 1). Jedes Mal, wenn Sie Shift () aufrufen, wird das Fenster um eine Position nach links verschoben, und Average () gibt die SMA für die aktuelle Fensterposition zurück. Das heißt, der ungewichtete Durchschnitt aller Werte innerhalb des Fensters. Darüber hinaus ermöglicht meine Implementierung, die SMA zu berechnen, auch wenn das Fenster nicht vollständig am Anfang gefüllt ist. Also im Wesentlichen Hope dies hilft. Alle weiteren Fragen COPYRIGHT NOTICE Christoph Heindl und cheind. wordpress, 2009-2012. Unerlaubte Verwendung und Vervielfältigung dieses Materials ohne ausdrückliche und schriftliche Genehmigung von diesem Blog-Autor andor Eigentümer ist streng verboten. Auszüge und Links können verwendet werden, sofern Christoph Heindl und cheind. wordpress mit entsprechender und konkreter Orientierung zum Originalinhalt volle und klare Gutschrift erteilt werden. Recent PostsA Closer Blick auf die erweiterte CODAS Moving Average Algorithmus Vielseitig gleitenden Durchschnitt in Advanced CODAS-Algorithmus filtert Wellenformrauschen, extrahiert Mittelwert und eliminiert Baseline Drift. Der gleitende Durchschnitt ist eine einfache mathematische Technik, die primär zur Beseitigung von Aberrationen verwendet wird und den tatsächlichen Trend in einer Sammlung von Datenpunkten offenbart. Sie könnten mit ihm aus der Mittelung lärmender Daten in einem Neuling Physik-Experiment oder aus der Verfolgung der Wert einer Investition vertraut sein. Sie wissen vielleicht nicht, dass der gleitende Durchschnitt auch ein Prototyp des endlichen Impulsantwortfilters ist, der häufigste Filtertyp, der in der computerbasierten Instrumentierung verwendet wird. In Fällen, in denen eine gegebene Wellenform mit Rauschen überlagert ist, wo ein Mittel aus einem periodischen Signal extrahiert werden muss oder wo eine langsam driftende Grundlinie aus einem Signal höherer Frequenz eliminiert werden muss, kann ein gleitender Durchschnittsfilter angewendet werden, um das gewünschte zu erzielen Ergebnis. Der gleitende Durchschnittsalgorithmus von Advanced CODAS bietet diese Art der Wellenformfilterleistung. Advanced CODAS ist ein Analyse-Softwarepaket, das auf vorhandenen Wellenformdateien arbeitet, die von WinDaq oder WinDaq-Datenerfassungspaketen der zweiten Generation erstellt wurden. Zusätzlich zu dem gleitenden durchschnittlichen Algorithmus enthält Advanced CODAS auch ein Berichtsgenerator-Dienstprogramm und Software-Routinen für Wellenformintegration, Differenzierung, Peak - und Tal-Erfassung, Rektifikation und arithmetische Operationen. Moving Average Filter Theorie DATAQ Instruments Moving Average Algorithmus ermöglicht eine große Flexibilität in Wellenform-Filter-Anwendungen. Es kann als Tiefpaßfilter verwendet werden, um das Rauschen, das bei vielen Arten von Wellenformen anliegt, oder als Hochpaßfilter zu dämpfen, um eine Drift-Grundlinie von einem Signal höherer Frequenz zu eliminieren. Das Verfahren, das von dem Algorithmus verwendet wird, um die Filtermenge zu bestimmen, beinhaltet die Verwendung eines Glättungsfaktors. Dieser Glättungsfaktor, der von Ihnen durch die Software gesteuert wird, kann erhöht oder verringert werden, um die Anzahl der tatsächlichen Wellenformdatenpunkte oder Abtastwerte anzugeben, die der gleitende Durchschnitt überspannt. Jede periodische Wellenform kann als eine lange Zeichenkette oder Sammlung von Datenpunkten gedacht werden. Der Algorithmus führt einen gleitenden Durchschnitt durch, indem er zwei oder mehr dieser Datenpunkte aus der erfassten Wellenform abgibt, addiert, ihre Summe durch die Gesamtanzahl der hinzugefügten Datenpunkte dividiert und den ersten Datenpunkt der Wellenform durch den gerade berechneten Durchschnitt ersetzt Wiederholen der Schritte mit den zweiten, dritten und so weiter Datenpunkten, bis das Ende der Daten erreicht ist. Das Ergebnis ist eine zweite oder erzeugte Wellenform, die aus den gemittelten Daten besteht und die gleiche Anzahl von Punkten wie die ursprüngliche Wellenform aufweist. Abbildung 1 8212 Jede periodische Wellenform kann als eine lange Zeichenkette oder Sammlung von Datenpunkten gedacht werden. In der obigen Darstellung werden konsekutive Wellenformdatenpunkte durch quotyquot dargestellt, um zu veranschaulichen, wie der gleitende Durchschnitt berechnet wird. In diesem Fall wurde ein Glättungsfaktor von drei angewandt, was bedeutet, dass drei aufeinander folgende Datenpunkte aus der ursprünglichen Wellenform hinzugefügt werden, wobei ihre Summe durch drei geteilt wird, und dann wird dieser Quotient als der erste Datenpunkt einer erzeugten Wellenform aufgetragen. Der Vorgang wiederholt sich mit den zweiten, dritten und anderen Datenpunkten der ursprünglichen Wellenform, bis das Ende der Daten erreicht ist. Eine spezielle Quotientierquot-Technik misst die Anfangs - und Enddatenpunkte der ursprünglichen Wellenform, um sicherzustellen, dass die erzeugte Wellenform die gleiche Anzahl von Datenpunkten wie die Vorlage enthält. Fig. 1 zeigt, wie der gleitende Mittelalgorithmus auf Wellenformdatenpunkte (die durch y dargestellt werden) angewendet wird. Die Abbildung zeigt einen Glättungsfaktor von 3, was bedeutet, dass der Durchschnittswert (dargestellt durch a) über 3 aufeinanderfolgende Wellenformdatenwerte berechnet wird. Beachten Sie die Überlappung, die in den gleitenden Durchschnittsberechnungen vorhanden ist. Es ist diese überlappende Technik, zusammen mit einer speziellen Anfangs - und Endpunktbehandlung, die die gleiche Anzahl von Datenpunkten in der gemittelten Wellenform erzeugt, wie sie im Original existiert. Die Art und Weise, wie der Algorithmus einen gleitenden Durchschnitt berechnet, verdient einen genaueren Blick und kann an einem Beispiel veranschaulicht werden. Sagen wir haben auf einer Diät für zwei Wochen und wir wollen unser durchschnittliches Gewicht in den letzten 7 Tagen zu berechnen. Wir würden unser Gewicht an Tag 7 mit unserem Gewicht an den Tagen 8, 9, 10, 11, 12 und 13 summieren und dann mit 17 multiplizieren. Um das Verfahren zu formalisieren, kann dies folgendermaßen ausgedrückt werden: a (7) 7) y (8) y (9) y (13) Diese Gleichung kann weiter verallgemeinert werden. Der gleitende Mittelwert einer Wellenform kann folgendermaßen berechnet werden: wobei: ein gemittelter Wert n Datenpunktposition s Glättungsfaktor y aktueller Datenpunktwert Bild 2 8212 Die Ausgangswellenform der Kraftmesszelle, die im oberen Kanal als Original und ungefiltert dargestellt ist, und als ein 11-Punkt Gemittelte Wellenform im unteren Kanal. Das Rauschen, das auf der ursprünglichen Wellenform auftritt, war auf die intensiven Vibrationen zurückzuführen, die durch die Presse während des Verpackungsvorgangs erzeugt wurden. Der Schlüssel zu dieser Algorithmenflexibilität ist sein breites Spektrum an auswählbaren Glättungsfaktoren (von 2 - 1.000). Der Glättungsfaktor bestimmt, wie viele tatsächliche Datenpunkte oder Proben gemittelt werden sollen. Das Angeben eines positiven Glättungsfaktors simuliert einen Tiefpaßfilter, während ein negativer Glättungsfaktor ein Hochpassfilter simuliert. Bei dem Absolutwert des Glättungsfaktors gelten bei höheren Werten grßere Glättungsbeschränkungen für die resultierende Wellenform und umgekehrt niedrigere Werte weniger Glättung. Mit der Anwendung des geeigneten Glättungsfaktors kann der Algorithmus auch verwendet werden, um den Mittelwert einer gegebenen periodischen Wellenform zu extrahieren. Ein höherer positiver Glättungsfaktor wird typischerweise angewendet, um mittlere Wellenformwerte zu erzeugen. Anwenden des Moving Average Algorithmus Ein herausragendes Merkmal des gleitenden Durchschnittsalgorithmus ist, dass es viele Male auf die gleiche Wellenform angewendet werden kann, um das gewünschte Filterergebnis zu erhalten. Waveform-Filterung ist eine sehr subjektive Übung. Was möglicherweise eine richtig gefilterte Wellenform zu einem Benutzer sein kann, kann unannehmbar laut zu einem anderen sein. Nur Sie können beurteilen, ob die Anzahl der gemittelten Punkte zu hoch, zu niedrig oder genau richtig gewählt wurde. Die Flexibilität des Algorithmus ermöglicht es Ihnen, den Glättungsfaktor anzupassen und einen weiteren Durchlauf durch den Algorithmus durchzuführen, wenn mit dem anfänglichen Versuch keine zufriedenstellenden Ergebnisse erzielt werden. Die Anwendung und die Fähigkeiten des gleitenden Durchschnittsalgorithmus können am besten durch die folgenden Beispiele veranschaulicht werden. Abbildung 3 8212 Die EKG-Wellenform, die ursprünglich und ungefiltert im oberen Kanal und als 97-Punkt-gemittelte Wellenform im unteren Kanal angezeigt wurde. Beachten Sie die Abwesenheit von Baseline Drift im unteren Kanal. Beide Wellenformen werden in einem komprimierten Zustand für Präsentationszwecke gezeigt. Eine Rauschunterdrückungsanwendung In Fällen, in denen eine gegebene Wellenform mit Rauschen überladen ist, kann das gleitende Durchschnittsfilter angewendet werden, um das Rauschen zu unterdrücken und ein klareres Bild der Wellenform zu liefern. Zum Beispiel benutzte ein fortgeschrittener CODAS-Kunde eine Presse und eine Wägezelle in einem Verpackungsbetrieb. Ihr Produkt sollte auf ein vorbestimmtes Niveau (überwacht durch die Kraftmesszelle) komprimiert werden, um die Größe der Verpackung zu reduzieren, die erforderlich ist, um das Produkt aufzunehmen. Aus Qualitätskontrollgründen beschlossen sie, den Pressenbetrieb mit Instrumentierung zu überwachen. Ein unerwartetes Problem trat auf, als sie begannen, die Echtzeit-Wägezellenausgabe anzuzeigen. Da die Pressenmaschine während des Betriebs beträchtlich vibrierte, war die Ausgangswellenform der Lastzellen schwierig zu unterscheiden, da sie eine große Menge an Rauschen aufgrund der Schwingung aufwies, wie dies in dem oberen Kanal von Fig. 2 gezeigt ist. Dieses Rauschen wurde eliminiert, indem ein 11-Punkt-gemittelter Kanal erzeugt wurde, wie in dem unteren Kanal von Fig. 2 gezeigt. Das Ergebnis war ein deutlich deutlicheres Bild der Wägezellenausgabe. Eine Anwendung bei der Beseitigung von Baseline Drift In Fällen, in denen eine langsam driftende Grundlinie aus einem Signal mit höherer Frequenz entfernt werden muss, kann das gleitende Durchschnittsfilter angewendet werden, um die Drift-Baseline zu eliminieren. Beispielsweise weist eine EKG-Wellenform typischerweise einen gewissen Grad an Grundlinienwanderung auf, wie in dem oberen Kanal von 3 zu sehen ist. Diese Grundliniendrift kann eliminiert werden, ohne die Eigenschaften der Wellenform zu verändern oder zu stören, wie in dem unteren Kanal von Fig. 3 gezeigt. Dies wird durch Anwenden eines geeigneten negativen Glättungsfaktors während der gleitenden Durchschnittsberechnung erreicht. Der geeignete Glättungsfaktor wird durch Dividieren einer Wellenformperiode (in Sekunden) durch das Abtastintervall der Kanäle bestimmt. Das Abtastintervall der Kanäle ist einfach der Reziprokwert der Abtastrate der Kanäle und wird bequem auf dem gleitenden Durchschnitts-Utility-Menü angezeigt. Die Wellenformperiode kann leicht aus dem Anzeigebildschirm bestimmt werden, indem der Cursor an einem geeigneten Punkt auf der Wellenform positioniert, eine Zeitmarke eingestellt und dann der Cursor einen vollständigen Zyklus von der angezeigten Zeitmarke weg bewegt wird. Die Zeitdifferenz zwischen Cursor und Zeitmarke ist eine Wellenformperiode und wird am unteren Rand des Bildschirms in Sekunden angezeigt. In unserem EKG-Beispiel besaß die Wellenform ein Kanalabtastintervall von 0,004 Sekunden (erhalten aus dem gleitenden mittleren Utility-Menü) und eine Wellenformperiode wurde gemessen, um 0,388 Sekunden zu überspannen. Das Dividieren der Wellenformperiode durch das Abtastintervall der Kanäle lieferte einen Glättungsfaktor von 97. Da es sich um die Grundliniendrift handelt, die wir an der Eliminierung interessieren, haben wir einen negativen Glättungsfaktor (-97) auf den gleitenden Durchschnittsalgorithmus angewendet. Dies subtrahierte das gleitende Durchschnittsergebnis des ursprünglichen Wellenformsignals, das die Grundliniendrift ohne störende Wellenforminformation eliminierte. Other Waveform Moving Average Issues Unabhängig von der Anwendung ist der universelle Grund für die Anwendung eines gleitenden mittleren Filters auf Quotsmooth outquot die hohen und niedrigen Aberrationen und zeigen einen repräsentativeren Zwischen-Wellenformwert. Dabei sollte die Software bei der Erzeugung einer gleitenden gemittelten Wellenform nicht andere Merkmale der ursprünglichen Wellenform beeinträchtigen. Beispielsweise sollte die Software automatisch die mit der ursprünglichen Datendatei verknüpften Kalibrierungsinformationen einstellen, so dass sich die gleitende gemittelte Wellenform in den geeigneten technischen Einheiten befindet, wenn sie erzeugt werden. Alle Messwerte in den Abbildungen wurden mit WinDaq Data Acquisition Software


No comments:

Post a Comment