Monday, 20 November 2017

Movendo média regressão stata no Brasil


Médias móveis Médias móveis Com conjuntos de dados convencionais, o valor médio é frequentemente o primeiro, e um dos mais úteis, estatísticas de resumo a calcular. Quando os dados estão na forma de uma série temporal, a média da série é uma medida útil, mas não reflete a natureza dinâmica dos dados. Os valores médios calculados em períodos em curto, anteriores ao período atual ou centrados no período atual, são freqüentemente mais úteis. Como esses valores médios variam ou se movem, à medida que o período atual se move a partir do tempo t 2, t 3, etc., eles são conhecidos como médias móveis (Mas). Uma média móvel simples é (tipicamente) a média não ponderada de k valores anteriores. Uma média móvel exponencialmente ponderada é essencialmente a mesma que uma média móvel simples, mas com contribuições para a média ponderada pela sua proximidade com o tempo atual. Como não existe uma, mas toda uma série de médias móveis para qualquer série, o conjunto de Mas pode ser plotado em gráficos, analisado como uma série e usado na modelagem e previsão. Uma gama de modelos pode ser construída usando médias móveis, e estes são conhecidos como modelos MA. Se tais modelos forem combinados com modelos autorregressivos (AR), os modelos compostos resultantes são conhecidos como modelos ARMA ou ARIMA (o I é para integrado). Médias móveis simples Uma vez que uma série temporal pode ser considerada como um conjunto de valores, t 1,2,3,4, n a média destes valores pode ser calculada. Se assumimos que n é bastante grande, e selecionamos um inteiro k que é muito menor que n. Podemos calcular um conjunto de médias de bloco, ou médias móveis simples (de ordem k): Cada medida representa a média dos valores de dados sobre um intervalo de k observações. Observe que o primeiro MA possível de ordem k gt0 é aquele para t k. De forma mais geral, podemos descartar o subíndice extra nas expressões acima e escrever: Isto indica que a média estimada no tempo t é a média simples do valor observado no instante t e os intervalos de tempo anteriores k-1. Se forem aplicados pesos que diminuam a contribuição de observações que estão mais distantes no tempo, a média móvel é dita ser suavizada exponencialmente. As médias móveis são frequentemente utilizadas como uma forma de previsão, pelo que o valor estimado para uma série no tempo t 1, S t 1. É tomado como o MA para o período até e incluindo o tempo t. por exemplo. A estimativa de hoje é baseada em uma média de valores anteriores registrados até e inclusive ontem (para dados diários). As médias móveis simples podem ser vistas como uma forma de suavização. No exemplo ilustrado abaixo, o conjunto de dados sobre poluição atmosférica mostrado na introdução deste tópico foi aumentado por uma linha de média móvel de 7 dias, mostrada aqui em vermelho. Como pode ser visto, a linha de MA suaviza os picos e depressões nos dados e pode ser muito útil na identificação de tendências. A fórmula de cálculo de referência padrão significa que os primeiros pontos de dados k-1 não têm valor de MA, mas depois disso os cálculos se estendem até o ponto de dados final da série. Uma razão para calcular médias móveis simples da maneira descrita é que ela permite que os valores sejam calculados para todos os intervalos de tempo desde o tempo tk até o presente, e Como uma nova medição é obtida para o tempo t 1, o MA para o tempo t 1 pode ser adicionado ao conjunto já calculado. Isso fornece um procedimento simples para conjuntos de dados dinâmicos. No entanto, existem alguns problemas com esta abordagem. É razoável argumentar que o valor médio nos últimos 3 períodos, digamos, deve ser localizado no tempo t -1, não no tempo t. E para um MA sobre um número par de períodos, talvez ele deve ser localizado no ponto médio entre dois intervalos de tempo. Uma solução para esse problema é usar cálculos centralizados de MA, nos quais o MA no tempo t é a média de um conjunto simétrico de valores em torno de t. Apesar de seus méritos óbvios, esta abordagem não é geralmente usada porque exige que os dados estejam disponíveis para eventos futuros, o que pode não ser o caso. Nos casos em que a análise é inteiramente de uma série existente, o uso de Mas centralizado pode ser preferível. As médias móveis simples podem ser consideradas como uma forma de suavização, removendo alguns componentes de alta freqüência de uma série de tempo e destacando (mas não removendo) as tendências de forma semelhante à noção geral de filtragem digital. De fato, as médias móveis são uma forma de filtro linear. É possível aplicar um cálculo da média móvel a uma série que já tenha sido suavizada, isto é, suavizar ou filtrar uma série já suavizada. Por exemplo, com uma média móvel de ordem 2, podemos considerá-la como sendo calculada usando pesos, então a MA em x 2 0,5 x 1 0,5 x 2. Da mesma forma, a MA em x 3 0,5 x 2 0,5 x 3. Se nós Aplicar um segundo nível de suavização ou filtragem, temos 0,5 x 2 0,5 x 3 0,5 (0,5 x 1 0,5 x 2) 0,5 (0,5 x 2 0,5 x 3) 0,25 x 1 0,5 x 2 0,25 x 3 ou seja, a filtragem de 2 estádios Processo (ou convolução) produziu uma média móvel simétrica ponderada variável, com pesos. Várias circunvoluções podem produzir médias móveis ponderadas bastante complexas, algumas das quais foram encontradas de uso particular em campos especializados, como nos cálculos de seguros de vida. As médias móveis podem ser usadas para remover efeitos periódicos se computadas com o comprimento da periodicidade como um conhecido. Por exemplo, com os dados mensais as variações sazonais podem frequentemente ser removidas (se este for o objetivo) aplicando uma média móvel simétrica de 12 meses com todos os meses ponderados igualmente, exceto o primeiro eo último que são ponderados por 12. Isto é porque haverá Ser de 13 meses no modelo simétrico (tempo atual, t. - 6 meses). O total é dividido por 12. Procedimentos semelhantes podem ser adotados para qualquer periodicidade bem definida. Médias móveis exponencialmente ponderadas (EWMA) Com a fórmula da média móvel simples: todas as observações são igualmente ponderadas. Se chamássemos esses pesos iguais, alfa t. Cada um dos k pesos seria igual a 1 k. Então a soma dos pesos seria 1, ea fórmula seria: Já vimos que múltiplas aplicações desse processo resultam em pesos variando. Com médias móveis ponderadas exponencialmente, a contribuição para o valor médio das observações que são mais removidas no tempo é deliberada reduzida, enfatizando os eventos mais recentes (locais). Essencialmente um parâmetro de suavização, 0lt alfa lt1, é introduzido, ea fórmula revisada para: Uma versão simétrica desta fórmula seria da forma: Se os pesos no modelo simétrico são selecionados como os termos dos termos da expansão binomial, (1212) 2q. Eles somarão a 1, e quando q se tornar grande, aproximar-se-á da distribuição Normal. Esta é uma forma de ponderação do kernel, com o Binomial agindo como a função do kernel. A convolução de dois estágios descrita na subseção anterior é precisamente esta disposição, com q 1, produzindo os pesos. Em suavização exponencial é necessário usar um conjunto de pesos que somam 1 e que reduzem em tamanho geometricamente. Os pesos usados ​​são tipicamente da forma: Para mostrar que esses pesos somam 1, considere a expansão de 1 como uma série. Podemos escrever e expandir a expressão entre parênteses usando a fórmula binomial (1-x) p. Onde x (1-) e p -1, o que dá: Isso então fornece uma forma de média móvel ponderada da forma: Esta soma pode ser escrita como uma relação de recorrência: o que simplifica muito a computação e evita o problema de que o regime de ponderação Deve ser estritamente infinito para os pesos a somar a 1 (para pequenos valores de alfa, isso normalmente não é o caso). A notação utilizada por diferentes autores varia. Alguns usam a letra S para indicar que a fórmula é essencialmente uma variável suavizada e escrevem: enquanto a literatura da teoria de controle usa freqüentemente Z em vez de S para os valores exponencialmente ponderados ou suavizados (ver, por exemplo, Lucas e Saccucci, 1990, LUC1 , Eo site do NIST para mais detalhes e exemplos trabalhados). As fórmulas citadas acima derivam do trabalho de Roberts (1959, ROB1), mas Hunter (1986, HUN1) usa uma expressão da forma: que pode ser mais apropriada para uso em alguns procedimentos de controle. Com alfa 1, a estimativa média é simplesmente o seu valor medido (ou o valor do item de dados anterior). Com 0,5 a estimativa é a média móvel simples das medições atuais e anteriores. Nos modelos de previsão, o valor, S t. É freqüentemente usado como estimativa ou valor de previsão para o próximo período de tempo, ou seja, como a estimativa para x no tempo t 1. Assim, temos: Isto mostra que o valor da previsão no tempo t 1 é uma combinação da média móvel exponencialmente ponderada anterior Mais um componente que representa o erro de previsão ponderado, epsilon. No tempo t. Supondo que uma série temporal é dada e uma previsão é necessária, um valor para alfa é necessário. Isto pode ser estimado a partir dos dados existentes, avaliando a soma dos erros de predição quadrados obtidos com valores variáveis ​​de alfa para cada t 2,3. Definindo a primeira estimativa como o primeiro valor de dados observado, x 1. Em aplicações de controle, o valor de alfa é importante na medida em que é usado na determinação dos limites de controle superior e inferior, e afeta o comprimento médio de execução (ARL) esperado Antes que esses limites de controle sejam quebrados (sob o pressuposto de que as séries temporais representam um conjunto de variáveis ​​independentes, aleatoriamente distribuídas, com variância comum). Nestas circunstâncias, a variância da estatística de controlo é (Lucas e Saccucci, 1990): Os limites de controlo são usualmente definidos como múltiplos fixos desta variância assintótica, e. - 3 vezes o desvio padrão. Se alfa 0,25, por exemplo, e os dados sendo monitorados forem assumidos como tendo uma distribuição Normal, N (0,1), quando em controle, os limites de controle serão - 1,134 e o processo atingirá um ou outro limite em 500 passos na média. Lucas e Saccucci (1990 LUC1) derivam os ARLs para uma ampla gama de valores alfa e sob várias suposições usando procedimentos de Cadeia de Markov. Eles tabulam os resultados, incluindo o fornecimento de ARLs quando a média do processo de controle foi deslocada por algum múltiplo do desvio padrão. Por exemplo, com um deslocamento 0,5 com alfa 0,25 o ARL é menos de 50 etapas de tempo. As abordagens descritas acima são conhecidas como suavização exponencial única. Uma vez que os procedimentos são aplicados uma vez à série temporal e, em seguida, análises ou processos de controlo são realizados no conjunto de dados suavizado resultante. Se o conjunto de dados incluir uma tendência e / ou componentes sazonais, a suavização exponencial de dois ou três estágios pode ser aplicada como um meio de remover (explicitamente modelar) esses efeitos (veja a seção sobre Previsão abaixo eo exemplo trabalhado pelo NIST). CHA1 Chatfield C (1975) A Análise da Série de Tempos: Teoria e Prática. Chapman e Hall, Londres HUN1 Hunter J S (1986) A média móvel exponencialmente ponderada. J of Quality Technology, 18, 203-210 LUC1 Lucas J M, Saccucci M S (1990) Esquemas de controlo da média móvel ponderada exponencialmente: propriedades e melhoramentos. Technometrics, 32 (1), 1-12 ROB1 Roberts S W (1959) Testes de gráficos de controle baseados em médias móveis geométricas. () E suas limitações O comando mais óbvio de Statarsquos para calcular médias móveis é a função ma () de Egen. Dada uma expressão, cria uma média móvel - period dessa expressão. Por padrão, é tomado como 3. deve ser ímpar. No entanto, como a entrada manual indica, egen, ma () não pode ser combinado com varlist:. E, por esse motivo, não é aplicável aos dados do painel. Em qualquer caso, ele está fora do conjunto de comandos especificamente escrito para as séries temporais ver séries de tempo para obter detalhes. Abordagens alternativas Para calcular médias móveis para dados de painel, existem pelo menos duas opções. Ambos dependem do conjunto de dados ter sido tsset previamente. Isso vale muito a pena fazer: não só você pode salvar a si mesmo repetidamente especificando variável de painel e variável de tempo, mas Stata se comporta de forma inteligente, dada qualquer lacuna nos dados. 1. Escreva sua própria definição usando generate Usando operadores de séries temporais como L. e F. Dar a definição da média móvel como o argumento para uma declaração de geração. Se você fizer isso, você não estará, naturalmente, limitado às médias móveis ponderadas (não ponderadas) centradas calculadas por egen, ma (). Por exemplo, as médias móveis ponderadas de três períodos seriam dadas por e alguns pesos podem ser facilmente especificados: Você pode, naturalmente, especificar uma expressão como log (myvar) em vez de um nome de variável como myvar. Uma grande vantagem dessa abordagem é que a Stata automaticamente faz a coisa certa para os dados do painel: os valores iniciais e retardatários são elaborados dentro dos painéis, exatamente como a lógica determina que eles devam ser. A desvantagem mais notável é que a linha de comando pode ficar bastante longa se a média móvel envolver vários termos. Outro exemplo é uma média móvel unilateral baseada apenas em valores anteriores. Isso poderia ser útil para gerar uma expectativa adaptativa do que uma variável será baseada puramente em informações até à data: o que alguém poderia prever para o período atual baseado nos últimos quatro valores, usando um esquema de ponderação fixo Especialmente comumente usado com timeseries trimestrais.) 2. Use egen, filter () de SSC Use o filtro de função egen escrito pelo usuário () do pacote egenmore em SSC. No Stata 7 (atualizado após 14 de novembro de 2001), você pode instalar este pacote após o qual a ajuda egenmore aponta para detalhes sobre filter (). Os dois exemplos acima seriam renderizados (nesta comparação, a abordagem de gerar é talvez mais transparente, mas veremos um exemplo do oposto em um momento). Os retornos são um numlist. Leva-se a defasagens negativas: nesse caso -11 se expande para -1 0 1 ou chumbo 1, atraso 0, atraso 1. Os coeficientes, outro número, multiplicam os itens correspondentes retardados ou principais: neste caso, esses itens são F1.myvar . Myvar e L1.myvar. O efeito da opção de normalização é escalar cada coeficiente pela soma dos coeficientes para que o coeficiente (1 1 1) normalize seja equivalente aos coeficientes de 13 13 13 e o coeficiente (1 2 1) normalize seja equivalente aos coeficientes de 14 12 14 Você deve especificar não apenas os atrasos, mas também os coeficientes. Como egen, ma () fornece o caso igualmente ponderado, a razão principal para egen, filter () é suportar o caso desigualmente ponderado, para o qual você deve especificar coeficientes. Poderia também ser dito que obrigar os usuários a especificar coeficientes é uma pequena pressão extra sobre eles para pensar sobre quais coeficientes eles querem. A principal justificativa para pesos iguais é, suponhamos, simplicidade, mas pesos iguais têm propriedades de domínio de frequência ruim, para mencionar apenas uma consideração. O terceiro exemplo acima pode ser qualquer um dos quais é quase tão complicado quanto a abordagem gerar. Há casos em que egen, filter () dá uma formulação mais simples do que gerar. Se você quer um filtro binomial de nove períodos, que os climatologistas acham útil, então parece talvez menos horrível do que, e mais fácil de obter do que, Assim como com a abordagem de geração, egen, filter () funciona corretamente com dados do painel. Na verdade, como dito acima, depende do conjunto de dados ter sido tsset previamente. Uma dica gráfica Depois de calcular suas médias móveis, você provavelmente vai querer olhar para um gráfico. O comando tsgraph escrito pelo usuário é inteligente sobre conjuntos de dados tsset. Instale-o em um Stata 7 atualizado por ssc inst tsgraph. O que sobre subconjunto com se nenhum dos exemplos acima fazer uso de se restrições. Na verdade egen, ma () não permitirá se a ser especificado. Ocasionalmente as pessoas querem usar se ao calcular médias móveis, mas seu uso é um pouco mais complicado do que é normalmente. O que você esperaria de uma média móvel calculada com if. Vamos identificar duas possibilidades: Fraca interpretação: Eu não quero ver nenhum resultado para as observações excluídas. Interpretação forte: Eu nem quero que você use os valores para as observações excluídas. Aqui está um exemplo concreto. Suponha como conseqüência de alguma condição if, as observações 1-42 estão incluídas, mas não as observações 43 sobre. Mas a média móvel de 42 dependerá, entre outras coisas, do valor de observação 43 se a média se estender para trás e para a frente e for de comprimento pelo menos 3, e dependerá também de algumas das observações 44 em diante em algumas circunstâncias. Nossa suposição é que a maioria das pessoas iria para a interpretação fraca, mas se isso está correto, egen, filter () não suporta se. Você sempre pode ignorar o que você donrsquot quer ou mesmo definir valores indesejados para desaparecer depois, usando substituir. Uma nota sobre os resultados faltando nas extremidades da série Como as médias móveis são funções de defasagens e derivações, egen, ma () produz faltando onde não existem os retornos e as derivações, no início e no final da série. Uma opção nomiss força o cálculo de médias móveis mais curtas e não centralizadas para as caudas. Em contraste, nem gerar nem egen, filter () faz, ou permite, nada de especial para evitar resultados em falta. Se algum dos valores necessários para o cálculo estiver faltando, então esse resultado está ausente. Cabe aos usuários decidir se e o que a cirurgia corretiva é necessária para essas observações, presumivelmente depois de olhar para o conjunto de dados e considerar qualquer ciência subjacente que pode ser trazida para bear. Announcement 04 Nov 2017, 19:36 Caros todos, estou trabalhando Com um conjunto de dados de painel desequilibrado onde o painel var é o número do fundo eo tempo var é o mês. Assim, eu estou trabalhando com séries de tempo mensais, mas com lacunas. O que eu quero é calcular a taxa de Sharpe de 3 anos e também o jensens alfa de 3 anos para cada fundo. Então, se eu estou no ano de 1992 eu gostaria de calcular a relação de Sharpe para aquele ano usando as observações mensais dos anos 1992 1991 1990. Para fazer isso eu preciso a média e sd dos retornos excedentes de cada fundo durante esse período. Além disso, eu gostaria de estimar o Jensens Alpha executando o modelo CAPM usando novamente as observações mensais dos anos 1992 1991 1990. Para fazer isso eu poderia usar o comando statsby e usar os coeficientes de uma regressão em execução durante esse período. I haved tentou acessar muitos comandos como rollreg, movavg, ma etc e também alguns moradores locais com foreachforvalues ​​mas I não podem empregá-los como eu não tenho um painel equilibrado e eu não quero eliminar os fundos porque eu poderia ter uma ou duas lacunas. Este é um exemplo do meu dataset o mês de ryear mktrf smb hml umd Excesso s ---------------------------------- ----------------------------------------- 2 1997 1. 2 1997 2 -. 0049 -0,0261 .0469 -0,0204. 2 1997 3 -0,0503-0032 0,0386 0,0094 -0,0181431 2 1997 4 .0404 -,0519 -0,0102,0489 0,0117428 2 1997 5 0,0674 0,0483-0438 -0,019 .0372053 ---- -------------------------------------------------- --------------------- 2 1997 6 .041 .015 .0072 .0259 .0310222 2 1997 7 .0733 -.0252 -.0013 .0384 .0402394 2 1997 8 -.0415 .0734 .0137 -.0252 -0292168 2 1997 9 .0535 .0268 -.0025 .0145 .0381404 2 1998 1 .0015 -.0094 -.0207 .001 .0056473 ------ -------------------------------------------------- ------------------- 2 1998 2 .0703 .0032 -.0086 -.011 .0395531 2 1998 3 .0476 -.0099 .0123 .0214 .0277491 2 1998 4 .0073 .0048 .0027 .0078 .0005439 2 1998 5 -.0307 -.0354 .0412 .0189 -.0093562 2 1998 6 .0318 -.0315 -.0222 .0726 .002362 -------- -------------------------------------------------- ----------------- 2 1998 7 -.0246 -.0492 -0,0115 .0371 -0232616 2 1998 8-.I608 -.0575 .0524 .0187 -.091043 2 1998 9 .0615 -.0015 -.0388 -.0063 .0222817 2 1998 10 .0713 -0.32 -0.0277 -.0535 .0311223 2 1998 11. 061 .0114 -.0343 .0118 .0300834 ---------------------------------------- ----------------------------------- 2 1998 12 .0616 -.003 -.047 .0904 .0168859 7 1994 1 .0287 .0014 .021 .0001 .0183894 7 1994 2 -0.0256 .0272 -.0141 -.0026 -.0170168 7 1994 3 -.0478 -.0096 .0134 -.0132 -.0656004 7 1994 4 0068-0091 .0169 .0041 -.0032034 -------------------------------------- ------------------------------------- 7 1994 5 .0058 -.0201 .0018 -.0216 -.0093189 7 1994 6 -.0303 -.0048 .0168 -.0083 -0506594 7 1994 7 .0282 -0,0178 0,0098 .0019 .0199595 7 1994 8 .0401 .0145 -.0347 .0154 .0419298 7 1994 9 -.0231 .0268 -.0181 .0131 -.0135341 ------------------------------------ --------------------------------------- 7 1994 10 .0134 -.022 -.0236 .0145 .0129598 7 ​​1994 11 -.0404 -.0017 -.0005 -.0019 -.0433825 7 1994 12 .0086 .0005 .0026 .035 .0152948 05 Nov 2017, 11:35 Muito obrigado por suas postagens. Em relação à relação sharpe este é o código que eu escrevi e resolvo meu problema. Gen MeanVWExcRetGr. Class crspfundno ryear mês forval i1990 (1) 2017 local mi-2 por crspfundno. Egen Meanimean (VWExcRetGr) se ryearlti amp ryeargtm substituir MeanVWExcRetGrMeani if ​​ryeari Não é perfeito, mas eu tenho meus meios em uma coluna agora, então cada ano eu tenho o mesmo valor de rolling mean dentro das minhas observações mensais (egen). Estou dizendo que não é perfeito, porque dentro dos comandos eu não especificar que eu quero a média dos valores apenas no caso que eu tenho 3 anos de observações. Assim, também calcula a média no caso em que tenho 2 anos de observações. A boa notícia é que eu posso eliminar-me essas observações. Eu postei o acima, porque eu quero que você entenda o que eu preciso exatamente. Eu quero ter o alfa e beta, cada um em uma coluna para que eu possa usá-los para regredir-los em outras variáveis. Portanto, no ano de 1995 para o fundo no 100, que tem 11 observações mensais, por exemplo, eu quero que a alfa-saída da regressão capm de capm4 de 3 anos (1995,1994,1993) seja repetida nas 11 linhas - células da coluna alfa. O mesmo se aplica para beta. Eu apliquei o código Mata com algumas alterações egen g grupo (crspfundno) gen alpha. Mata mata stview (crspfundno quotcrspfundno quot) stview stview (std) stview (std) Stview (st) stview (std) Stview (st. (P) i) para (opi, 2 ogtpi, 1 o-) y J (1,1 ,.) XJ (1,5) ,.) B. Para (para tgtpi, 1 t-) se (ir, 1 gt, 1 amp ryearo, 1-ryeart, 1 lt 2) yy VWExcRetGrt, 1 XX (mktrft, 1, smbt, 1, hmlt, 1, umdt, 1 , 1) yy (2..rows (y)) ,. XX (2..vertos (X)) ,. Se (linhas (y) gt6) b invsym (cruz, X) cruzar (X, y) alphao, 1 b5,1 final, mas o resultado é este e não inclui beta também. Pode por favor ajudar-me fundar ano g alfa 5487 2001 1 478 -.0045781 5487 2001 2 478 -.0049922 5487 2001 3 478 -.0044039 5487 2001 4 478 -.0058963 5487 2001 5 478 -.0057021 5487 2001 6 478 - .0037893 5487 2001 7 478 -.0046226 5487 2001 8 478 -.0027665 5487 2001 9 478 -.0037288 5487 2002 1 478 .0009866 5487 2002 2 478 .0019246 5487 2002 3 478 .0019994 5487 2002 4 478 .002021 5487 2002 5 478 .0019815 5487 2002 7 478 .0037848 5487 2002 8 478 .0035144 5487 2002 9 478 .003802 5487 2002 10 478 .0012915 5487 2002 11 478 .0016832 5487 2002 12 478 .0015888 Não sei se Eu entendo você. No entanto, repetindo o conselho no tópico ao qual eu o referi anteriormente sobre não usar código Mata enquanto código Stata está disponível, aqui está um código adaptado a partir desse thread que fará a regressão em rotação. Levará muito tempo se você tiver um grande conjunto de dados. Deixe-me saber se você leva muito tempo. Eu recomendo que você verifique os resultados. 06 Nov 2017, 08:51 Para Abraham: Realmente rápido código Mata. I apenas necessário 1 minutos em vez de 2 horas. Além disso, ele funciona melhor, uma vez que dá volta valores faltantes se eu tiver apenas um ano de observação. Muito obrigado. Uma última pergunta. Se eu precisar da regressão capm, isso significa apenas VWExcRetGr e mktrf, mas não o smb hml umd, é assim que o código deve ser como gen Alpha. Gen bMktrf. Mata mata clear stview stview stview stview stview (stk) stview (bMktrf. QuotbMktrfquot) p panelsetup (crspfundno, 1) para (i1 iltrows) stview (crspfundno, 1) stview (crspfundno, quotryearquot) (P) i) para (opi, 1 oltpi, 2 o) y VWExcRetGro, 1 X (mktrfo, 1, 1) b. Para (tpi, 1 tltpi, 2 t) se (para amp crspfundnoo, 1 crspfundnot, 1 amp (ryearo, 1 - ryeart, 1 lt 2) amp ryearo, 1 gt ryeart, 1) yy VWExcRetGrt, 1 XX (mktrft, 1 1) if (linhas (y) gt6) b invsym (cruz (X, X)) cruzar (X, y) Alphao, 1 b2,1 bMktrfo, 1 b1,1 No seu código você calcula o desvio padrão por país e Indústria (usando resumir) mas, em seguida, substituir esse valor em SDx de outros coutries (no loop interno). É isso que você quer fazer Eu escrevi o código Mata assumindo que você quer calcular o desvio padrão por país e indústria. Se você quiser calcular por país e indústria, você precisa adicionar: Aqui está o código Mata (ele calcula o desvio padrão também quando a janela é menor que 4 anos):

No comments:

Post a Comment