σμ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 Matrix Decompositions›Módulo 4 · Estimar a covariância›Tópico 4.2·~1 hAvançado

Corte de autovalores e Marchenko-Pastur

Posição no roteiroMódulo 4 de 5 · Tópico 2 de 3
4.2 Corte de autovalores e Marchenko-Pastur
—Nota do lab— / 100XP total—Sequência—

Distinguir autovalores de sinal de ruído

Se os retornos fossem puro ruído sem estrutura, os autovalores de sua matriz de correlação ainda se espalhariam por um intervalo conhecido, o intervalo de Marchenko-Pastur [λ−,λ+][\lambda_-,\lambda_+][λ−​,λ+​] com λ±=(1±q)2\lambda_\pm=(1\pm\sqrt q)^2λ±​=(1±q​)2 e q=N/Tq=N/Tq=N/T. Esse intervalo é uma régua. Um autovalor da matriz de correlação amostral acima de λ+\lambda_+λ+​ é maior do que o ruído pode explicar, então reflete um fator comum real. Os autovalores dentro do intervalo são indistinguíveis do ruído: seus autovetores são direções aleatórias que não informam sobre o futuro.

λi′={λi,λi>λ+λˉnoise,λi≤λ+,λˉnoise=1k∑λi≤λ+λi,Cclean=QΛ′QT\lambda_i'=\begin{cases}\lambda_i,&\lambda_i>\lambda_+\\[2pt]\bar\lambda_{\mathrm{noise}},&\lambda_i\le\lambda_+\end{cases},\qquad \bar\lambda_{\mathrm{noise}}=\frac{1}{k}\sum_{\lambda_i\le\lambda_+}\lambda_i,\qquad C_{\mathrm{clean}}=Q\Lambda'Q^{T}λi′​={λi​,λˉnoise​,​λi​>λ+​λi​≤λ+​​,λˉnoise​=k1​λi​≤λ+​∑​λi​,Cclean​=QΛ′QT(1)

O corte de autovalores age sobre esse veredito. Mantêm-se os autovalores acima de λ+\lambda_+λ+​ e substituem-se todos os outros pela sua própria média λˉnoise\bar\lambda_{\mathrm{noise}}λˉnoise​, o que achata a parte ruidosa do espectro. Usar a média em vez de zero preserva o traço, que numa matriz de correlação é NNN, e mantém a matriz definida positiva e portanto inversível, o que um otimizador precisa. Depois reconstrói-se Cclean=QΛ′QTC_{\mathrm{clean}}=Q\Lambda'Q^{T}Cclean​=QΛ′QT e reescala-se para que sua diagonal seja exatamente 1, porque a substituição altera um pouco a diagonal. Dois refinamentos são comuns. O modo de mercado absorve variância, então o nível de ruído é na verdade σ2≈1−λ1/N\sigma^2\approx1-\lambda_1/Nσ2≈1−λ1​/N e não 1. E a lei de Marchenko-Pastur supõe observações independentes e caudas finas, então a borda é um guia, não um teste preciso; verifique a matriz limpa fora da amostra.

Quatro ativos, dezesseis observaçõesSuponha N=4N=4N=4, T=16T=16T=16, então q=0,25q=0{,}25q=0,25 e λ+=(1+0,5)2=2,25\lambda_+=(1+0{,}5)^2=2{,}25λ+​=(1+0,5)2=2,25. A matriz de correlação amostral tem autovalores 2,60; 0,80; 0,40; 0,202{,}60;\,0{,}80;\,0{,}40;\,0{,}202,60;0,80;0,40;0,20 (somam N=4N=4N=4). Só 2,602{,}602,60 excede 2,252{,}252,25: um autovalor de sinal, o fator comum de mercado. Os outros três são ruído, com média (0,80+0,40+0,20)/3=0,4667(0{,}80+0{,}40+0{,}20)/3=0{,}4667(0,80+0,40+0,20)/3=0,4667. O espectro limpo é 2,60; 0,4667; 0,4667; 0,46672{,}60;\,0{,}4667;\,0{,}4667;\,0{,}46672,60;0,4667;0,4667;0,4667, que ainda soma 4 e tem menor autovalor 0,470{,}470,47 em vez de 0,200{,}200,20, de modo que seu número de condição cai de 131313 para cerca de 5,65{,}65,6. Para um problema maior com q=0,4q=0{,}4q=0,4 a borda superior é (1+0,4)2=2,665(1+\sqrt{0{,}4})^2=2{,}665(1+0,4​)2=2,665.
  • Borda: os autovalores acima de (1+q)2(1+\sqrt q)^2(1+q​)2 são sinal; os dentro do intervalo são ruído.
  • Corte: substituir os autovalores de ruído pela média, preservando o traço e o caráter definido positivo.
  • Acabamento: reconstruir QΛ′QTQ\Lambda'Q^{T}QΛ′QT e reescalar a diagonal para 1; validar sempre fora da amostra.
Uma referência, não um vereditoOs retornos reais têm caudas pesadas e volatilidade que muda no tempo, o que espalha os autovalores de ruído além da borda teórica. Trate λ+\lambda_+λ+​ como um limiar inicial razoável para quantos componentes manter e deixe um teste fora da amostra decidir se a limpeza realmente ajuda. É exatamente isso que o projeto final faz.

Lab: o que é avaliado

  • A borda superior15 pts
  • Contar autovalores de sinal10 pts
  • O valor de substituição15 pts
  • O traço é preservado10 pts
  • O algoritmo de corte15 pts
  • Por que a média15 pts
  • O que significa um autovalor acima da borda20 pts
0/ 7 respondidas
Tarefas
1Resposta numérica15 ptsSem resposta

Para N = 200 ativos e T = 500 observações (q = 0,4), qual é a borda superior de Marchenko-Pastur (1+q)2(1+\sqrt q)^2(1+q​)2? Dê com três casas decimais.

lambda+=lambda_+ =lambda+​=aceito: ± 0.005
2Resposta numérica10 ptsSem resposta

Uma matriz de correlação com q = 0,25 (borda superior 2,25) tem autovalores 2,60; 0,80; 0,40 e 0,20. Quantos estão acima da borda?

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

Para a mesma matriz, os três autovalores de ruído 0,80; 0,40 e 0,20 são substituídos pela média. Qual é o valor comum? Dê com quatro casas decimais.

average=average =average=aceito: ± 0.001
4Preencher as lacunas10 ptsSem resposta

Uma matriz de correlação de N=4N=4N=4 ativos tem traço 4. Após o corte, os autovalores continuam somando o mesmo número. Preencha.

∑iλi′=\displaystyle \sum_i\lambda_i'=\htmlData{blank=a}{\phantom{\rule[-0.35em]{2.4em}{1.35em}}}i∑​λi′​=
5Ordenar os passos15 ptsSem resposta

Coloque em ordem os passos do corte de autovalores.

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

  1. 1Reescalar para que a diagonal seja exatamente 1
  2. 2Substituir os autovalores iguais ou abaixo da borda pela média
  3. 3Calcular a matriz de correlação amostral e sua decomposição própria
  4. 4Reconstruir a matriz como QΛ′QTQ\Lambda'Q^{T}QΛ′QT
  5. 5Achar a borda (1+N/T)2(1+\sqrt{N/T})^2(1+N/T​)2
6Escolha15 ptsSem resposta

Por que os autovalores de ruído são substituídos pela média e não por zero?

7Explicar com palavras20 ptsSem resposta

Em uma ou duas frases, diga o que significa um autovalor da matriz de correlação amostral estar acima da borda superior de Marchenko-Pastur e o que significa estar dentro.

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