Esta página foi traduzida automaticamente. O original em inglês é a versão canônica. Ler em inglês
Pular para o conteúdo principal

SANOS do zero

1/5

Modelos paramétricos têm um viés de forma

Todo modelo paramétrico — SVI, SABR, ajustes polinomiais — começa escolhendo uma família de fórmulas. Essa família determina quais formas são possíveis antes mesmo de você olhar uma única cotação de mercado.

O SVI tem cinco parâmetros. Isso lhe dá cinco graus de liberdade para se ajustar ao smile do mercado. Para mercados líquidos e bem-comportados, cinco geralmente bastam. O smile é suave, vagamente parabólico, e o SVI o captura com precisão.

Mas os mercados nem sempre são bem-comportados. Um evento de resultados, um exploit de protocolo, uma manchete regulatória — tudo isso pode produzir saliências localizadas na volatilidade implícita em strikes específicos. Uma curva de cinco parâmetros não consegue criar uma saliência em K=90 e permanecer plana em todo o resto. Ela teria que distorcer a curva inteira para acomodar uma única característica local.

O SANOS adota a abordagem oposta. Em vez de escolher uma família de fórmulas, ele coloca um valor em cada nó de uma grade e deixa os dados decidirem a forma da superfície. Os únicos requisitos: ela deve ser suave, deve estar livre de arbitragem e deve respeitar as cotações bid/ask observadas.

O SVI é como ajustar uma régua flexível de gabarito a um conjunto de pontos — a régua pode se curvar, mas não pode formar uma dobra. O SANOS é como estender uma malha flexível sobre os pontos, onde cada interseção pode se mover de forma independente. A malha consegue capturar características locais que a régua não consegue.

A grade substitui a fórmula

No SANOS, a superfície de volatilidade é definida por uma grade de nós: um valor em cada interseção (strike, vencimento). 9 strikes e 5 vencimentos resultam em 45 variáveis livres. Escale para 20 strikes e 5 vencimentos e você terá 100.

Cada nó armazena um valor de variância total (ou, de forma equivalente, uma volatilidade implícita). A superfície entre os nós é interpolada. A diferença fundamental em relação aos modelos paramétricos: não há fórmula ligando esses valores entre si. Cada nó é uma variável livre, restrita apenas pela ausência de arbitragem e pela suavidade.

Abaixo, a grade mostra valores de volatilidade implícita ao longo dos strikes e vencimentos. Note a saliência localizada perto de K=90, T=0.25 — esse é o tipo de característica que um modelo paramétrico deixaria passar. O painel à direita mostra o smile em um vencimento selecionado, com o melhor ajuste SVI sobreposto para comparação.

Grade de nós vs ajuste paramétrico
15%
55%Clique nas células para ajustar a vol
Smile em T=0.25y
Nós: 45Parâmetros SVI: 5

Clique em qualquer célula para ajustar sua vol. Observe como o smile do SANOS (verde) se desvia do SVI (amarelo tracejado) onde quer que a grade capture estrutura local. O SVI é forçado a permanecer suave globalmente; a grade pode seguir os dados ponto a ponto.

Graus de liberdade
SVI: 5 params per expiry smooth, global shape
SANOS: N_K × N_T nodes local flexibility
Mais parâmetros significam mais flexibilidade, mas também mais risco de overfitting. O SANOS controla esse risco por meio de restrições de não arbitragem e penalidades de suavidade, não limitando o número de parâmetros.

Não arbitragem como restrições lineares

Com 100 variáveis livres, você precisa de guarda-corpos. O SANOS os obtém das condições estáticas de não arbitragem, expressas como desigualdades lineares sobre os valores da grade.

Duas restrições fundamentais:

Restrição de calendar spread. A variância total (w = σ^2 × T) deve ser não decrescente em T para cada strike. Se ela diminuísse, você poderia vender uma opção de vencimento curto e comprar uma de vencimento mais longo no mesmo strike com lucro sem risco. Na grade, isso significa que cada coluna deve crescer de cima para baixo.

Restrição de butterfly spread. Os preços das calls devem ser convexos em relação ao strike em cada vencimento. De forma equivalente, a segunda diferença da variância total entre strikes adjacentes deve ser não negativa. Isso evita densidade de probabilidade negativa — uma impossibilidade física.

Restrições de não arbitragem em uma grade 3x3
K=90
K=100
K=110
T=0.25
4.5w=0.045
3.5w=0.035
5.0w=0.050
T=0.5
8.5w=0.085
7.0w=0.070
9.0w=0.090
T=1
16.0w=0.160
13.5w=0.135
17.0w=0.170
Calendário: a variância total aumenta com T
Butterfly: convexidade em K para cada T
Positividade: todos os valores > 0
Os valores são a variância total (w = σ^2 × T). Clique para aumentar, clique com o botão direito para diminuir.
Tente fazer uma célula violar uma restrição. A grade volta ao estado anterior porque o SANOS impõe essas condições como desigualdades rígidas.

