Skip to main content

Modelos Lineares Auto Regressivos Móveis Médios


Modelos de média móvel automotiva. Numérico a tolerância para reconhecer números, que são menores que a tolerância especificada, como zero. Modelos para glarma são especificados simbolicamente. Um modelo típico tem a forma y (resposta), X (termos) onde y é o vetor de contagem ou de resposta do fator, X é uma série de termos que especifica um preditor linear para a resposta. Note-se que a primeira coluna de X deve ser um vetor de 1s como a interceptação no modelo. Quatro parâmetros iniciais que precisam ser estimados são combinados em delta (beta, phi, theta, alfa). Onde alfa é um parâmetro opcional para acomodar o modelo binomial negativo. Note que na função glm. nb do pacote MASS. Este parâmetro é chamado theta. Para as distribuições de respostas de Poisson e binomiais negativas, o link de registro é usado atualmente. Para respostas binomiais o link logit é usado atualmente. Os modelos de média móvel auto-regressiva linear generalizada são calculados como se segue. O preditor linear para a resposta é log (mut) Wt transposição (Xt) deslocamento beta Zt. A média móvel infinita do preditor linear é Zt sum (resíduos gammai (t-i)). Esta média móvel infinita é calculada usando as recursões de média móvel autorregressiva Zt phi1 (Z (t-1) e (t-1)). Phip (Ze (t-p)) theta1e. Thetaq e em que p e q são as ordens de phi e theta, respectivamente, e os atrasos não nulos dos vetores phi e theta podem ser especificados pelo usuário através dos argumentos phiLag e thetaLag. Existem dois tipos de resíduos que podem ser usados ​​em cada recursão, resíduos de Pearson ou resíduos de pontuação e, além disso, para a distribuição binomial, podem ser usados ​​resíduos de identidade. A média móvel infinita, Zt. Depende do tipo de resíduos utilizados, assim como os parâmetros finais obtidos a partir do filtro. A padronização das contagens observadas no passado é necessária para evitar a instabilidade, portanto o usuário deve escolher o tipo apropriado de resíduos dependendo da situação. O método de estimativa para parâmetros implementados na função visa maximizar a probabilidade de log por um método iterativo a partir de valores iniciais adequadamente escolhidos para os parâmetros. A partir dos valores iniciais delta hat (0) para o vetor de atualizações de parâmetros são obtidas usando as iterações delta (k1) delta (k) Omega (deltak) primeira derivada de log (deltak) onde Omega (delta hat (k)) é alguma Matriz escolhida adequadamente. As iterações continuam para k gt 1 até a convergência ser alcançada ou o número de iterações k atinge um limite superior especificado pelo usuário em iterações máximas, caso em que elas pararão. O critério de convergência utilizado na nossa implementação é o baseado em eta. O máximo de valores absolutos das primeiras derivadas. Quando eta é menor que um valor de valor especificado pelo usuário as iterações param. Existem dois métodos de otimização da probabilidade, Newton-Raphson e Fisher pontuação. O método utilizado é especificado pelo método de argumento. Deve-se notar que se o valor inicial para os parâmetros não for bem escolhido, a otimização da probabilidade pode deixar de convergir. É necessário ter cuidado ao ajustar as especificações ARMA misturadas porque há potencial para que os parâmetros AR e MA não sejam identificáveis ​​se as ordens p e q forem muito grandes. A falta de identificabilidade manifesta-se no algoritmo para otimizar a probabilidade de falha para convergir e / ou o hessian ser singularcheck as mensagens de aviso e os códigos de erro de convergência. O resumo da função (por exemplo, summary. glarma) pode ser usado para obter ou imprimir um resumo dos resultados. As funções de acesso genérico coef (ou seja, coef. glarma), logLik (isto é, logLik. glarma), ajustadas (ie, ajustadas), residuais (ie residuals. glarma), nobs (ie nobs. glarma), model. frame. frame. glarma) e extractAIC (ie extractAIC. glarma) podem ser utilizados para extrair várias características úteis do valor devolvido por glarma. Glarma retorna um objeto de classe glarma com componentes: Média Movente Autoregressiva ARMA (p, q) Modelos para Análise de Série de Tempo - Parte 3 Este é o terceiro e último post da mini-série sobre modelos de média móvel auto-regressiva (ARMA) para séries temporais análise. Weve introduziu modelos autorregressivos e modelos de média móvel nos dois artigos anteriores. Agora é hora de combiná-los para produzir um modelo mais sofisticado. Em última análise, isso nos levará aos modelos ARIMA e GARCH que nos permitirão prever os retornos dos ativos e prever a volatilidade. Estes modelos constituirão a base para a negociação de sinais e técnicas de gestão de risco. Se você leu Parte 1 e Parte 2 você terá visto que tendemos a seguir um padrão para a nossa análise de um modelo de série de tempo. Ill repeti-lo brevemente aqui: Racional - Por que estamos interessados ​​neste modelo específico Definição - Uma definição matemática para reduzir a ambigüidade. Correlograma - Traçar um correlograma de amostra para visualizar o comportamento de um modelo. Simulação e Montagem - Ajustar o modelo a simulações, a fim de assegurar que o weve compreendeu o modelo corretamente. Dados financeiros reais - Aplicar o modelo aos preços dos ativos reais reais. Previsão - Previsão de valores subseqüentes para construir sinais de negociação ou filtros. Para seguir este artigo é aconselhável dar uma olhada nos artigos anteriores sobre a análise de séries temporais. Todos podem ser encontrados aqui. Critério Bayesiano de Informações Na Parte 1 deste artigo, analisámos o Critério de Informação Akaike (AIC) como um meio de nos ajudar a escolher entre os melhores modelos de séries temporais. Uma ferramenta estreitamente relacionada é o critério Bayesiano de Informação (BIC). Essencialmente, tem comportamento semelhante ao AIC, pois penaliza os modelos por terem muitos parâmetros. Isto pode conduzir a overfitting. A diferença entre o BIC eo AIC é que o BIC é mais rigoroso com a penalização de parâmetros adicionais. Critério Bayesiano de Informações Se tomarmos a função de verossimilhança para um modelo estatístico, que tenha k parâmetros, e L maximize a probabilidade. Então o critério Bayesiano de Informação é dado por: Onde n é o número de pontos de dados na série temporal. Usaremos o AIC eo BIC abaixo ao escolher modelos ARMA (p, q) apropriados. Ljung-Box Test Na Parte 1 deste artigo, Rajan mencionou nos comentários de Disqus que o teste de Ljung-Box era mais apropriado do que usar o Critério de Informação Akaike do Critério de Informação Bayesiano para decidir se um modelo ARMA era um bom ajuste para um tempo Series. O teste de Ljung-Box é um teste de hipóteses clássico que é projetado para testar se um conjunto de autocorrelações de um modelo de séries de tempo ajustado diferem significativamente de zero. O teste não testar cada atraso individual para aleatoriedade, mas sim testa a aleatoriedade sobre um grupo de defasagens. Teste de Ljung-Box Definimos a hipótese nula como: Os dados da série de tempo em cada lag são i. i.d .. isto é, as correlações entre os valores da série de população são zero. Definimos a hipótese alternativa como: Os dados da série de tempo não são i. i.d. E possuem correlação serial. Calculamos a seguinte estatística de teste. Q: Onde n é o comprimento da amostra de séries temporais, hat k é a autocorrelação da amostra com atraso k eh é o número de atrasos no teste. A regra de decisão sobre se rejeitar a hipótese nula é verificar se Q gt chi2, para uma distribuição qui-quadrado com h graus de liberdade no percentil 100 (1-alfa). Embora os detalhes do teste possam parecer um pouco complexos, podemos de fato usar R para calcular o teste para nós, simplificando um pouco o procedimento. Agora que discutimos o BIC e o teste de Ljung-Box, estávamos prontos para discutir o nosso primeiro modelo misto, ou seja, a Média Móvel Autoresgressiva de ordem p, q, ou ARMA (p, Q). Até o momento, consideramos processos autorregressivos e processos de média móvel. O modelo anterior considera seu próprio comportamento passado como insumos para o modelo e, como tal, tenta capturar efeitos de participantes no mercado, como momentum e reversão média na negociação de ações. O último modelo é usado para caracterizar informações de choque em uma série, como um anúncio de ganhos surpresa ou evento inesperado (como o derramamento de óleo BP Deepwater Horizon). Assim, um modelo ARMA tenta capturar ambos os aspectos ao modelar séries de tempo financeiro. Note-se que um modelo ARMA não leva em conta a volatilidade clustering, um fenômeno empírico chave de muitas séries financeiras. Não é um modelo condicionalmente heterocedástico. Para isso teremos de esperar pelos modelos ARCH e GARCH. Definição O modelo ARMA (p, q) é uma combinação linear de dois modelos lineares e, portanto, é ainda linear: Modelo de ordem temporal p, q Um modelo de série temporal, é um modelo de média móvel autorregressiva de ordem p, q . Onde está o ruído branco com E (wt) 0 e variância sigma2. Onde está o ruído branco com E (wt) 0 e variância sigma2. Se considerarmos o Backward Shift Operator. (Veja um artigo anterior), então podemos reescrever o acima como uma função theta e phi de: Podemos ver diretamente que, ao definir p neq 0 e q0, recuperamos o modelo AR (p). Da mesma forma, se definimos p 0 e q neq 0, recuperamos o modelo MA (q). Uma das principais características do modelo ARMA é que ele é parcimonioso e redundante em seus parâmetros. Ou seja, um modelo ARMA, muitas vezes, exigem menos parâmetros do que um modelo AR (p) ou MA (q) sozinho. Além disso, se reescrevemos a equação em termos do BSO, então os polinômios theta e phi podem às vezes compartilhar um fator comum, levando assim a um modelo mais simples. Simulações e Correlogramas Como com os modelos de média autorregressiva e móvel, vamos agora simular várias séries ARMA e, em seguida, tentar ajustar modelos ARMA a estas realizações. Nós realizamos isso porque queremos garantir que entendemos o procedimento de montagem, incluindo como calcular os intervalos de confiança para os modelos, bem como garantir que o procedimento realmente recuperar estimativas razoáveis ​​para os parâmetros ARMA original. Na Parte 1 e Parte 2 construímos manualmente as séries AR e MA tirando N amostras de uma distribuição normal e, em seguida, criando o modelo de série temporal específico usando atrasos dessas amostras. No entanto, há uma maneira mais simples de simular AR, MA, ARMA e ARIMA dados, simplesmente usando o método arima. sim em R. Vamos começar com o mais simples possível não trivial ARMA modelo, ou seja, o ARMA (1,1 ) modelo. Ou seja, um modelo autorregressivo de ordem um combinado com um modelo de média móvel de ordem um. Tal modelo tem apenas dois coeficientes, alfa e beta, que representam os primeiros desfasamentos da série de tempo em si e os termos de ruído de choque branco. Esse modelo é dado por: Precisamos especificar os coeficientes antes da simulação. Vamos tomar alpha 0,5 e beta -0,5: A saída é a seguinte: Vamos também traçar o correlograma: Podemos ver que não há autocorrelação significativa, o que é de esperar de um modelo ARMA (1,1). Finalmente, vamos tentar determinar os coeficientes e seus erros padrão usando a função arima: Podemos calcular os intervalos de confiança para cada parâmetro usando os erros padrão: Os intervalos de confiança contêm os valores dos parâmetros verdadeiros para ambos os casos, no entanto, 95 intervalos de confiança são muito amplos (uma consequência dos erros padrão razoavelmente grandes). Vamos agora tentar um modelo ARMA (2,2). Ou seja, um modelo AR (2) combinado com um modelo MA (2). Precisamos especificar quatro parâmetros para este modelo: alfa1, alfa2, beta1 e beta2. Vamos pegar alpha1 0.5, alpha2-0.25 beta10.5 e beta2-0.3: A saída do nosso modelo ARMA (2,2) é a seguinte: E a autocorelação correspondente: Podemos agora tentar montar um modelo ARMA (2,2) para Os dados: Também podemos calcular os intervalos de confiança para cada parâmetro: Observe que os intervalos de confiança para os coeficientes para a componente média móvel (beta1 e beta2) não contêm realmente o valor do parâmetro original. Contudo, para fins comerciais, precisamos apenas de um poder preditivo que exceda o acaso e produza lucros suficientes acima dos custos de transação, a fim de ser rentável em termos de custos. A longo prazo. Agora que temos visto alguns exemplos de modelos ARMA simulados, precisamos de um mecanismo para escolher os valores de p e q quando se encaixam nos modelos a dados financeiros reais. Escolhendo o melhor modelo ARMA (p, q) Para determinar qual ordem p, q do modelo ARMA é apropriada para uma série, precisamos usar o AIC (ou BIC) em um subconjunto de valores para p, q, e Em seguida, aplicar o teste Ljung-Box para determinar se um bom ajuste foi alcançado, para valores específicos de p, q. Para mostrar este método, vamos primeiro simular um determinado processo ARMA (p, q). Em seguida, faremos um loop sobre todos os valores pairwise de p in e q in e calculamos o AIC. Vamos selecionar o modelo com o menor AIC e, em seguida, executar um teste de Ljung-Box sobre os resíduos para determinar se conseguimos um bom ajuste. Vamos começar simulando uma série ARMA (3,2): Agora vamos criar um objeto final para armazenar o melhor ajuste do modelo eo menor valor AIC. Percorremos as várias combinações p, q e usamos o objeto atual para armazenar o ajuste de um modelo ARMA (i, j), para as variáveis ​​looping i e j. Se o AIC atual for menor que qualquer AIC previamente calculado, definiremos o AIC final para este valor atual e selecionaremos essa ordem. Após a terminação do loop, temos a ordem do modelo ARMA armazenado em final. order e o ARIMA (p, d, q) se encaixa (com o componente d integrado definido como 0) armazenado como final. arma: Permite a saída do AIC , Ordem e coeficientes ARIMA: Podemos ver que a ordem original do modelo ARMA simulado foi recuperada, nomeadamente com p3 e q2. Podemos traçar o corelograma dos resíduos do modelo para ver se eles parecem uma realização de ruído branco discreto (DWN): O corelograma realmente parece uma realização de DWN. Finalmente, realizamos o teste de Ljung-Box para 20 lags para confirmar isso: Observe que o valor p é maior que 0,05, o que indica que os resíduos são independentes no nível 95 e, portanto, um modelo ARMA (3,2) Bom ajuste do modelo. No entanto, este é precisamente o procedimento que vamos usar quando chegarmos a ajustar modelos ARMA (p, q) para o índice SampP500 na seção a seguir. Dados Financeiros Agora que descrevemos o procedimento para escolher o modelo de série temporal ideal para uma série simulada, é bastante simples aplicá-lo aos dados financeiros. Para este exemplo, vamos escolher mais uma vez o SampP500 US Equity Index. Permite fazer o download dos preços de fechamento diários usando o quantmod e, em seguida, criar o fluxo de retorno do log: Permite executar o mesmo procedimento de ajuste que para a série ARMA (3,2) simulada acima no log retorna série do SampP500 usando o AIC: Tem a ordem ARMA (3,3): Permite traçar os resíduos do modelo ajustado para o fluxo de retorno diário do SampP500: Observe que há alguns picos significativos, especialmente em defasagens maiores. Isto é indicativo de um ajuste pobre. Vamos realizar um teste de Ljung-Box para ver se temos evidências estatísticas para isso: Como nós suspeitamos, o valor p é menor que 0,05 e, como tal, não podemos dizer que os resíduos são uma realização de ruído branco discreto. Portanto, há autocorrelação adicional nos resíduos que não é explicada pelo modelo ARMA (3,3). Próximas etapas Como discutimos ao longo desta série de artigos, vimos evidências de heterocedasticidade condicional (agrupamento de volatilidade) na série SampP500, especialmente nos períodos em torno de 2007-2008. Quando usamos um modelo GARCH mais tarde na série de artigos, veremos como eliminar essas autocorrelações. Na prática, os modelos ARMA nunca são geralmente bons ajustes para retorno de ações log. Precisamos levar em conta a heterocedasticidade condicional e usar uma combinação de ARIMA e GARCH. O próximo artigo irá considerar ARIMA e mostrar como o componente integrado difere do modelo ARMA que temos considerado neste artigo. Modelos Autoregressivos Em um modelo de regressão múltipla, projetamos a variável de interesse usando uma combinação linear de preditores. Em um modelo de autorregressão, projetamos a variável de interesse usando uma combinação linear de valores passados ​​da variável. O termo regressão automática indica que é uma regressão da variável contra si mesma. Assim, um modelo autorregressivo de ordem p pode ser escrito como onde c é uma constante e et é ruído branco. Isto é como uma regressão múltipla, mas com valores defasados ​​de yt como preditores. Referimo-nos a isto como um modelo AR (p). Modelos auto-regressivos são notavelmente flexíveis no manuseio de uma ampla gama de diferentes padrões de séries temporais. As duas séries na Figura 8.5 mostram séries de um modelo AR (1) e um modelo AR (2). Alterando os parâmetros phi1, dots, phip resulta em diferentes padrões de séries temporais. A variância do termo de erro e só mudará a escala da série, não os padrões. Figura 8.5: Dois exemplos de dados de modelos autorregressivos com diferentes parâmetros. Esquerda: AR (1) com yt 18 -0,8y et. Direita: AR (2) com yt 8 ​​1,3y -0,7y et. Em ambos os casos, et é normalmente distribuído ruído branco com zero médio e variância um. Para um modelo AR (1): Quando phi10, yt é equivalente a ruído branco. Quando phi11 e c0, yt é equivalente a uma caminhada aleatória. Quando phi11 e cne0, yt é equivalente a uma caminhada aleatória com drift Quando ph1lt0, yt tende a oscilar entre valores positivos e negativos. Normalmente, restringimos modelos autorregressivos a dados estacionários e, em seguida, algumas restrições sobre os valores dos parâmetros são necessárias. Para um modelo AR (1): -1 lt phi1 lt 1. Para um modelo AR (2): -1 lt phi2 lt 1, phi1phi2 lt 1, phi2-phi1 lt 1. Quando pge3 as restrições são muito mais complicadas. R cuida dessas restrições ao estimar um modelo. A documentação c é um vetor constante de deslocamentos, com n elementos. 934 i são n-por-n matrizes para cada i. Os 934 i são matrizes autorregressivas. Existem p matrizes autorregressivas, e algumas podem ser inteiramente compostas de zeros. 949 t é um vetor de inovações não correlacionadas em série, vetores de comprimento n. Os 949 t são vetores aleatórios normais multivariados com matriz de covariância 931. 920 j são n-by-n matrizes para cada j. Os 920 j são matrizes de média móvel. Existem q matrizes de média móvel, e algumas podem ser inteiramente compostas por zeros. 948 é um vetor constante de coeficientes de tendência de tempo linear, com n elementos. X t é um vetor r-by-1 representando termos exógenos em cada momento t. R é o número de séries exógenas. Termos exógenos são dados (ou outras entradas não modificadas) além da série de tempo de resposta y t. Cada série exógena aparece em todas as equações de resposta. Geralmente, as séries temporais y t e x t são observáveis. Em outras palavras, se você tiver dados, ele representa uma ou ambas as séries. Você nem sempre sabe o deslocamento c. Coeficiente de tendência 948. Coeficiente 946. Matrizes auto-regressivas 934 i. E matrizes de média móvel 920 j. Normalmente, você deseja ajustar esses parâmetros aos seus dados. Veja a estimativa de formas de estimar parâmetros desconhecidos. As inovações 949 t não são observáveis, pelo menos em dados, embora possam ser observadas em simulações. Econometria O Toolboxx2122 suporta a criação e análise do modelo VAR (p) usando varm e métodos associados. Lag Representação do Operador Há uma representação equivalente das equações auto-regressivas lineares em termos de operadores de retardamento. O operador de atraso L move o índice de tempo de volta em um: L y t y t 82111. O operador L m move o índice de tempo para trás por m. L m y t y t 8211 m. Na forma de operador lag, a equação para um modelo SVARMAX (p. Q) torna-se (x03A6 0 x2212 x2211 i 1 p x03A6 i L i) y t c x03B2 x t (x0398 0 x2211 j 1 q x0398 j L j) x03B5 t. Esta equação pode ser escrita como x03A6 (L) y t c x03B2 x t x0398 (L) x03B5 t. Escolha o seu país

Comments