close Warning: Can't synchronize with repository "(default)" (/var/svn/mms does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#673 closed enhancement (fixed)

Inicialización de los parámetros ARIMA

Reported by: imendez Owned by: Pedro Gea
Priority: major Milestone: Release 0.6
Component: Models Keywords:
Cc:

Description (last modified by Pedro Gea)

Hola, tengo un modelo ARIMA con la etiqueta P1_12DIF1_1AR1_0MA0_12 y me llama la atención que los polinomios iniciales son:

  • parte AR: 1+0.11*B
  • parte MA: 1+0.12*B12

Aparte de la curiosidad de que uno sea 0.11 y el otro 0.12, me extraña que lleven signo negativo (si definimos los polinomios como 1-a*B), cuando entiendo que lo habitual es que el parámetro de orden 1 (en el periodo correspondiente) salga positivo.

Por lo que me ha dicho un usuario avanzado de MMS, creo que la interpretación de la etiqueta ARIMA se hace con la función GetArimaFromLabel. Investigando un poco, parece que el signo con el que entra cada parámetro es diferente en función de si la etiqueta se defina con o sin punto. Con el siguiente ejemplo se puede comprobar:

Set s1 = GetArimaFromLabel("P1_12DIF1_1AR1_0MA0_12");
Set s2 = GetArimaFromLabel("P1_12DIF1_1AR1.2_0MA0_12");

En el primer conjunto, el polinomio AR es 1+0.11*B, mientras que en el segundo conjunto es 1-0.11*B-0.11*B2.

Propongo unificar los criterios, y definir los polinomios siempre como 1-0.1*B.

Un saludo.

Nota: no sé si esta forma de asignar automáticamente un valor inicial respeta que los polinomios sean estacionarios e invertibles.

Change History (3)

comment:1 Changed 14 years ago by Pedro Gea

Description: modified (diff)

Nota: Téngase en cuenta la sintáxis de la wiki: WikiFormatting, por ejemplo, si se quiere indicar el símbolo ^ ha de escaparse con un signo de exclamación !, si se desea escribir un superíndice, hay que abrir y cerrar el tramo, para evitar que se extienda a otras líneas. También está la alternativa de indicar que es un trozo de código y encerrarlo entre triples llaves
Por ejemplo:

x!^2
x^2^
{{{x^2}}}

x^2
x2
x^2

comment:2 Changed 14 years ago by Pedro Gea

Milestone: Release 0.6
Resolution: fixed
Status: newclosed

Como se indica en la descripción del tique, MMS simplementa canaliza la interpretación de las etiquetas ARIMA a las funciones estándares que suministra TOL para ello.

Habría que dirgirse a TOLProject para que se revise la función: GetArimaFromLabel.

En las versiones primitivas de MMS, se planteó una estructura alternativa e incluso se diseñaron unas etiquetas más cercanas a la terminología utilizada en la literatura:

"ARIMA_2.1.0_SARIMA_12.0.1.1"

para el ejemplo que se plantea: ARIMA(2,1,0)×ARIMA12(0,1,1),
pero estos mecanismos se descartaron por alejarse del estándar TOL.

En principio, parece que la solución más lógica es cambiar GetArimaFromLabel o simplemente obviarla y definir la estructura ARIMA a través de un conjunto de @ARIMAStruct usando ::SetARIMABlocks_ARIMA en lugar de: ::SetARIMABlocks_Label

comment:3 Changed 14 years ago by Pedro Gea

Puede verse el código de la función en: TOL: _fun_general.tol línea 1036 y siguientes.

Note: See TracTickets for help on using tickets.