σμ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 2 · Modelos de séries temporais›Tópico 2.5·~55 minAvançado

Cointegração e pares

Posição no roteiroMódulo 2 de 3 · Tópico 5 de 5
2.5 Cointegração e pares
—Nota do lab— / 100XP total—Sequência—

Dois preços que ficam juntos

Os preços vagueiam: comportam-se como passeios aleatórios, então cada um é não estacionário. Duas séries que vagueiam são cointegradas quando alguma combinação delas não vagueia: o diferencial st=yt−βxts_t=y_t-\beta x_tst​=yt​−βxt​ volta sempre a uma média. É a ideia do trading de pares. O teste de Engle–Granger tem dois passos. Primeiro regride-se yyy em xxx por mínimos quadrados para obter a razão de hedge β^\hat\betaβ^​ e o diferencial. Depois faz-se um teste de Dickey–Fuller aumentado no diferencial: Δst=γst−1+εt\Delta s_t=\gamma s_{t-1}+\varepsilon_tΔst​=γst−1​+εt​, e pergunta-se se γ<0\gamma<0γ<0. A estatística t precisa estar abaixo de valores críticos especiais, cerca de −3,34-3{,}34−3,34 a 5 % para duas séries, mais rígidos que os usuais porque o diferencial foi estimado. No statsmodels é coint(y, x).

st=yt−β^xt,Δst=γst−1+εt,ϕ=1+γ,t1/2=ln⁡0.5ln⁡ϕs_t=y_t-\hat\beta x_t,\qquad \Delta s_t=\gamma s_{t-1}+\varepsilon_t,\qquad \phi=1+\gamma,\qquad t_{1/2}=\frac{\ln 0.5}{\ln\phi}st​=yt​−β^​xt​,Δst​=γst−1​+εt​,ϕ=1+γ,t1/2​=lnϕln0.5​(1)
Um diferencial de cinco dias à mãoTomemos x=1,2,3,4,5x=1,2,3,4,5x=1,2,3,4,5 e y=3,5,6,9,10y=3,5,6,9,10y=3,5,6,9,10. A regressão dá β^=18/10=1,8\hat\beta=18/10=1{,}8β^​=18/10=1,8, então o diferencial y−1,8xy-1{,}8xy−1,8x é 1,2;1,4;0,6;1,8;1,01{,}2;1{,}4;0{,}6;1{,}8;1{,}01,2;1,4;0,6;1,8;1,0, com média 1,21{,}21,2 e desvio-padrão 0,4470{,}4470,447. O diferencial de hoje 1,01{,}01,0 tem z-score (1,0−1,2)/0,447=−0,45(1{,}0-1{,}2)/0{,}447=-0{,}45(1,0−1,2)/0,447=−0,45: um pouco abaixo do normal. Se o diferencial segue st=0,9 st−1+εs_t=0{,}9\,s_{t-1}+\varepsilonst​=0,9st−1​+ε, uma lacuna se fecha pela metade em ln⁡0,5/ln⁡0,9=6,58\ln0{,}5/\ln0{,}9=6{,}58ln0,5/ln0,9=6,58 dias. Uma regressão de teste Δs=γst−1\Delta s=\gamma s_{t-1}Δs=γst−1​ com γ^=−0,1\hat\gamma=-0{,}1γ^​=−0,1 e erro-padrão 0,040{,}040,04 tem t=−2,5t=-2{,}5t=−2,5, acima do crítico −3,34-3{,}34−3,34, então não se pode chamar o par de cointegrado. Em dados diários reais desde 2000 (6 6966\,6966696 dias), regredir um log-preço em outro dá R2R^2R2 de 0,850{,}850,85 a 0,930{,}930,93 em pares como KO e PEP, XOM e CVX ou HD e LOW, e no entanto as estatísticas de Engle–Granger são −2,69-2{,}69−2,69, −1,80-1{,}80−1,80 e −3,97-3{,}97−3,97: só HD e LOW passa a 5 % (p=0,008p=0{,}008p=0,008). Até isso é frágil: cada metade da amostra sozinha falha (t=−1,58t=-1{,}58t=−1,58 e −2,63-2{,}63−2,63) e a razão de hedge vai de 0,130{,}130,13 a 0,930{,}930,93. O diferencial da amostra inteira tem ϕ=0,998\phi=0{,}998ϕ=0,998, meia-vida de cerca de 332332332 dias, lenta demais para negociar. Para comparar, em 100010001000 pares simulados de passeios aleatórios independentes, 85%85\%85% mostram uma inclinação com ∣t∣>1,96|t|>1{,}96∣t∣>1,96.
Um R ao quadrado alto não é evidênciaDois preços que vagueiam sempre parecem relacionados quando se regride um no outro. Só a estacionariedade do diferencial, testada com os valores críticos de Engle–Granger, diz que a ligação é real. Verifique a estabilidade em subperíodos antes de negociá-lo.
  • Dois passos: regredir para a razão de hedge e depois testar raiz unitária no diferencial com os valores de Engle–Granger.
  • A meia-vida diz se uma reversão real à média é rápida o bastante para negociar.