Ambas as restrições são lineares nos valores da grade. Calendário: w(K, T_2) w(K, T_1) for T_2 > T_1. Butterfly: w(K-1, T) - 2·w(K, T) + w(K+1, T) 0. Sem termos não lineares, sem acoplamento complicado. Apenas desigualdades que você pode entregar a um solucionador linear.

Essa é a grande vantagem de trabalhar no espaço de variância total em uma grade: as condições de não arbitragem que seriam não lineares em volatilidade implícita tornam-se lineares em variância total. Todo o problema de construção da superfície permanece no domínio da programação linear.

A programação linear encontra a resposta

Reúna todas as peças: valores dos nós como incógnitas, limites de bid/ask como restrições de caixa, não arbitragem como desigualdades lineares, suavidade como objetivo. O conjunto todo é um programa linear.

Um LP tem uma propriedade crucial: sem mínimos locais. A região viável é um politopo convexo, e o ótimo está sempre em um vértice. Diferentemente da calibração do SVI (que é não linear e pode ficar presa em mínimos locais dependendo da inicialização), o LP sempre encontra o ótimo global.

As cotações bid/ask definem restrições de caixa: em cada strike observado, a variância total deve ficar entre os valores implícitos pelo bid e pelo ask. Quanto mais apertado o spread, menor a caixa. Quanto mais largo o spread, mais liberdade o SANOS tem para encontrar uma superfície suave e livre de arbitragem.

Região viável do LP
Ativas: 0/8
Nenhuma restrição ainda. Clique em "+ Adicionar restrição" para reduzir a região viável.

Observe a região viável (verde) encolher à medida que as restrições são adicionadas. Positividade, calendar, butterfly e bid/ask — cada uma elimina superfícies impossíveis. A solução do LP (ponto amarelo) fica em um vértice do politopo final. Esse vértice tem garantia de ser a superfície mais suave, livre de arbitragem e consistente com todos os dados.

A formulação do LP
minimise |second differences| (smoothness)
subject to: bid_i w_i ask_i (data)
w(K, T_2) w(K, T_1) (calendar)
w(K-1) - 2w(K) + w(K+1) 0 (butterfly)
Toda restrição é linear. O objetivo é linear (usando a norma L1 sobre as segundas diferenças). Solvers de LP padrão resolvem isso em milissegundos, mesmo para grades grandes.

Quando o SANOS ganha e quando não ganha

O SANOS não é universalmente melhor que os modelos paramétricos. Ele tem um ponto ideal específico, e saber quando usá-lo importa mais do que saber como ele funciona.

O SANOS ganha quando:

Dados esparsos. Quando você tem 5 cotações e precisa de uma superfície completa, os modelos paramétricos sofrem porque não há pontos suficientes para determinar os parâmetros. O SANOS consegue construir uma superfície a partir de dados esparsos porque as próprias restrições de não arbitragem fornecem informação — elas estreitam o conjunto viável mesmo sem cotações de mercado.

Spreads bid/ask largos. Ajustes paramétricos aos preços médios podem produzir superfícies livres de arbitragem que ficam fora do bid/ask. O SANOS trata o spread como uma característica, não como ruído. Quanto mais largo o spread, mais liberdade para encontrar uma superfície suave e livre de arbitragem.

Características locais. Saliências de vol impulsionadas por eventos, dobras causadas por posicionamento concentrado, efeitos específicos de um vencimento. Qualquer estrutura que uma fórmula de cinco parâmetros não consegue expressar.

Ajuste bid-ask: preço médio vs SANOS
Spread:12%
Faixa bid-askAjuste ao preço médioAjuste SANOS

Aumente o slider de spread e veja o ajuste SANOS (verde) divergir do preço médio (laranja tracejado). Ambos passam pelas barras de bid/ask, mas o SANOS usa a liberdade extra para se manter mais suave. Quando os spreads são apertados, os dois ajustes convergem.

O SANOS perde quando:

Sem interpretação dinâmica. Os parâmetros do SVI (a, b, rho, m, sigma) têm significados econômicos: variância geral, magnitude do skew, correlação, deslocamento. Os nós do SANOS são apenas números em uma grade. Você perde a capacidade de dizer "o skew aumentou 0.02" — só pode dizer "esses 20 nós se moveram".

Armazenamento e comunicação. Uma superfície SVI são 5 números por vencimento — trivialmente armazenável e transmissível. Uma superfície SANOS são centenas de valores de nós. Para bancos de dados, caches e protocolos de rede, isso importa.

Histórico comprovado em batalha. O SVI é usado há mais de 20 anos. O SANOS é mais recente. Em sistemas de produção onde confiabilidade e familiaridade da equipe importam, esse é um custo real.

O padrão prático: use o SANOS para ajuste e precificação (onde a precisão local importa) e o SVI para armazenamento e comunicação (onde a compacidade importa). Eles se complementam.

Para onde ir em seguida:

Parametrização SVI — o modelo paramétrico que o SANOS foi projetado para complementar

Modelo SABR — um modelo de vol estocástica com interpretação dinâmica

Vol Local do zero — como a superfície de vol local é extraída da volatilidade implícita

Métodos de Interpolação — todos os métodos comparados