σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyRoadmapsRoteiros
Ctrl K
AO
+1,2 mil alunos
EntrarParticipar ↗
RoadmapsRoteiros
AO
+1,2 mil alunos
Entrar
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyRoadmapsRoteiros
Ctrl K
AO
+1,2 mil alunos
EntrarParticipar ↗
RoadmapsRoteiros
AO
+1,2 mil alunos
Entrar
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Roteiro de statsmodels›Módulo 1 · A regressão e suas verificações›Tópico 1.2·~50 minIntermediário

A API de fórmulas e o resumo do MQO

Posição no roteiroMódulo 1 de 3 · Tópico 2 de 8
1.2 A API de fórmulas e o resumo do MQO
—Nota do lab— / 100XP total—Sequência—

Uma linha para ajustar, uma tabela para ler

O statsmodels é a biblioteca para responder *quão seguros estamos?* sobre uma regressão. Onde o scikit-learn devolve previsões, o statsmodels devolve um relatório completo: os coeficientes, seus erros-padrão, as estatísticas t, os valores p, os intervalos de confiança e várias medidas de ajuste. O modelo é descrito por uma fórmula. Em smf.ols('ex ~ mkt_rf + hml', data).fit() o nome à esquerda do til é a resposta, os da direita são os regressores, e uma constante é adicionada por você (escreva - 1 para removê-la). A interface com arrays sm.OLS(y, X) não adiciona a constante, então você chama sm.add_constant(X), e esquecer isso é o deslize mais comum.

Com um só regressor a aritmética é curta o bastante para fazer à mão. Com Sxx=∑(xi−xˉ)2S_{xx}=\sum(x_i-\bar x)^2Sxx​=∑(xi​−xˉ)2 e Sxy=∑(xi−xˉ)(yi−yˉ)S_{xy}=\sum(x_i-\bar x)(y_i-\bar y)Sxy​=∑(xi​−xˉ)(yi​−yˉ​), a inclinação é β^=Sxy/Sxx\hat\beta=S_{xy}/S_{xx}β^​=Sxy​/Sxx​ e a constante α^=yˉ−β^xˉ\hat\alpha=\bar y-\hat\beta\bar xα^=yˉ​−β^​xˉ. Os resíduos são ei=yi−α^−β^xie_i=y_i-\hat\alpha-\hat\beta x_iei​=yi​−α^−β^​xi​ e a soma dos seus quadrados é SSE\mathrm{SSE}SSE. O nível de ruído é estimado por s2=SSE/(n−k)s^2=\mathrm{SSE}/(n-k)s2=SSE/(n−k), em que kkk conta os coeficientes ajustados, aqui 2. O erro-padrão da inclinação é s2/Sxx\sqrt{s^2/S_{xx}}s2/Sxx​​, a estatística t é β^\hat\betaβ^​ dividido por ele, e R2=1−SSE/SSTR^2=1-\mathrm{SSE}/\mathrm{SST}R2=1−SSE/SST, em que SST=∑(yi−yˉ)2\mathrm{SST}=\sum(y_i-\bar y)^2SST=∑(yi​−yˉ​)2 é a variação total em torno da média.

β^=SxySxx,α^=yˉ−β^xˉ,s2=SSEn−k,t=β^s2/Sxx,R2=1−SSESST\hat\beta=\frac{S_{xy}}{S_{xx}},\qquad \hat\alpha=\bar y-\hat\beta\bar x,\qquad s^{2}=\frac{\mathrm{SSE}}{n-k},\qquad t=\frac{\hat\beta}{\sqrt{s^{2}/S_{xx}}},\qquad R^{2}=1-\frac{\mathrm{SSE}}{\mathrm{SST}}β^​=Sxx​Sxy​​,α^=yˉ​−β^​xˉ,s2=n−kSSE​,t=s2/Sxx​​β^​​,R2=1−SSTSSE​(1)
Cinco meses à mãoRetornos excedentes do mercado x=−2,−1,0,1,2x=-2,-1,0,1,2x=−2,−1,0,1,2 (em percentual) e da ação y=−3,0,1,2,5y=-3,0,1,2,5y=−3,0,1,2,5. Então xˉ=0\bar x=0xˉ=0, yˉ=1\bar y=1yˉ​=1, Sxx=10S_{xx}=10Sxx​=10 e Sxy=8+1+0+1+8=18S_{xy}=8+1+0+1+8=18Sxy​=8+1+0+1+8=18, logo β^=1,8\hat\beta=1{,}8β^​=1,8 e α^=1\hat\alpha=1α^=1. Os valores ajustados são −2,6;−0,8;1;2,8;4,6-2{,}6;-0{,}8;1;2{,}8;4{,}6−2,6;−0,8;1;2,8;4,6, os resíduos −0,4;0,8;0;−0,8;0,4-0{,}4;0{,}8;0;-0{,}8;0{,}4−0,4;0,8;0;−0,8;0,4 e SSE=1,6\mathrm{SSE}=1{,}6SSE=1,6, enquanto SST=16+1+0+1+16=34\mathrm{SST}=16+1+0+1+16=34SST=16+1+0+1+16=34. Assim R2=1−1,6/34=0,953R^2=1-1{,}6/34=0{,}953R2=1−1,6/34=0,953. Com n−k=3n-k=3n−k=3 a estimativa do ruído é s2=1,6/3=0,5333s^2=1{,}6/3=0{,}5333s2=1,6/3=0,5333, o erro-padrão 0,5333/10=0,2309\sqrt{0{,}5333/10}=0{,}23090,5333/10​=0,2309 e t=1,8/0,2309=7,79t=1{,}8/0{,}2309=7{,}79t=1,8/0,2309=7,79. Em dados reais, o retorno mensal excedente da Apple contra o do mercado, 319319319 meses de fevereiro de 2000 a agosto de 2026, dá β^=1,31\hat\beta=1{,}31β^​=1,31 com erro-padrão 0,1120{,}1120,112 (t=11,7t=11{,}7t=11,7) e uma constante de 1,5%1{,}5\%1,5% ao mês (t=2,9t=2{,}9t=2,9), mas R2R^2R2 é só 0,300{,}300,30.
  • A fórmula primeiro: y ~ a + b ajusta uma constante e duas inclinações, - 1 tira a constante e sm.OLS precisa de add_constant.
  • Leia a tabela em ordem: coeficiente, erro-padrão, estatística t, valor p, intervalo, depois R2R^2R2 e o tamanho da amostra.

