Diskussion zum Artikel "Implementierung eines ARIMA-Trainingsalgorithmus in MQL5"

 

Neuer Artikel Implementierung eines ARIMA-Trainingsalgorithmus in MQL5 :

In diesem Artikel wird ein Algorithmus implementiert, der das autoregressive integrierte gleitende Durchschnittsmodell von Box und Jenkins unter Verwendung der Powells-Methode der Funktionsminimierung anwendet. Box und Jenkins stellten fest, dass die meisten Zeitreihen mit einem oder beiden Rahmen modelliert werden können.

Bisher haben wir uns mit der Implementierung eines autoregressiven Trainingsalgorithmus befasst, ohne anzugeben, wie man die geeignete Reihenfolge für ein Modell ableitet oder auswählt. Die Ausbildung eines Modells ist wahrscheinlich der einfachste Teil, im Gegensatz zur Bestimmung eines guten Modells.


Zwei nützliche Instrumente zur Ableitung eines geeigneten Modells sind die Berechnung der Autokorrelation und der partiellen Autokorrelation einer untersuchten Reihe. Als Leitfaden für die Interpretation von Autokorrelations- und partiellen Autokorrelationsdiagrammen werden wir vier hypothetische Reihen betrachten.
                                                                  y(t) = AR1* y(t-1) +  E(t)           (3) 

                 
                                                                  y(t) = E(t) - AR1 * y(t-1)            (4) 

            
                                                                  y(t) = MA1 * E(t-1) +  E(t)          (5) 

                
                                                                   y(t) = E(t) - MA1 * E(t-1)           (6) 

    
(3) und (4) sind reine AR(1)-Prozesse mit positiven bzw. negativen Koeffizienten. (5) und (6) sind reine MA(1)-Prozesse mit positiven bzw. negativen Koeffizienten.  

Autokorrelationen von Reihen mit einem positiven AR-Term bzw. einem negativen AR-Term


Die obigen Zahlen sind die Autokorrelationen von (3) bzw. (4). In beiden Diagrammen werden die Korrelationswerte mit zunehmender Verzögerung kleiner. Dies ist sinnvoll, da die Auswirkung eines früheren Wertes auf den aktuellen Wert abnimmt, je weiter man in der Reihe nach oben geht.

Autor: Francis Dube

 
Wenn Y die Zeitreihe ist, wie kann ich dann das Molded Y Array aus dem von Ihnen bereitgestellten Code finden?
 
Ramzi D Zeitreihe ist, wie kann ich dann das Molded Y Array aus dem von Ihnen bereitgestellten Code finden?
double y[];//y mit Seriendaten füllen-----

// CArima-Instanz erstellen
CArima arima; 
//Zug 
arima.fit(y,p,d,q,use_constant_offset); // p , d und q sind die Modellparameter, über die Sie entscheiden müssen, use_constant_offset ist ein boolescher Wert, der die Verwendung einer Konstante im Modell angibt, die Methode gibt bei Erfolg true zurück, wenn true, dann ist das Modell erstellt, es kann dann für Vorhersagen verwendet werden

Wenn Sie Schwierigkeiten haben, geben Sie bitte an, wo Sie sich verlaufen haben.