Saturday 25 February 2017

Moving Average Modell Beobachtungen

Net. sourceforge. openforecast. models Klasse WeightedMovingAverageModel Ein gewichtetes gleitendes Durchschnittsprognosemodell basiert auf einer künstlich konstruierten Zeitreihe, in der der Wert für einen gegebenen Zeitraum durch den gewichteten Mittelwert dieses Werts und die Werte für eine gewisse Anzahl vorhergehender Zeit ersetzt wird Zeiträume. Wie Sie vielleicht aus der Beschreibung erraten haben, ist dieses Modell am besten für Zeitreihendaten, d. H. Daten, die sich über die Zeit ändern, geeignet. Da der Prognosewert für einen gegebenen Zeitraum ein gewichteter Durchschnitt der vorangegangenen Perioden ist, wird die Prognose immer scheinbar zurückbleiben, entweder bei der Erhöhung oder Verminderung der beobachteten (abhängigen) Werte. Wenn beispielsweise eine Datenreihe einen merkbaren Aufwärtstrend aufweist, wird eine gewichtete gleitende Durchschnittsprognose generell eine Unterbewertung der Werte der abhängigen Variablen liefern. Das gewichtete gleitende Durchschnittsmodell, wie das gleitende Durchschnittsmodell, hat gegenüber anderen Prognosemodellen einen Vorteil, dass es in einer Reihe von Beobachtungen Gipfel und Mulden (oder Täler) glättet. Jedoch, wie das gleitende Durchschnittmodell, hat es auch einige Nachteile. Insbesondere erzeugt dieses Modell keine tatsächliche Gleichung. Daher ist es nicht alles, was nützlich als ein Mittel-Langstrecken-Prognose-Tool. Es kann nur zuverlässig genutzt werden, um ein paar Perioden in die Zukunft zu prognostizieren. Seit: 0.4 Autor: Steven R. Gould Felder geerbt aus der Klasse net. sourceforge. openforecast. models. AbstractForecastingModel WeightedMovingAverageModel () Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell. WeightedMovingAverageModel (Doppelgewichte) Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell unter Verwendung der angegebenen Gewichte. Prognose (double timeValue) Gibt den Prognosewert der abhängigen Variablen für den gegebenen Wert der unabhängigen Zeitvariablen zurück. GetForecastType () Gibt einen oder zwei Wortnamen dieser Art von Prognosemodell zurück. GetNumberOfPeriods () Gibt die aktuelle Anzahl von Perioden zurück, die in diesem Modell verwendet werden. GetNumberOfPredictors () Gibt die Anzahl der Prädiktoren zurück, die vom zugrunde liegenden Modell verwendet werden. SetWeights (Doppelgewichte) Setzt die Gewichte dieses gewichteten gleitenden Durchschnittsprognosemodells auf die angegebenen Gewichte. ToString () Dies sollte überschrieben werden, um eine textuelle Beschreibung des aktuellen Prognosemodells zu liefern, einschließlich, wenn möglich, alle abgeleiteten Parameter. Von der Klasse geerbte Methoden network. sourceforge. openforecast. models. AbstractTimeBasedModel WeightedMovingAverageModel Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell unter Verwendung der angegebenen Gewichte. Für ein gültiges zu konstruierendes Modell sollten Sie init aufrufen und einen Datensatz mit einer Reihe von Datenpunkten übergeben, wobei die Zeitvariable initialisiert wird, um die unabhängige Variable zu identifizieren. Die Größe des Gewichts-Arrays wird verwendet, um die Anzahl der Beobachtungen zu bestimmen, die verwendet werden, um den gewichteten gleitenden Durchschnitt zu berechnen. Zusätzlich wird der letzten Periode das Gewicht gegeben, das durch das erste Element des Arrays, d. H. Gewichte, definiert ist. Die Größe des Gewichts-Arrays wird auch verwendet, um die Menge zukünftiger Perioden zu bestimmen, die effektiv prognostiziert werden können. Mit einem 50-Tage-gewichteten gleitenden Durchschnitt können wir mit einer Genauigkeit nicht mehr als 50 Tage über den letzten Zeitraum, für den Daten verfügbar sind, prognostizieren. Selbst Prognosen in der Nähe des Endes dieses Bereichs sind wahrscheinlich unzuverlässig. Hinweis zu Gewichten Im Allgemeinen sollten die Gewichte, die an diesen Konstruktor übergeben werden, bis zu 1,0 addieren. Wenn jedoch die Summe der Gewichte nicht bis zu 1,0 addiert, skaliert diese Implementierung alle Gewichte proportional, so dass sie auf 1,0 addieren. Parameter: Gewichte - ein Array von Gewichten, um den historischen Beobachtungen bei der Berechnung des gewichteten gleitenden Durchschnitts zuzuordnen. WeightedMovingAverageModel Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell, wobei die benannte Variable als unabhängige Variable und die angegebenen Gewichte verwendet wird. Parameter: independentVariable - der Name der unabhängigen Variablen, die in diesem Modell verwendet werden soll. Gewichte - ein Array von Gewichten, um den historischen Beobachtungen bei der Berechnung des gewichteten gleitenden Durchschnitts zuzuordnen. WeightedMovingAverageModel Erstellt ein neues gewichtetes gleitendes Durchschnittsprognosemodell. Dieser Konstruktor soll nur von Unterklassen (also geschützt) verwendet werden. Jede Unterklasse, die diesen Konstruktor verwendet, muss anschließend die (geschützte) setWeights-Methode aufrufen, um die von diesem Modell zu verwendenden Gewichte zu initialisieren. WeightedMovingAverageModel Konstruiert ein neues gewichtetes gleitendes Durchschnittsprognosemodell unter Verwendung der angegebenen unabhängigen Variablen. Parameter: independentVariable - der Name der unabhängigen Variablen, die in diesem Modell verwendet werden soll. SetWeights Setzt die Gewichte dieses gewichteten gleitenden Durchschnittsprognosemodells auf die angegebenen Gewichte. Dieses Verfahren soll nur von Unterklassen (also geschützt) und nur in Verbindung mit dem (geschützten) Ein-Argument-Konstruktor verwendet werden. Jede Unterklasse, die den Ein-Argument-Konstruktor verwendet, muss anschließend setWeights aufrufen, bevor die Methode AbstractTimeBasedModel. init (net. sourceforge. openforecast. DataSet) aufgerufen wird, um das Modell zu initialisieren. Anmerkung zu Gewichten Im allgemeinen sollten die an diese Methode übergebenen Gewichte bis zu 1,0 addieren. Wenn jedoch die Summe der Gewichte nicht bis zu 1,0 addiert, skaliert diese Implementierung alle Gewichte proportional, so dass sie auf 1,0 addieren. Parameter: Gewichte - ein Array von Gewichten, um den historischen Beobachtungen bei der Berechnung des gewichteten gleitenden Durchschnitts zuzuordnen. Gibt den Prognosewert der abhängigen Variablen für den gegebenen Wert der unabhängigen Zeitvariablen zurück. Unterklassen müssen diese Methode in einer Weise implementieren, die mit dem von ihnen implementierten Prognosemodell übereinstimmt. Unterklassen können die Methoden getForecastValue und getObservedValue verwenden, um frühere Prognosen und Beobachtungen zu erhalten. Gegeben durch: Prognose in der Klasse AbstractTimeBasedModel Parameter: timeValue - der Wert der Zeitvariablen, für die ein Prognosewert erforderlich ist. Gibt den Prognosewert der abhängigen Variablen für die angegebene Zeit zurück. Throws: IllegalArgumentException - Wenn es unzureichende historische Daten gibt - Beobachtungen, die an init übergeben werden -, um eine Prognose für den gegebenen Zeitwert zu generieren. GetNumberOfPredictors Gibt die Anzahl der Prädiktoren zurück, die vom zugrunde liegenden Modell verwendet werden. Rückgabewerte: die Anzahl der Prädiktoren, die das zugrunde liegende Modell verwendet. GetNumberOfPeriods Gibt die aktuelle Anzahl von Perioden zurück, die in diesem Modell verwendet werden. Angegeben durch: getNumberOfPeriods in der Klasse AbstractTimeBasedModel Gibt die aktuelle Anzahl der in diesem Modell verwendeten Perioden zurück. GetForecastType Gibt einen oder zwei Wortnamen dieser Art von Prognosemodell zurück. Halten Sie diese kurz. Eine längere Beschreibung sollte in der Methode toString implementiert werden. Dies sollte überschrieben werden, um eine textuelle Beschreibung des aktuellen Prognosemodells zu liefern, wobei nach Möglichkeit alle abgeleiteten Parameter verwendet werden. Bestimmt durch: toString in der Schnittstelle ForecastingModel Overrides: toString in der Klasse AbstractTimeBasedModel Gibt eine Stringdarstellung des aktuellen Prognosemodells und seiner Parameter. net. sourceforge. openforecast. models zurück. Class MovingAverageModel Ein gleitendes Durchschnittsprognosemodell basiert auf einer künstlich konstruierten Zeitreihe In dem der Wert für einen gegebenen Zeitraum durch den Mittelwert dieses Werts und die Werte für eine gewisse Anzahl von vorhergehenden und nachfolgenden Zeitperioden ersetzt wird. Wie Sie vielleicht aus der Beschreibung erraten haben, ist dieses Modell am besten für Zeitreihendaten, d. H. Daten, die sich über die Zeit ändern, geeignet. Zum Beispiel zeigen viele Charts von einzelnen Aktien an der Börse 20, 50, 100 oder 200 Tage gleitende Durchschnitte als Trends zu zeigen. Da der Prognosewert für einen gegebenen Zeitraum ein Durchschnitt der vorangegangenen Perioden ist, wird die Prognose immer scheinbar zurückbleiben, entweder bei Anstieg oder Abnahme der beobachteten (abhängigen) Werte. Wenn beispielsweise eine Datenreihe einen merkbaren Aufwärtstrend aufweist, wird eine gleitende Durchschnittsprognose generell eine Unterbewertung der Werte der abhängigen Variablen liefern. Die gleitende Durchschnittsmethode hat gegenüber anderen Prognosemodellen den Vorteil, dass sie in einer Reihe von Beobachtungen Gipfel und Täler (oder Täler) glättet. Es hat jedoch auch mehrere Nachteile. Insbesondere erzeugt dieses Modell keine tatsächliche Gleichung. Daher ist es nicht alles, was nützlich, da ein Mittel-Langstrecken-Prognose-Tool. Es kann nur zuverlässig verwendet werden, um ein oder zwei Perioden in die Zukunft zu prognostizieren. Das gleitende Durchschnittsmodell ist ein Spezialfall des allgemeineren gewichteten gleitenden Durchschnitts. Im einfachen gleitenden Durchschnitt sind alle Gewichte gleich. Seit: 0.3 Autor: Steven R. Gould Felder geerbt aus der Klasse net. sourceforge. openforecast. models. AbstractForecastingModel MovingAverageModel () Erstellt ein neues gleitendes Durchschnittsprognosemodell. MovingAverageModel (int period) Erstellt ein neues gleitendes Durchschnittsprognosemodell mit dem angegebenen Zeitraum. GetForecastType () Gibt einen oder zwei Wortnamen dieser Art von Prognosemodell zurück. Init (DataSet dataSet) Dient zur Initialisierung des gleitenden Durchschnittsmodells. ToString () Dies sollte überschrieben werden, um eine textuelle Beschreibung des aktuellen Prognosemodells zu liefern, einschließlich, wenn möglich, alle abgeleiteten Parameter. Methoden, die von der Klasse net. sourceforge. openforecast. models. WeightedMovingAverageModel geerbt werden MovingAverageModel Erstellt ein neues gleitendes Durchschnittsprognosemodell. Für ein gültiges zu konstruierendes Modell sollten Sie init aufrufen und einen Datensatz mit einer Reihe von Datenpunkten übergeben, wobei die Zeitvariable initialisiert wird, um die unabhängige Variable zu identifizieren. MovingAverageModel Konstruiert ein neues gleitendes Durchschnittsprognosemodell unter Verwendung des angegebenen Namens als unabhängige Variable. Parameter: independentVariable - der Name der unabhängigen Variablen, die in diesem Modell verwendet werden soll. MovingAverageModel Erstellt ein neues gleitendes Durchschnittsprognosemodell mit dem angegebenen Zeitraum. Für ein gültiges zu konstruierendes Modell sollten Sie init aufrufen und einen Datensatz mit einer Reihe von Datenpunkten übergeben, wobei die Zeitvariable initialisiert wird, um die unabhängige Variable zu identifizieren. Der Periodenwert wird verwendet, um die Anzahl der Beobachtungen zu bestimmen, die verwendet werden, um den gleitenden Durchschnitt zu berechnen. Beispielsweise sollte für einen 50-tägigen gleitenden Durchschnitt, bei dem die Datenpunkte tägliche Beobachtungen sind, der Zeitraum auf 50 gesetzt werden. Der Zeitraum wird auch verwendet, um die Menge zukünftiger Perioden zu bestimmen, die effektiv prognostiziert werden können. Mit einem 50 Tage gleitenden Durchschnitt können wir mit einer Genauigkeit nicht mehr als 50 Tage über den letzten Zeitraum, für den Daten verfügbar sind, prognostizieren. Dies kann vorteilhafter sein, als z. B. ein Zeitraum von 10 Tagen, wo wir nur vernünftigerweise 10 Tage nach der letzten Periode prognostizieren konnten. Parameter: Periode - die Anzahl der Beobachtungen, die verwendet werden, um den gleitenden Durchschnitt zu berechnen. MovingAverageModel Erstellt ein neues gleitendes Durchschnittsprognosemodell unter Verwendung des angegebenen Namens als unabhängige Variable und des angegebenen Zeitraums. Parameter: independentVariable - der Name der unabhängigen Variablen, die in diesem Modell verwendet werden soll. - die Anzahl der Beobachtungen, die zur Berechnung des gleitenden Durchschnitts verwendet werden sollen. Wird verwendet, um das gleitende Durchschnittsmodell zu initialisieren. Diese Methode muss vor jeder anderen Methode in der Klasse aufgerufen werden. Da das gleitende Durchschnittsmodell keine Gleichung für die Prognose ableitet, verwendet dieses Verfahren den Eingabedatensatz, um Prognosewerte für alle gültigen Werte der unabhängigen Zeitvariablen zu berechnen. Vorgabe durch: init in der Schnittstelle ForecastingModel Overrides: init in der Klasse AbstractTimeBasedModel Parameter: dataSet - ein Datensatz von Beobachtungen, mit dem die Prognoseparameter des Prognosemodells initialisiert werden können. GetForecastType Gibt einen oder zwei Wortnamen dieser Art von Prognosemodell zurück. Halten Sie diese kurz. Eine längere Beschreibung sollte in der Methode toString implementiert werden. Dies sollte überschrieben werden, um eine textuelle Beschreibung des aktuellen Prognosemodells zu liefern, wobei nach Möglichkeit alle abgeleiteten Parameter verwendet werden. Bestimmt durch: toString in der Schnittstelle ForecastingModel Overrides: toString in der Klasse WeightedMovingAverageModel Gibt eine Stringdarstellung des aktuellen Prognosemodells und dessen Parameter zurück. In der Praxis liefert der gleitende Durchschnitt eine gute Schätzung des Mittelwerts der Zeitreihe, wenn der Mittelwert konstant ist Oder langsam ändern. Im Fall eines konstanten Mittelwertes wird der grßte Wert von m die besten Schätzungen des zugrunde liegenden Mittels liefern. Ein längerer Beobachtungszeitraum wird die Effekte der Variabilität ausmachen. Der Zweck der Bereitstellung eines kleineren m ist es, die Prognose auf eine Änderung in dem zugrunde liegenden Prozess zu ermöglichen. Um zu veranschaulichen, schlagen wir einen Datensatz vor, der Änderungen im zugrundeliegenden Mittel der Zeitreihen enthält. Die Abbildung zeigt die Zeitreihen für die Darstellung zusammen mit der mittleren Nachfrage, aus der die Serie erzeugt wurde. Der Mittelwert beginnt als eine Konstante bei 10. Ab dem Zeitpunkt 21 erhöht er sich um eine Einheit in jeder Periode, bis er zum Zeitpunkt 30 den Wert von 20 erreicht. Dann wird er wieder konstant. Die Daten werden simuliert, indem dem Mittelwert ein Zufallsrauschen aus einer Normalverteilung mit Nullmittelwert und Standardabweichung 3 zugeführt wird. Die Ergebnisse der Simulation werden auf die nächste Ganzzahl gerundet. Die Tabelle zeigt die simulierten Beobachtungen für das Beispiel. Wenn wir die Tabelle verwenden, müssen wir bedenken, dass zu einem gegebenen Zeitpunkt nur die letzten Daten bekannt sind. Die Schätzwerte des Modellparameters, für drei verschiedene Werte von m, werden zusammen mit dem Mittelwert der Zeitreihen in der folgenden Abbildung gezeigt. Die Abbildung zeigt die gleitende durchschnittliche Schätzung des Mittelwerts zu jedem Zeitpunkt und nicht die Prognose. Die Prognosen würden die gleitenden Durchschnittskurven nach Perioden nach rechts verschieben. Eine Schlussfolgerung ergibt sich unmittelbar aus der Figur. Für alle drei Schätzungen liegt der gleitende Durchschnitt hinter dem linearen Trend, wobei die Verzögerung mit m zunimmt. Die Verzögerung ist der Abstand zwischen dem Modell und der Schätzung in der Zeitdimension. Wegen der Verzögerung unterschätzt der gleitende Durchschnitt die Beobachtungen, während der Mittelwert zunimmt. Die Vorspannung des Schätzers ist die Differenz zu einer bestimmten Zeit im Mittelwert des Modells und dem Mittelwert, der durch den gleitenden Durchschnitt vorhergesagt wird. Die Vorspannung, wenn der Mittelwert zunimmt, ist negativ. Bei einem abnehmenden Mittelwert ist die Vorspannung positiv. Die Verzögerung in der Zeit und die Bias in der Schätzung eingeführt sind Funktionen von m. Je größer der Wert von m. Desto größer ist die Größe der Verzögerung und der Vorspannung. Für eine stetig wachsende Serie mit Trend a. Die Werte der Verzögerung und der Vorspannung des Schätzers des Mittelwerts sind in den folgenden Gleichungen gegeben. Die Beispielkurven stimmen nicht mit diesen Gleichungen überein, da das Beispielmodell nicht kontinuierlich zunimmt, sondern als Konstante beginnt, sich in einen Trend ändert und dann wieder konstant wird. Auch die Beispielkurven sind vom Rauschen betroffen. Die gleitende Durchschnittsprognose der Perioden in die Zukunft wird durch die Verschiebung der Kurven nach rechts dargestellt. Die Verzögerung und die Vorspannung nehmen proportional zu. Die nachstehenden Gleichungen zeigen die Verzögerung und die Vorspannung von Prognoseperioden in die Zukunft im Vergleich zu den Modellparametern. Diese Formeln sind wiederum für eine Zeitreihe mit einem konstanten linearen Trend. Wir sollten dieses Ergebnis nicht überraschen. Der gleitende Durchschnittsschätzer basiert auf der Annahme eines konstanten Mittelwerts, und das Beispiel hat einen linearen Trend im Mittel während eines Teils des Studienzeitraums. Da Realzeitreihen den Annahmen eines Modells nur selten gehorchen, sollten wir auf solche Ergebnisse vorbereitet sein. Wir können auch aus der Figur schließen, dass die Variabilität des Rauschens den größten Effekt für kleinere m hat. Die Schätzung ist viel volatiler für den gleitenden Durchschnitt von 5 als der gleitende Durchschnitt von 20. Wir haben die widerstrebenden Wünsche, m zu erhöhen, um den Effekt der Variabilität aufgrund des Rauschens zu verringern und um m zu verringern, um die Prognose besser auf Veränderungen anzupassen Im Mittel. Der Fehler ist die Differenz zwischen den tatsächlichen Daten und dem prognostizierten Wert. Wenn die Zeitreihe wirklich ein konstanter Wert ist, ist der erwartete Wert des Fehlers Null und die Varianz des Fehlers besteht aus einem Term, der eine Funktion von und ein zweiter Term ist, der die Varianz des Rauschens ist. Der erste Term ist die Varianz des Mittelwertes mit einer Stichprobe von m Beobachtungen, vorausgesetzt, die Daten stammen aus einer Population mit einem konstanten Mittelwert. Dieser Begriff wird minimiert, indem man m so groß wie möglich macht. Ein großes m macht die Prognose auf eine Änderung der zugrunde liegenden Zeitreihen unempfänglich. Um die Prognose auf Veränderungen anzupassen, wollen wir m so klein wie möglich (1), aber dies erhöht die Fehlerabweichung. Praktische Voraussage erfordert einen Zwischenwert. Prognose mit Excel Das Prognose-Add-In implementiert die gleitenden Durchschnittsformeln. Das folgende Beispiel zeigt die Analyse des Add-In für die Beispieldaten in Spalte B. Die ersten 10 Beobachtungen sind mit -9 bis 0 indexiert. Im Vergleich zur obigen Tabelle werden die Periodenindizes um -10 verschoben. Die ersten zehn Beobachtungen liefern die Startwerte für die Schätzung und werden verwendet, um den gleitenden Durchschnitt für die Periode 0 zu berechnen. Die Spalte MA (10) zeigt die berechneten Bewegungsdurchschnitte. Der gleitende Mittelwert m ist in Zelle C3. Die Fore (1) Spalte (D) zeigt eine Prognose für einen Zeitraum in die Zukunft. Das Prognoseintervall ist in Zelle D3. Wenn das Prognoseintervall auf eine größere Zahl geändert wird, werden die Zahlen in der Spalte Vorwärts verschoben. Die Err (1) - Spalte (E) zeigt die Differenz zwischen der Beobachtung und der Prognose. Zum Beispiel ist die Beobachtung zum Zeitpunkt 1 6. Der prognostizierte Wert, der aus dem gleitenden Durchschnitt zum Zeitpunkt 0 gemacht wird, beträgt 11,1. Der Fehler ist dann -5.1. Die Standardabweichung und mittlere mittlere Abweichung (MAD) werden in den Zellen E6 bzw. E7 berechnet.


No comments:

Post a Comment