Lab: o que é avaliado

  • A inclinação à mão15 pts
  • A constante10 pts
  • O R ao quadrado15 pts
  • A estatística t20 pts
  • Ler a tabela-resumo10 pts
  • Um fluxo de trabalho de regressão10 pts
  • Preciso mas pequeno20 pts
0/ 7 respondidas
Tarefas
1Resposta numérica15 ptsSem resposta

Os retornos excedentes do mercado são −2,−1,0,1,2-2,-1,0,1,2−2,−1,0,1,2 e os da ação −3,0,1,2,5-3,0,1,2,5−3,0,1,2,5. Com Sxx=10S_{xx}=10Sxx​=10, quanto vale β^=Sxy/Sxx\hat\beta=S_{xy}/S_{xx}β^​=Sxy​/Sxx​? Encontre primeiro Sxy=∑(xi−xˉ)(yi−yˉ)S_{xy}=\sum(x_i-\bar x)(y_i-\bar y)Sxy​=∑(xi​−xˉ)(yi​−yˉ​). Dê uma casa decimal.

b=b =b=aceito: ± 0.02
2Resposta numérica10 ptsSem resposta

Com β^=1,8\hat\beta=1{,}8β^​=1,8, xˉ=0\bar x=0xˉ=0 e yˉ=1\bar y=1yˉ​=1, quanto vale a constante α^=yˉ−β^xˉ\hat\alpha=\bar y-\hat\beta\bar xα^=yˉ​−β^​xˉ?

a=a =a=aceito: ± 0.01
3Resposta numérica15 ptsSem resposta

Os resíduos do ajuste são −0,4;0,8;0;−0,8;0,4-0{,}4;0{,}8;0;-0{,}8;0{,}4−0,4;0,8;0;−0,8;0,4, logo SSE=1,6\mathrm{SSE}=1{,}6SSE=1,6, e a variação total em torno da média é SST=34\mathrm{SST}=34SST=34. Quanto vale R2=1−SSE/SSTR^2=1-\mathrm{SSE}/\mathrm{SST}R2=1−SSE/SST? Dê três casas decimais.

r=r =r=aceito: ± 0.002
4Resposta numérica20 ptsSem resposta

A estimativa do ruído é s2=SSE/(n−2)=0,5333s^2=\mathrm{SSE}/(n-2)=0{,}5333s2=SSE/(n−2)=0,5333 e Sxx=10S_{xx}=10Sxx​=10. Quanto vale t=β^/s2/Sxxt=\hat\beta/\sqrt{s^2/S_{xx}}t=β^​/s2/Sxx​​ para β^=1,8\hat\beta=1{,}8β^​=1,8? Use 0,05333=0,2309\sqrt{0{,}05333}=0{,}23090,05333​=0,2309 e dê duas casas decimais.

t=t =t=aceito: ± 0.05
5Associar10 ptsSem resposta

Associe cada item do resumo ao que ele informa.

Escolha o par de cada item da esquerda.

coef
std err
t
R ao quadrado
6Ordenar os passos10 ptsSem resposta

Coloque em ordem os passos para ajustar uma regressão de fatores de uma ação.

Arraste para reordenar, ou foque um item, Espaço para levantá-lo, setas para movê-lo e Espaço para soltá-lo.

  1. 1Ler a tabela-resumo
  2. 2Ajustar a fórmula com ols e fit
  3. 3Subtrair a taxa livre de risco para obter retornos excedentes
  4. 4Olhar os resíduos antes de confiar nele
  5. 5Alinhar por mês os retornos da ação e dos fatores
7Explicar com palavras20 ptsSem resposta

O beta de uma ação tem t=11,7t=11{,}7t=11,7 e a regressão tem R2=0,30R^2=0{,}30R2=0,30. Em uma ou duas frases, explique por que esses dois fatos não se contradizem.

Modo matemáticaEntrada por teclado ou LaTeXTarefa 1 de 7 · Ctrl ⏎ para verificar

Entre para executar o seu código.

Todas as aulas são gratuitas para ler. Crie uma conta ou entre para executar código, rodar os testes e enviar este lab.

  • IDE no navegador com terminal bash — nada para instalar
  • Correção instantânea, XP e o seu lugar no roteiro
Criar uma contaEntrar
OU
Continuar com o GitHub