Autoregressive Moving Average Code


Média de Mudança Autoregressiva Modelos de ARMA (p, q) para análise de séries temporais - Parte 1 No último artigo, analisamos caminhadas aleatórias e ruído branco como modelos de séries temporais básicas para certos instrumentos financeiros, como preços diários de patrimônio e índice de ações. Descobrimos que, em alguns casos, um modelo de caminhada aleatória era insuficiente para capturar o comportamento de autocorrelação total do instrumento, o que motiva modelos mais sofisticados. Nos próximos dois artigos, vamos discutir três tipos de modelos, ou seja, o modelo Autoregressivo (AR) da ordem p, o modelo de ordem média móvel (MA) da ordem e o modelo de ordem média auto-passiva (ARMA) da ordem p , Q. Esses modelos nos ajudarão a tentar capturar ou explicar mais a correlação serial presente dentro de um instrumento. Em última análise, eles nos fornecerão um meio de prever os preços futuros. No entanto, é bem sabido que as séries temporais financeiras possuem uma propriedade conhecida como aglomeração de volatilidade. Ou seja, a volatilidade do instrumento não é constante no tempo. O termo técnico para este comportamento é conhecido como heterocedasticidade condicional. Uma vez que os modelos AR, MA e ARMA não são condicionalmente heterossejidos, isto é, eles não levam em consideração a acumulação de volatilidade, acabaremos por precisar de um modelo mais sofisticado para nossas previsões. Tais modelos incluem o modelo Heteroskedastic Condicional Autogressivo (ARCH) e o modelo Heteroskedastic condicional autogressivo generalizado (GARCH), e suas muitas variantes. O GARCH é particularmente conhecido em financiamento quantitativo e é usado principalmente para simulações de séries temporais financeiras como meio de estimar o risco. No entanto, como em todos os artigos QuantStart, quero construir esses modelos a partir de versões mais simples para que possamos ver como cada nova variante altera nossa capacidade preditiva. Apesar de AR, MA e ARMA serem modelos de séries temporais relativamente simples, eles são a base de modelos mais complicados, como a média móvel autoregressiva (ARIMA) e a família GARCH. Por isso, é importante estudá-los. Uma das nossas primeiras estratégias de negociação na série de artigos da série temporal será combinar ARIMA e GARCH para prever antecipadamente os preços n. No entanto, teremos que esperar até discutirmos tanto ARIMA e GARCH separadamente antes de aplicá-los a uma estratégia real. Como vamos prosseguir Neste artigo, vamos descrever alguns novos conceitos de séries temporais que bem precisam dos métodos restantes, ou seja, rigorosos Estacionária e o critério de informação Akaike (AIC). Subsequentemente a esses novos conceitos, seguiremos o padrão tradicional para o estudo de novos modelos de séries temporais: Justificação - A primeira tarefa é fornecer uma razão pela qual eles estavam interessados ​​em um modelo particular, como quants. Por que estamos apresentando o modelo da série temporal. Que efeitos podem capturar? O que ganhamos (ou perdemos), adicionando uma complexidade extra. Definição - Precisamos fornecer a definição matemática completa (e notação associada) do modelo da série temporal para minimizar Qualquer ambiguidade. Propriedades de segunda ordem - Vamos discutir (e, em alguns casos, derivar) as propriedades de segunda ordem do modelo da série temporal, que inclui a média, a variância e a função de autocorrelação. Correlograma - Usaremos as propriedades de segunda ordem para plotar um correlograma de uma realização do modelo da série temporal para visualizar seu comportamento. Simulação - Vamos simular as realizações do modelo da série temporal e, em seguida, ajustar o modelo a essas simulações para garantir que possamos implementações precisas e entender o processo de montagem. Dados financeiros reais - Vamos ajustar o modelo da série temporal aos dados financeiros reais e considerar o correlograma dos resíduos para ver como o modelo conta a correlação serial na série original. Previsão - Vamos criar previsões n-passo a frente do modelo da série temporal para realizações específicas, a fim de produzir sinais de negociação em última análise. Quase todos os artigos que escrevo em modelos de séries temporais cairão nesse padrão e nos permitirão comparar facilmente as diferenças entre cada modelo à medida que adicionamos mais complexidade. Começamos por analisar a estacionária rigorosa e a AIC. Estritamente estacionário Nós fornecemos a definição de estacionaria no artigo sobre a correlação em série. No entanto, porque vamos entrar no reino de muitas séries financeiras, com várias freqüências, precisamos garantir que nossos (eventuais) modelos levem em consideração a volatilidade variável no tempo dessas séries. Em particular, precisamos considerar sua heterocedasticidade. Encontraremos esse problema quando tentarmos ajustar certos modelos a séries históricas. Geralmente, nem toda a correlação em série nos resíduos de modelos ajustados pode ser contabilizada sem levar em consideração a heterocedasticidade. Isso nos leva de volta à estacionança. Uma série não é estacionária na variância se tiver volatilidade variável no tempo, por definição. Isso motiva uma definição mais rigorosa de estacionaria, a saber, a estacionalização rigorosa: Estritamente Estruturado Série A modelo de série temporal, é estritamente estacionário se a distribuição estatística conjunta dos elementos x, ldots, x é a mesma que a de xm, ldots, xm, Forall ti, m. Pode-se pensar nessa definição como simplesmente que a distribuição da série temporal é inalterada para qualquer mudança abrupta no tempo. Em particular, a média e a variância são constantes no tempo para uma série estritamente estacionária e a autocovariância entre xt e xs (digamos) depende apenas da diferença absoluta de t e s, t-s. Nós estaremos revendo estritamente séries estacionárias em postagens futuras. O Critério de Informação Akaike mencionado em artigos anteriores que eventualmente precisamos considerar como escolher entre os melhores modelos separados. Isso é verdade não só da análise de séries temporais, mas também da aprendizagem por máquinas e, mais amplamente, das estatísticas em geral. Os dois métodos principais que usaremos (por enquanto) são o Critério de Informação Akaike (AIC) e o Critério Bayesiano de Informação (à medida que avançamos com nossos artigos sobre Estatísticas Bayesianas). Bem, considere brevemente o AIC, pois será usado na Parte 2 do artigo ARMA. AIC é essencialmente uma ferramenta para auxiliar na seleção do modelo. Ou seja, se tivermos uma seleção de modelos estatísticos (incluindo séries temporais), o AIC estima a qualidade de cada modelo em relação aos outros que temos disponível. Baseia-se na teoria da informação. Que é um tópico muito interessante e profundo que, infelizmente, não podemos entrar em detalhes demais. Ele tenta equilibrar a complexidade do modelo, o que, nesse caso, significa o número de parâmetros, com o quão adequado se ajusta aos dados. Permite fornecer uma definição: Critério de Informação de Akaike Se tomarmos a função de verossimilhança para um modelo estatístico, que tem parâmetros k, e L maximiza a probabilidade. Então o Critério de Informação Akaike é dado por: O modelo preferido, a partir de uma seleção de modelos, possui o mínimo AIC do grupo. Você pode ver que o AIC cresce à medida que o número de parâmetros, k, aumenta, mas é reduzido se a probabilidade de log negativa aumentar. Essencialmente, penaliza modelos que são superados. Vamos criar modelos AR, MA e ARMA de diferentes ordens e uma maneira de escolher o melhor modelo que se encaixa em um conjunto de dados específico é usar o AIC. Isto é o que bem estar fazendo no próximo artigo, principalmente para os modelos ARMA. Autoregressivo (AR) Modelos de ordem p O primeiro modelo foi considerado, que é a base da Parte 1, é o modelo Autoregressivo da ordem p, muitas vezes encurtado para AR (p). No artigo anterior consideramos a caminhada aleatória. Onde cada termo, xt é dependente unicamente do termo anterior, x e um termo estocástico de ruído branco, wt: O modelo autorregressivo é simplesmente uma extensão da caminhada aleatória que inclui termos mais atrasados ​​no tempo. A estrutura do modelo é linear. Esse é o modelo depende linearmente dos termos anteriores, com coeficientes para cada termo. É aí que o regressivo vem de autoregressivo. É essencialmente um modelo de regressão onde os termos anteriores são os preditores. Modelo Autoregressivo de ordem p Um modelo de série temporal,, é um modelo de ordem autoregressivo p. AR (p), se: begin xt alpha1 x ldots alphap x wt sum p alphai x wt end Onde é o ruído branco e alphai em mathbb, com alphap neq 0 para um processo autorregressivo de ordem p. Se considerarmos o Operador de Deslocamento para trás. (Veja o artigo anterior), então podemos reescrever o acima como uma função theta de: begin thetap () xt (1 - alpha1 - alpha2 2 - ldots - alphap) xt wt end Talvez a primeira coisa a notar sobre o modelo AR (p) É que uma caminhada aleatória é simplesmente AR (1) com alfa1 igual à unidade. Como afirmamos acima, o modelo autogressivo é uma extensão da caminhada aleatória, então isso faz sentido. É direto fazer previsões com o modelo AR (p), para qualquer momento t, uma vez que temos os coeficientes de alphai determinados, nossa estimativa Simplesmente se torna: começar o chapéu t alpha1 x ldots alphap x end Assim, podemos fazer previsões n-passo a frente produzindo chapéu, chapéu, chapéu, etc. até o chapéu. Na verdade, uma vez que consideremos os modelos ARMA na Parte 2, usaremos a função de predição R para criar previsões (juntamente com bandas de intervalo de confiança de erro padrão) que nos ajudarão a produzir sinais comerciais. Stationarity para processos autoregressivos Um dos aspectos mais importantes do modelo AR (p) é que nem sempre é estacionário. De fato, a estacionariedade de um modelo particular depende dos parâmetros. Eu já toquei isso antes em um artigo anterior. Para determinar se um processo AR (p) está parado ou não, precisamos resolver a equação característica. A equação característica é simplesmente o modelo autorregressivo, escrito em forma de deslocamento para trás, definido como zero: resolvemos essa equação. Para que o processo autoregressivo particular seja estacionário, precisamos que todos os valores absolutos das raízes dessa equação excedam a unidade. Esta é uma propriedade extremamente útil e nos permite calcular rapidamente se um processo AR (p) está parado ou não. Vamos considerar alguns exemplos para tornar esta idéia concreta: Random Walk - O processo AR (1) com alpha1 1 tem a equação característica theta 1 -. Claramente, isso tem a raiz 1 e, como tal, não é estacionário. AR (1) - Se escolhermos alpha1 frac, obtemos xt frac x wt. Isso nos dá uma equação característica de 1 - frac 0, que tem uma raiz 4 gt 1 e, portanto, este processo AR particular (1) é estacionário. AR (2) - Se formamos alpha1 alpha2 frac, obtemos xt frac x frac x wt. Sua equação característica torna-se - frac () () 0, que dá duas raízes de 1, -2. Uma vez que esta tem uma unidade de raiz é uma série não estacionária. No entanto, outras séries AR (2) podem ser estacionárias. Propriedades de segunda ordem A média de um processo AR (p) é zero. No entanto, as autocovariâncias e autocorrelações são dadas por funções recursivas, conhecidas como as equações de Yule-Walker. As propriedades completas são dadas abaixo: begin mux E (xt) 0 end begin gammak soma p alphai gamma, enspace k 0 end begin rhok soma p alphai rho, enspace k 0 end Observe que é necessário conhecer os valores dos parâmetros alphai antes de Calculando as autocorrelações. Agora que declaramos as propriedades da segunda ordem, podemos simular várias ordens de AR (p) e traçar os correlogramas correspondentes. Simulações e Correlogramas Comece com um processo AR (1). Isso é semelhante a uma caminhada aleatória, exceto que o alfa1 não tem que igualar a unidade. Nosso modelo terá alfa1 0,6. O código R para criar esta simulação é o seguinte: Observe que nosso loop for é realizado de 2 a 100, não de 1 a 100, como xt-1 quando t0 não é indexável. Da mesma forma, para processos AR (p) de ordem superior, t deve variar de p para 100 neste loop. Podemos traçar a realização deste modelo e seu correlograma associado usando a função de layout: agora tentamos instalar um processo AR (p) para os dados simulados que acabamos de gerar, para ver se podemos recuperar os parâmetros subjacentes. Você pode lembrar que realizamos um procedimento semelhante no artigo sobre ruídos brancos e passeios aleatórios. Como acontece, R fornece um comando útil para se ajustar a modelos autorregressivos. Podemos usar este método para primeiro nos dizer a melhor ordem p do modelo (conforme determinado pela AIC acima) e nos fornecer estimativas de parâmetros para o alfai, que podemos usar para formar intervalos de confiança. Para a completude, vamos recriar a série x: agora usamos o comando ar para ajustar um modelo autoregressivo ao nosso processo de AR (1) simulado, usando a estimativa de máxima verossimilhança (MLE) como procedimento de montagem. Em primeiro lugar, extrairemos a melhor ordem obtida: o comando ar determinou com sucesso que nosso modelo de série temporal subjacente é um processo AR (1). Podemos então obter as estimativas dos parâmetros alfai: o procedimento MLE produziu uma estimativa, o chapéu 0.523, que é ligeiramente inferior ao valor verdadeiro de alpha1 0.6. Finalmente, podemos usar o erro padrão (com a variância assintótica) para construir 95 intervalos de confiança em torno do (s) parâmetro (s) subjacente (s). Para conseguir isso, simplesmente criamos um vetor c (-1,96, 1,96) e depois multiplicamos pelo erro padrão: o parâmetro verdadeiro se enquadra no intervalo de confiança 95, como esperamos do fato de que nós geramos a realização do modelo especificamente . Que tal se alterarmos o alfa1 -0.6. Como antes, podemos ajustar um modelo de AR (p) usando ar: Mais uma vez recuperamos a ordem correta do modelo, com uma boa estimativa de chapéu -0.597 de alfa1-0.6. Verificamos também que o verdadeiro parâmetro se enquadra novamente no intervalo de confiança 95. Permite adicionar mais complexidade aos nossos processos autorregressivos, simulando um modelo de ordem 2. Em particular, estabelecemos alfa10.666, mas também definimos alpha2 -0.333. É o código completo para simular e traçar a realização, bem como o correlograma para tal série: como antes, podemos ver que o correlograma difere significativamente do ruído branco, conforme esperado. Existem picos estatisticamente significativos em k1, k3 e k4. Mais uma vez, iriam usar o comando ar para ajustar um modelo AR (p) à nossa realização AR (2) subjacente. O procedimento é semelhante ao ajuste AR (1): a ordem correta foi recuperada e as estimativas do parâmetro hat 0.696 e hat -0.395 não estão muito longe dos valores dos parâmetros verdadeiros de alpha10.666 e alpha2-0.333. Observe que recebemos uma mensagem de aviso de convergência. Observe também que R realmente usa a função arima0 para calcular o modelo AR. Além disso, aprender em artigos subseqüentes, os modelos AR (p) são simplesmente modelos ARIMA (p, 0, 0) e, portanto, um modelo AR é um caso especial de ARIMA sem componente de média móvel (MA). Bem, também estar usando o comando arima para criar intervalos de confiança em torno de vários parâmetros, e é por isso que negligenciamos fazê-lo aqui. Agora que nós criamos alguns dados simulados, é hora de aplicar os modelos AR (p) às séries temporais de ativos financeiros. Dados Financeiros Amazon Inc. Comece por obter o preço das ações da Amazon (AMZN) usando o quantmod como no último artigo: A primeira tarefa é sempre traçar o preço para uma breve inspeção visual. Neste caso, bem, use os preços de fechamento diários: você notará que o quantmod adiciona alguma formatação para nós, ou seja, a data e um gráfico um pouco mais bonito do que os gráficos R habituais: agora vamos levar os retornos logarítmicos da AMZN e depois o primeiro Diferença de ordem da série para converter a série de preços original de uma série não estacionária para uma (potencialmente) estacionária. Isso nos permite comparar maçãs com maçãs entre ações, índices ou qualquer outro recurso, para uso em estatísticas multivariadas posteriores, como no cálculo de uma matriz de covariância. Se você gostaria de uma explicação detalhada sobre o motivo pelo qual os retornos do registro são preferíveis, veja este artigo na Quantividade. Vamos criar uma nova série, amznrt. Para manter nossos retornos de log diferentes: Mais uma vez, podemos traçar a série: nesta fase, queremos traçar o correlograma. Olhamos para ver se as séries diferenciadas parecem ruído branco. Se não existir, então, há uma correlação serial inexplicada, que pode ser explicada por um modelo auto-racial. Observamos um pico estatisticamente significativo em k2. Portanto, existe uma possibilidade razoável de correlação serial inexplicada. Esteja ciente de que isso pode ser devido ao viés de amostragem. Como tal, podemos tentar ajustar um modelo AR (p) à série e produzir intervalos de confiança para os parâmetros: Ajustar o modelo autoregressivo AR à série de preços de registro diferenciada de primeira ordem produz um modelo AR (2), com chapéu -0.0278 E chapéu -0.0687. Ive também a saída da variação aestotica para que possamos calcular erros padrão para os parâmetros e produzir intervalos de confiança. Queremos ver se zero faz parte do intervalo de confiança 95, como se fosse, reduz a nossa confiança de que temos um verdadeiro AR subjacente (2) processo para a série AMZN. Para calcular os intervalos de confiança no nível 95 para cada parâmetro, usamos os seguintes comandos. Tomamos a raiz quadrada do primeiro elemento da matriz de variância assintótica para produzir um erro padrão, então crie intervalos de confiança multiplicando-o por -1,96 e 1,96, respectivamente, pelo nível 95: Observe que isso se torna mais direto ao usar a função arima , Mas espere até a Parte 2 antes de apresentá-lo corretamente. Assim, podemos ver que por alfa1 zero está contido dentro do intervalo de confiança, enquanto que para alfa2 zero não está contido no intervalo de confiança. Portanto, devemos ter muito cuidado ao pensar que realmente temos um modelo AR (2) generativo subjacente para AMZN. Em particular, observamos que o modelo autoregressivo não leva em consideração o agrupamento de volatilidade, o que leva ao agrupamento de correlação serial em séries temporais financeiras. Quando consideramos os modelos ARCH e GARCH em artigos posteriores, iremos explicar isso. Quando chegarmos a usar a função arima completa no próximo artigo, faremos previsões da série diária de preços de registro para nos permitir criar sinais de negociação. SampP500 US Equity Index Junto com ações individuais, também podemos considerar o índice US Equity, o SampP500. Permite aplicar todos os comandos anteriores a esta série e produzir as parcelas como antes: podemos traçar os preços: como antes, bem, crie a diferença de primeira ordem dos preços de fechamento de registro: mais uma vez, podemos traçar a série: é claro A partir deste gráfico que a volatilidade não é estacionária no tempo. Isso também se reflete no enredo do correlograma. Existem muitos picos, incluindo k1 e k2, que são estatisticamente significativos além de um modelo de ruído branco. Além disso, vemos evidências de processos de memória longa, pois existem alguns picos estatisticamente significativos em k16, k18 e k21: Em última análise, precisaremos de um modelo mais sofisticado do que um modelo de ordem autorregressivo p. No entanto, nesta fase, ainda podemos tentar ajustar esse modelo. Vamos ver o que obtemos se o fizermos: Usando ar produz um modelo AR (22), ou seja, um modelo com 22 parâmetros não-zero O que isso nos diz É indicativo de que há uma complexidade muito maior na correlação serial do que Um modelo linear simples de preços passados ​​pode realmente ser considerado. No entanto, já sabíamos disso porque podemos ver que existe uma correlação séria em série na volatilidade. Por exemplo, considere o período altamente volátil em torno de 2008. Isso motiva o próximo conjunto de modelos, ou seja, o MA em Movimento (q) e a Média Mover Autoregressiva ARMA (p, q). Bem, conheça ambos sobre a Parte 2 deste artigo. Como mencionamos repetidamente, estes nos levarão finalmente à família de modelos ARIMA e GARCH, que proporcionará um ajuste muito melhor à complexidade de correlação em série do Samp500. Isso nos permitirá melhorar nossas previsões significativamente e, em última análise, produzir estratégias mais lucrativas. Clique abaixo para aprender mais sobre. A informação contida neste site é a opinião dos autores individuais com base em sua observação pessoal, pesquisa e anos de experiência. A editora e seus autores não são conselheiros de investimento registrados, advogados, CPAs ou outros profissionais de serviços financeiros e não prestam assessoria jurídica, fiscal, contábil, de investimento ou outros serviços profissionais. A informação oferecida por este site é apenas de educação geral. Como cada situação factual de indivíduos é diferente, o leitor deve procurar seu próprio conselheiro pessoal. Nem o autor nem o editor assumem qualquer responsabilidade ou responsabilidade por quaisquer erros ou omissões e não devem ter responsabilidade nem responsabilidade para qualquer pessoa ou entidade em relação a danos causados ​​ou alegadamente causados ​​direta ou indiretamente pelas informações contidas neste site. Use por sua conta e risco. Além disso, este site pode receber compensações financeiras das empresas mencionadas através de publicidade, programas afiliados ou de outra forma. Taxas e ofertas de anunciantes exibidos neste site mudam com freqüência, às vezes sem aviso prévio. Enquanto nos esforçamos para manter informações precisas e oportunas, os detalhes da oferta podem estar desactualizados. Os visitantes devem assim verificar os termos de tais ofertas antes de participar delas. O autor e a editora estão isentos de responsabilidade pela atualização de informações e negam a responsabilidade pelo conteúdo, produtos e serviços de terceiros, inclusive quando acessados ​​através de hiperlinks e ou propagandas neste site. Processos de erro em média móvel contínuos (erros ARMA) e outros modelos que envolvem atrasos De termos de erro podem ser estimados usando instruções FIT e simuladas ou previstas usando instruções SOLVE. Os modelos ARMA para o processo de erro são freqüentemente usados ​​para modelos com resíduos auto-correlacionados. A macro AR pode ser usada para especificar modelos com processos de erro autorregressivo. A macro MA pode ser usada para especificar modelos com processos de erro em média móvel. Erros Autoregressivos Um modelo com erros autoregressivos de primeira ordem, AR (1), tem a forma enquanto um processo de erro AR (2) tem a forma e assim por diante para processos de ordem superior. Note-se que os s são independentes e distribuídos de forma idêntica e têm um valor esperado de 0. Um exemplo de um modelo com um componente AR (2) é e assim por diante para processos de ordem superior. Por exemplo, você pode escrever um modelo de regressão linear simples com MA (2) erros de média móvel como onde MA1 e MA2 são os parâmetros de média móvel. Observe que RESID. Y é definido automaticamente pelo PROC MODELE, pois a função ZLAG deve ser usada para modelos MA para truncar a recursão dos atrasos. Isso garante que os erros atrasados ​​começam em zero na fase de inicialização e não propagam os valores faltantes quando faltam variáveis ​​do período de inicialização e garante que os futuros erros sejam zero em vez de perder durante a simulação ou a previsão. Para obter detalhes sobre as funções de atraso, consulte a seção Lag Logic. Este modelo escrito usando a macro MA é o seguinte: Formulário geral para modelos ARMA O processo geral ARMA (p, q) tem a seguinte forma Um modelo ARMA (p, q) pode ser especificado da seguinte forma: onde AR i e MA j representam Os parâmetros da média autorregressiva e móvel para os vários atrasos. Você pode usar qualquer nome que você deseja para essas variáveis, e há muitas maneiras equivalentes de que a especificação possa ser escrita. Os processos ARMA vetoriais também podem ser estimados com PROC MODELO. Por exemplo, um processo AR (1) de duas variáveis ​​para os erros das duas variáveis ​​endógenas Y1 e Y2 pode ser especificado da seguinte forma: Problemas de convergência com modelos ARMA Os modelos ARMA podem ser difíceis de estimar. Se as estimativas dos parâmetros não estiverem dentro do intervalo apropriado, os termos residuais dos modelos médios em movimento crescem exponencialmente. Os resíduos calculados para observações posteriores podem ser muito grandes ou podem transbordar. Isso pode acontecer porque os valores iniciais inadequados foram usados ​​ou porque as iterações se afastaram de valores razoáveis. O cuidado deve ser usado na escolha dos valores iniciais para os parâmetros ARMA. Os valores iniciais de 0,001 para parâmetros ARMA geralmente funcionam se o modelo se adequar bem aos dados e o problema está bem condicionado. Note-se que um modelo de MA geralmente pode ser aproximado por um modelo AR de alta ordem e vice-versa. Isso pode resultar em colinearidade elevada em modelos mistos de ARMA, o que, por sua vez, pode causar um mau condicionamento grave nos cálculos e instabilidade das estimativas dos parâmetros. Se você tiver problemas de convergência ao estimar um modelo com processos de erro ARMA, tente estimar em etapas. Primeiro, use uma instrução FIT para estimar apenas os parâmetros estruturais com os parâmetros ARMA mantidos em zero (ou para estimativas anteriores razoáveis ​​se disponíveis). Em seguida, use outra instrução FIT para estimar apenas os parâmetros ARMA, usando os valores dos parâmetros estruturais da primeira execução. Como os valores dos parâmetros estruturais provavelmente estarão próximos de suas estimativas finais, as estimativas dos parâmetros ARMA podem agora convergir. Finalmente, use outra instrução FIT para produzir estimativas simultâneas de todos os parâmetros. Uma vez que os valores iniciais dos parâmetros agora são provavelmente muito próximos das suas estimativas conjuntas finais, as estimativas devem convergir rapidamente se o modelo for apropriado para os dados. AR Condições iniciais Os atrasos iniciais dos termos de erro dos modelos AR (p) podem ser modelados de diferentes maneiras. Os métodos de inicialização de erros autorregressivos suportados pelos procedimentos SASETS são os seguintes: mínimos quadrados condicionais (procedimentos ARIMA e MODELO) mínimos quadrados incondicionais (procedimentos AUTOREG, ARIMA e MODELO) probabilidade máxima (procedimentos AUTOREG, ARIMA e MODELO) Yule-Walker (AUTOREG Somente procedimento) Hildreth-Lu, que exclui as primeiras observações p (somente procedimento MODEL) Veja o Capítulo 8, O Procedimento AUTOREG, para uma explicação e discussão dos méritos de vários métodos de inicialização AR (p). As iniciais CLS, ULS, ML e HL podem ser realizadas pelo PROC MODELO. Para erros AR (1), essas iniciais podem ser produzidas como mostrado na Tabela 18.2. Esses métodos são equivalentes em grandes amostras. Tabela 18.2 Inicializações realizadas pelo PROC MODELO: AR (1) ERROS Os atrasos iniciais dos termos de erro dos modelos MA (q) também podem ser modelados de diferentes maneiras. Os procedimentos de ARIMA e MODELO seguintes são suportados pelos seguintes procedimentos: mínimos quadrados incondicionais mínimos quadrados condicionais O método dos mínimos quadrados condicionais para estimar termos de erro em média móvel não é otimizado porque ignora o problema de inicialização. Isso reduz a eficiência das estimativas, embora permaneçam imparciais. Os resíduos remanescentes iniciais, que se estendem antes do início dos dados, são assumidos como 0, seu valor esperado incondicional. Isso introduz uma diferença entre esses resíduos e os resíduos de mínimos quadrados generalizados para a covariância média móvel, que, ao contrário do modelo autorregressivo, persiste através do conjunto de dados. Normalmente, esta diferença converge rapidamente para 0, mas para processos em média móveis quase não-reversíveis, a convergência é bastante lenta. Para minimizar esse problema, você deve ter muitos dados e as estimativas dos parâmetros da média móvel devem estar bem dentro do intervalo invertido. Este problema pode ser corrigido à custa de escrever um programa mais complexo. As estimativas de mínimos quadrados incondicionais para o processo MA (1) podem ser produzidas especificando o modelo da seguinte maneira: os erros médios em movimento podem ser difíceis de estimar. Você deve considerar usar uma aproximação AR (p) ao processo de média móvel. Um processo de média móvel geralmente pode ser bem-aproximado por um processo autorregressivo se os dados não tiverem sido suavizados ou diferenciados. A Macro AR A macro AR SAS gera declarações de programação para PROC MODEL para modelos autoregressivos. A macro AR faz parte do software SASETS e nenhuma opção especial precisa ser configurada para usar a macro. O processo autorregressivo pode ser aplicado aos erros de equação estrutural ou às próprias séries endógenas. A macro AR pode ser usada para os seguintes tipos de autorregressão: Autoregência vectorial irrestrita Autoregresão vetorial restrita Univariada Autoregresso Para modelar o termo de erro de uma equação como processo auto-regressivo, use a seguinte declaração após a equação: Por exemplo, suponha que Y é um Função linear de X1, X2 e um erro AR (2). Você escreveria esse modelo da seguinte maneira: as chamadas para AR devem vir após todas as equações que o processo se aplica. A invocação de macro anterior, AR (y, 2), produz as instruções mostradas na saída LIST na Figura 18.58. Figura 18.58 Saída da opção LIST para um modelo AR (2) As variáveis ​​prefixadas PRED são variáveis ​​de programa temporárias usadas para que os atrasos dos resíduos sejam os resíduos corretos e não os redefinidos por esta equação. Observe que isso é equivalente às declarações explicitamente escritas na seção Formulário geral para modelos ARMA. Você também pode restringir os parâmetros autorregressivos a zero em atrasos selecionados. Por exemplo, se você quisesse parâmetros autoregressivos nos intervalos 1, 12 e 13, você pode usar as seguintes instruções: Essas instruções geram a saída mostrada na Figura 18.59. Figura 18.59 Saída da opção LIST para um modelo AR com Lags em 1, 12 e 13 O MODELO Lista de Procedimentos da Declaração de Código do Programa Compilado como Pareded PRED. yab x1 c x2 RESID. y PRED. y - ACTUAL. y ERROR. y PRED. E - y OLDPRED. y PRED. y yl1 ZLAG1 (y - perdy) yl12 ZLAG12 (y - perdy) yl13 ZLAG13 (y - perdy) RESID. y PRED. y - REAL. y ERROR. y PRED. y - y Existem Variações no método dos mínimos quadrados condicionais, dependendo se as observações no início da série são usadas para aquecer o processo AR. Por padrão, o método de mínimos quadrados condicionais AR usa todas as observações e assume zeros para os atrasos iniciais de termos autorregressivos. Ao usar a opção M, você pode solicitar que o AR use o método de mínimos quadrados incondicionais (ULS) ou máximo (ML). Por exemplo, as discussões desses métodos são fornecidas na seção AR Condições iniciais. Ao usar a opção MCLS n, você pode solicitar que as primeiras n observações sejam usadas para calcular estimativas dos atrasos de autorregressão iniciais. Neste caso, a análise começa com a observação n 1. Por exemplo: você pode usar a macro AR para aplicar um modelo auto - gressivo à variável endógena, em vez do termo de erro, usando a opção TYPEV. Por exemplo, se você deseja adicionar os últimos atrasos de Y para a equação no exemplo anterior, você poderia usar AR para gerar os parâmetros e atrasos usando as seguintes instruções: As instruções anteriores geram a saída mostrada na Figura 18.60. Figura 18.60 LIST Opção Saída para um modelo AR de Y Este modelo prediz Y como uma combinação linear de X1, X2, uma intercepção e os valores de Y nos cinco períodos mais recentes. Autoregression vetorial sem restrições Para modelar os termos de erro de um conjunto de equações como um processo autoregressivo vetorial, use a seguinte forma da macro AR após as equações: O nome do nome do processo é qualquer nome que você fornece para que AR use na criação de nomes para o autorregressivo Parâmetros. Você pode usar a macro AR para modelar vários processos AR diferentes para diferentes conjuntos de equações usando diferentes nomes de processos para cada conjunto. O nome do processo garante que os nomes das variáveis ​​usados ​​sejam exclusivos. Use um valor curto do nome do processo para o processo se as estimativas dos parâmetros forem gravadas em um conjunto de dados de saída. A macro AR tenta construir nomes de parâmetros menores ou iguais a oito caracteres, mas isso é limitado pelo comprimento do nome do processo. Que é usado como um prefixo para os nomes dos parâmetros AR. O valor da lista variável é a lista de variáveis ​​endógenas para as equações. Por exemplo, suponha que os erros das equações Y1, Y2 e Y3 sejam gerados por um processo auto-regressivo de vetor de segunda ordem. Você pode usar as seguintes instruções: que geram o seguinte para Y1 e código semelhante para Y2 e Y3: Somente o método de mínimos quadrados condicionais (MCLS ou MCLS n) pode ser usado para processos vetoriais. Você também pode usar o mesmo formulário com restrições que a matriz de coeficientes seja 0 em atrasos selecionados. Por exemplo, as seguintes afirmações aplicam um processo vetorial de terceira ordem aos erros de equação com todos os coeficientes no intervalo 2 restrito a 0 e com os coeficientes nos intervalos 1 e 3 sem restrições: você pode modelar as três séries Y1Y3 como um processo auto-regressivo vetorial in the variables instead of in the errors by using the TYPEV option. If you want to model Y1Y3 as a function of past values of Y1Y3 and some exogenous variables or constants, you can use AR to generate the statements for the lag terms. Write an equation for each variable for the nonautoregressive part of the model, and then call AR with the TYPEV option. For example, The nonautoregressive part of the model can be a function of exogenous variables, or it can be intercept parameters. If there are no exogenous components to the vector autoregression model, including no intercepts, then assign zero to each of the variables. There must be an assignment to each of the variables before AR is called. This example models the vector Y(Y1 Y2 Y3) as a linear function only of its value in the previous two periods and a white noise error vector. The model has 18(3 3 3 3) parameters. Syntax of the AR Macro There are two cases of the syntax of the AR macro. When restrictions on a vector AR process are not needed, the syntax of the AR macro has the general form specifies a prefix for AR to use in constructing names of variables needed to define the AR process. If the endolist is not specified, the endogenous list defaults to name . which must be the name of the equation to which the AR error process is to be applied. The name value cannot exceed 32 characters. is the order of the AR process. specifies the list of equations to which the AR process is to be applied. If more than one name is given, an unrestricted vector process is created with the structural residuals of all the equations included as regressors in each of the equations. If not specified, endolist defaults to name . specifies the list of lags at which the AR terms are to be added. The coefficients of the terms at lags not listed are set to 0. All of the listed lags must be less than or equal to nlag . and there must be no duplicates. If not specified, the laglist defaults to all lags 1 through nlag . specifies the estimation method to implement. Valid values of M are CLS (conditional least squares estimates), ULS (unconditional least squares estimates), and ML (maximum likelihood estimates). MCLS is the default. Only MCLS is allowed when more than one equation is specified. The ULS and ML methods are not supported for vector AR models by AR. specifies that the AR process is to be applied to the endogenous variables themselves instead of to the structural residuals of the equations. Restricted Vector Autoregression You can control which parameters are included in the process, restricting to 0 those parameters that you do not include. First, use AR with the DEFER option to declare the variable list and define the dimension of the process. Then, use additional AR calls to generate terms for selected equations with selected variables at selected lags. For example, The error equations produced are as follows: This model states that the errors for Y1 depend on the errors of both Y1 and Y2 (but not Y3) at both lags 1 and 2, and that the errors for Y2 and Y3 depend on the previous errors for all three variables, but only at lag 1. AR Macro Syntax for Restricted Vector AR An alternative use of AR is allowed to impose restrictions on a vector AR process by calling AR several times to specify different AR terms and lags for different equations. The first call has the general form specifies a prefix for AR to use in constructing names of variables needed to define the vector AR process. specifies the order of the AR process. specifies the list of equations to which the AR process is to be applied. specifies that AR is not to generate the AR process but is to wait for further information specified in later AR calls for the same name value. The subsequent calls have the general form is the same as in the first call. specifies the list of equations to which the specifications in this AR call are to be applied. Only names specified in the endolist value of the first call for the name value can appear in the list of equations in eqlist . specifies the list of equations whose lagged structural residuals are to be included as regressors in the equations in eqlist . Only names in the endolist of the first call for the name value can appear in varlist . If not specified, varlist defaults to endolist . specifies the list of lags at which the AR terms are to be added. The coefficients of the terms at lags not listed are set to 0. All of the listed lags must be less than or equal to the value of nlag . and there must be no duplicates. If not specified, laglist defaults to all lags 1 through nlag . The MA Macro The SAS macro MA generates programming statements for PROC MODEL for moving-average models. The MA macro is part of SASETS software, and no special options are needed to use the macro. The moving-average error process can be applied to the structural equation errors. The syntax of the MA macro is the same as the AR macro except there is no TYPE argument. When you are using the MA and AR macros combined, the MA macro must follow the AR macro. The following SASIML statements produce an ARMA(1, (1 3)) error process and save it in the data set MADAT2. The following PROC MODEL statements are used to estimate the parameters of this model by using maximum likelihood error structure: The estimates of the parameters produced by this run are shown in Figure 18.61. Figure 18.61 Estimates from an ARMA(1, (1 3)) Process There are two cases of the syntax for the MA macro. When restrictions on a vector MA process are not needed, the syntax of the MA macro has the general form specifies a prefix for MA to use in constructing names of variables needed to define the MA process and is the default endolist . is the order of the MA process. specifies the equations to which the MA process is to be applied. If more than one name is given, CLS estimation is used for the vector process. specifies the lags at which the MA terms are to be added. All of the listed lags must be less than or equal to nlag . and there must be no duplicates. If not specified, the laglist defaults to all lags 1 through nlag . specifies the estimation method to implement. Valid values of M are CLS (conditional least squares estimates), ULS (unconditional least squares estimates), and ML (maximum likelihood estimates). MCLS is the default. Only MCLS is allowed when more than one equation is specified in the endolist . MA Macro Syntax for Restricted Vector Moving-Average An alternative use of MA is allowed to impose restrictions on a vector MA process by calling MA several times to specify different MA terms and lags for different equations. The first call has the general form specifies a prefix for MA to use in constructing names of variables needed to define the vector MA process. specifies the order of the MA process. specifies the list of equations to which the MA process is to be applied. specifies that MA is not to generate the MA process but is to wait for further information specified in later MA calls for the same name value. The subsequent calls have the general form is the same as in the first call. specifies the list of equations to which the specifications in this MA call are to be applied. specifies the list of equations whose lagged structural residuals are to be included as regressors in the equations in eqlist . specifies the list of lags at which the MA terms are to be added.

Comments

Popular Posts