Lab: o que é avaliado

  • A razão de hedge10 pts
  • O diferencial médio10 pts
  • Um z-score15 pts
  • Uma meia-vida15 pts
  • Uma estatística de Dickey–Fuller15 pts
  • Ler o teste10 pts
  • Passar não basta25 pts
0/ 7 respondidas
Tarefas
1Resposta numérica10 ptsSem resposta

Para x=1,2,3,4,5x=1,2,3,4,5x=1,2,3,4,5 e y=3,5,6,9,10y=3,5,6,9,10y=3,5,6,9,10 as somas são Sxx=10S_{xx}=10Sxx​=10 e Sxy=18S_{xy}=18Sxy​=18. Quanto vale a razão de hedge β^=Sxy/Sxx\hat\beta=S_{xy}/S_{xx}β^​=Sxy​/Sxx​?

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

Com β^=1,8\hat\beta=1{,}8β^​=1,8 o diferencial y−1,8xy-1{,}8xy−1,8x é 1,2;1,4;0,6;1,8;1,01{,}2;1{,}4;0{,}6;1{,}8;1{,}01,2;1,4;0,6;1,8;1,0. Qual é a sua média?

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

O diferencial de hoje é 1,01{,}01,0, a média 1,21{,}21,2 e o desvio-padrão 0,4470{,}4470,447. Quanto vale o z-score (1,0−1,2)/0,447(1{,}0-1{,}2)/0{,}447(1,0−1,2)/0,447? Dê duas casas decimais.

z=z =z=aceito: ± 0.01
4Resposta numérica15 ptsSem resposta

Um diferencial segue st=0,9 st−1+εts_t=0{,}9\,s_{t-1}+\varepsilon_tst​=0,9st−1​+εt​. Depois de quantos dias uma lacuna diminui pela metade, ln⁡0,5/ln⁡0,9\ln0{,}5/\ln0{,}9ln0,5/ln0,9? Use ln⁡0,5=−0,6931\ln0{,}5=-0{,}6931ln0,5=−0,6931, ln⁡0,9=−0,1054\ln0{,}9=-0{,}1054ln0,9=−0,1054 e dê uma casa decimal.

hl=hl =hl=aceito: ± 0.1
5Resposta numérica15 ptsSem resposta

Em Δst=γst−1+εt\Delta s_t=\gamma s_{t-1}+\varepsilon_tΔst​=γst−1​+εt​ a estimativa é γ^=−0,1\hat\gamma=-0{,}1γ^​=−0,1 com erro-padrão 0,040{,}040,04. Quanto vale a estatística t? Dê uma casa decimal.

t=t =t=aceito: ± 0.05
6Escolha10 ptsSem resposta

A estatística é -2,5 e o valor crítico de Engle–Granger a 5 % é -3,34. O que você conclui?

7Explicar com palavras25 ptsSem resposta

HD e LOW passam no teste de Engle–Granger na amostra inteira, mas cada metade falha e a razão de hedge vai de 0,130{,}130,13 a 0,930{,}930,93. Em uma ou duas frases, explique por que isso torna o par arriscado de negociar.

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