σμ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 Bayesian Inference›Módulo 3 · Modelos e prática›Tópico 3.4·~1 h 30 minAvançado

Projeto final: razão de Sharpe bayesiana e encolhimento em ações reais

Posição no roteiroMódulo 3 de 3 · Tópico 4 de 4
3.4 Projeto final: razão de Sharpe bayesiana e encolhimento em ações reais
—Nota do lab— / 100XP total—Sequência—

Quão certo você está de um índice de Sharpe?

Um backtest dá um único índice de Sharpe, mas ele é estimado a partir de retornos ruidosos. Uma estimativa bayesiana trata a média diária μ e a variância σ² como desconhecidas. Parte de um prior fraco e o atualiza com os dados. O par normal-gama inversa faz da atualização uma fórmula com quatro números. Depois amostra-se a posterior: sorteia-se uma precisão, depois uma média, e cada par vira um índice de Sharpe anual μ/σ·√252. Os sorteios dão um intervalo e a probabilidade de o índice de Sharpe estar acima de zero.

kₙ=k₀+n, mₙ=(k₀m₀+nx̄)/kₙ, aₙ=a₀+n/2, bₙ=b₀+ss/2+(k₀n(x̄-m₀)²)/2kₙ, S=μ/σ√252

A segunda metade trata de muitas ações. Os melhores retornos médios são em parte sorte, então você os aproxima da média geral com a regra hierárquica dos tópicos anteriores. O teste é honesto. Estima-se com a primeira metade dos anos e depois verifica-se quão bem cada método prevê os retornos médios da segunda metade. Você também escreverá seu próprio amostrador de Metropolis, a ferramenta para posteriores sem fórmula, que aqui testa numa posterior cuja resposta é conhecida.

O que dizem os dados reaisO SPY desde 2005 tem um índice de Sharpe de cerca de 0,52. O intervalo de credibilidade de 95% vai de cerca de 0,09 a 0,94, com 99% de chance de ficar acima de zero. Seus últimos 250 dias mostram 1,34, o que parece maravilhoso, mas o intervalo vai de cerca de -0,66 a 3,30 e a chance de ser positivo é de só cerca de 91%. Um ano não separa habilidade de sorte. Para as 54 ações, a dispersão dos retornos médios não é maior do que o ruído sozinho daria, então τ²=0 e todas são puxadas para a média geral. Ao prever a segunda metade, as médias brutas têm erro quadrático médio de cerca de 0,0135 e as encolhidas de cerca de 0,0106: 22% a menos.
  • Atualização conjugada: quatro números (mₙ,kₙ,aₙ,bₙ) descrevem toda a posterior da média e da variância.
  • Barras de erro honestas: um ano de dados dá um intervalo de Sharpe tão largo que inclui zero.
  • Teste de encolhimento: estimar na primeira metade, pontuar na segunda. Aqui agrupar supera as médias brutas.
Simplificações para lembrarOs retornos diários são tratados como normais e independentes, o que ignora caudas grossas e agrupamento de volatilidade. O prior fraco é escolhido à mão. A amostra de ações tem viés de sobrevivência, pois só contém grandes empresas que existiram o tempo todo, e as ações se movem juntas, então o estudo é menos independente do que parece. A lição é o método e a largura das barras de erro, não os números exatos.

Lab: o que é avaliado

  • O índice de Sharpe10 pts
  • A atualização posterior15 pts
  • Sorteios de Sharpe15 pts
  • Um intervalo de credibilidade10 pts
  • Encolher médias15 pts
  • Um amostrador de Metropolis20 pts
  • O estudo de encolhimento15 pts
Explorador · lab-by-10
▾ lab-by-10
▾ data
…
bash · no navegador
learner@quantcraft:~/lab-by-10$
Python ainda não carregadoPythonLn 1, Col 1Spaces: 4UTF-8

Redefinir este tópico?

Tudo em lab-by-10 volta aos arquivos iniciais e o terminal é limpo. Sua solução atual será perdida — isso não pode ser desfeito.

Será redefinido
  • main.py → código inicial
  • Histórico do terminal e saída dos testes
  • Alterações não enviadas
Será mantido
  • Melhor nota do lab
  • Seu XP e sua sequência
  • Progresso da aula e anotações

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