Sunday 12 November 2017

Moving Average Model In Sas


O código de exemplo na guia Código completo ilustra como calcular a média móvel de uma variável através de um conjunto de dados inteiro, nas últimas N observações em um conjunto de dados ou nas últimas N observações dentro de um grupo BY. Esses exemplos de arquivos e exemplos de código são fornecidos pelo SAS Institute Inc., tal como está sem garantia de qualquer tipo, expressa ou implícita, incluindo, mas não limitado a, garantias implícitas de comercialização e adequação para um propósito específico. Os destinatários reconhecem e concordam que o SAS Institute não será responsável por quaisquer danos decorrentes do uso deste material. Além disso, o SAS Institute não fornecerá suporte para os materiais aqui contidos. Esses exemplos de arquivos e exemplos de código são fornecidos pelo SAS Institute Inc., tal como está sem garantia de qualquer tipo, expressa ou implícita, incluindo, mas não limitado a, garantias implícitas de comercialização e adequação para um propósito específico. Os destinatários reconhecem e concordam que o SAS Institute não será responsável por quaisquer danos decorrentes do uso deste material. Além disso, o SAS Institute não fornecerá suporte para os materiais aqui contidos. Calcule a média móvel de uma variável através de um conjunto de dados inteiro, nas últimas N observações em um conjunto de dados, ou nas últimas N observações dentro de um grupo BY. Processos de erro em média móvel contínuos (erros ARMA) e outros modelos que envolvem Os atrasos dos 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 MODEL, 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 Nas variáveis ​​em vez de nos erros usando a opção TYPEV. Se você deseja modelar Y1Y3 como uma função dos valores passados ​​de Y1Y3 e algumas variáveis ​​ou constantes exógenas, você pode usar AR para gerar as declarações para os termos de atraso. Escreva uma equação para cada variável para a parte não autorregente do modelo e, em seguida, chame AR com a opção TYPEV. Por exemplo, a parte não autorregente do modelo pode ser uma função de variáveis ​​exógenas, ou pode ser parâmetros de interceptação. Se não houver componentes exógenos para o modelo de autoregressão vetorial, incluindo sem interceptações, atribua zero a cada uma das variáveis. Deve haver uma atribuição para cada uma das variáveis ​​antes de chamar AR. Este exemplo modela o vetor Y (Y1 Y2 Y3) como uma função linear apenas do seu valor nos dois períodos anteriores e um vetor de erro de ruído branco. O modelo possui 18 (3 3 3 3) parâmetros. Sintaxe da AR Macro Existem dois casos da sintaxe da macro AR. Quando as restrições em um processo AR vetorial não são necessárias, a sintaxe da macro AR tem o formulário geral especifica um prefixo para AR para usar na construção de nomes de variáveis ​​necessárias para definir o processo AR. Se o endolista não for especificado, a lista endógena padrão nomeará. Que deve ser o nome da equação em que o processo de erro AR deve ser aplicado. O valor do nome não pode exceder 32 caracteres. É a ordem do processo AR. Especifica a lista de equações a que o processo AR deve ser aplicado. Se mais de um nome for dado, um processo vetorial irrestrito é criado com os resíduos estruturais de todas as equações incluídas como regressores em cada uma das equações. Se não for especificado, o endolista padrão nomeará. Especifica a lista de atrasos em que os termos AR devem ser adicionados. Os coeficientes dos termos em atrasos não listados são definidos como 0. Todos os atrasos listados devem ser menores ou iguais a nlag. E não deve haver duplicatas. Se não for especificado, o laglista é padrão para todos os atrasos 1 até nlag. Especifica o método de estimação para implementar. Os valores válidos de M são CLS (estimativas de mínimos quadrados condicionais), ULS (estimativas de mínimos quadrados incondicionais) e ML (estimativas de máxima verossimilhança). O MCLS é o padrão. Somente o MCLS é permitido quando mais de uma equação é especificada. Os métodos ULS e ML não são suportados para modelos vetoriais AR por AR. Especifica que o processo AR deve ser aplicado às próprias variáveis ​​endógenas em vez dos resíduos estruturais das equações. Autoregression vetorial restrita Você pode controlar quais parâmetros estão incluídos no processo, restringindo a 0 os parâmetros que você não inclui. Primeiro, use AR com a opção DEFER para declarar a lista de variáveis ​​e definir a dimensão do processo. Em seguida, use chamadas AR adicionais para gerar termos para equações selecionadas com variáveis ​​selecionadas em atrasos selecionados. Por exemplo, as equações de erro produzidas são as seguintes: Este modelo afirma que os erros para Y1 dependem dos erros de Y1 e Y2 (mas não de Y3) nos dois laços 1 e 2 e que os erros para Y2 e Y3 dependem de Os erros anteriores para todas as três variáveis, mas apenas no intervalo 1. Sintaxe de Macro AR para Vector AR Restrivo. Um uso alternativo de AR pode impor restrições sobre um processo AR vetorial, chamando AR várias vezes para especificar diferentes termos AR e atrasos para diferentes Equações. A primeira chamada tem o formulário geral especifica um prefixo para AR para usar na construção de nomes de variáveis ​​necessárias para definir o processo vetorial AR. Especifica a ordem do processo AR. Especifica a lista de equações a que o processo AR deve ser aplicado. Especifica que AR não é para gerar o processo AR, mas é esperar por informações adicionais especificadas em chamadas AR mais recentes para o mesmo valor de nome. As chamadas subseqüentes têm a forma geral é a mesma que na primeira chamada. Especifica a lista de equações a que as especificações nesta chamada AR devem ser aplicadas. Somente os nomes especificados no valor endolista da primeira chamada para o valor do nome podem aparecer na lista de equações na eqlist. Especifica a lista de equações cujos resíduos estruturais atrasados ​​devem ser incluídos como regressores nas equações em eqlist. Somente nomes no endolista da primeira chamada para o valor do nome podem aparecer na varlist. Se não for especificado, varlist é padrão para endolista. Especifica a lista de atrasos em que os termos AR devem ser adicionados. Os coeficientes dos termos em atrasos não listados são definidos como 0. Todos os atrasos listados devem ser inferiores ou iguais ao valor de nlag. E não deve haver duplicatas. Se não for especificado, o laglist é padrão para todos os atrasos 1 através do nlag. A MA Macro A macro macro SAS gera declarações de programação para PROC MODEL para modelos em média móveis. A macro MA faz parte do software SASETS, e nenhuma opção especial é necessária para usar a macro. O processo de erro em média móvel pode ser aplicado aos erros de equação estrutural. A sintaxe da macro MA é a mesma que a macro AR, exceto que não existe um argumento TYPE. Quando você está usando as macros MA e AR combinadas, a macro MA deve seguir a macro AR. As seguintes instruções SASIML produzem um processo de erro ARMA (1, (1 3)) e salve-o no conjunto de dados MADAT2. As seguintes instruções PROC MODEL são usadas para estimar os parâmetros deste modelo usando a estrutura de erro de máxima verossimilhança: as estimativas dos parâmetros produzidos por esta execução são mostradas na Figura 18.61. Figura 18.61 Estimativas de um ARMA (1, (1 3)) Processo Existem dois casos da sintaxe para a macro MA. Quando as restrições em um processo de vetor MA não são necessárias, a sintaxe da macro MA tem o formulário geral especifica um prefixo para MA para usar na construção de nomes de variáveis ​​necessárias para definir o processo MA e é o endolista padrão. É a ordem do processo MA. Especifica as equações para as quais o processo MA deve ser aplicado. Se mais de um nome for dado, a estimativa de CLS é usada para o processo vetorial. Especifica os atrasos nos quais os termos MA devem ser adicionados. Todos os atrasos listados devem ser inferiores ou iguais a nlag. E não deve haver duplicatas. Se não for especificado, o laglista é padrão para todos os atrasos 1 até nlag. Especifica o método de estimação para implementar. Os valores válidos de M são CLS (estimativas de mínimos quadrados condicionais), ULS (estimativas de mínimos quadrados incondicionais) e ML (estimativas de máxima verossimilhança). O MCLS é o padrão. Somente o MCLS é permitido quando mais de uma equação é especificada no endolista. MA Macro Sintaxe para Média de Movimento de Vetor Restrito Um uso alternativo de MA é permitido para impor restrições em um processo de MA vetorial, ligando MA várias vezes para especificar diferentes termos e atrasos de MA para diferentes equações. A primeira chamada tem o formulário geral especifica um prefixo para MA para usar na construção de nomes de variáveis ​​necessárias para definir o processo de vetor MA. Especifica a ordem do processo MA. Especifica a lista de equações para as quais o processo MA deve ser aplicado. Especifica que MA não é para gerar o processo de MA, mas é esperar por informações adicionais especificadas em chamadas de MA mais recentes para o mesmo valor de nome. As chamadas subseqüentes têm a forma geral é a mesma que na primeira chamada. Especifica a lista de equações às quais as especificações nesta chamada MA devem ser aplicadas. Especifica a lista de equações cujos resíduos estruturais atrasados ​​devem ser incluídos como regressores nas equações em eqlist. Especifica a lista de atrasos em que os termos MA devem ser adicionados.

No comments:

Post a Comment