Broken wing butterfly: borboleta assimétrica
Como montar a broken wing butterfly em opções: três strikes, um lado sem risco e a conta do financiamento feita com IV e delta reais de uma cadeia americana.
A broken wing butterfly, ou borboleta de asa quebrada, é uma trava de três strikes no mesmo vencimento em que uma das asas foi empurrada para longe do corpo. A montagem clássica é compra 1, venda 2, compra 1, com as duas asas à mesma distância. Aqui a compra de fora vem de um strike mais distante e mais barato, o que melhora o caixa da entrada e, quando esse caixa fica positivo, apaga a perda de um dos lados no vencimento. O preço da troca fica todo do lado largo, e é lá que mora a perda máxima.
Da borboleta simétrica para a broken wing butterfly
A trava borboleta simétrica de calls tem três pernas: compra 1 call no strike mais baixo, vende 2 calls no strike do meio, compra 1 call no strike de cima, tudo no mesmo vencimento e com as duas asas equidistantes do corpo. Ela entra por débito, o prejuízo máximo é o débito pago e o melhor resultado aparece com a ação parada no strike do meio no dia do vencimento.
Quebrar a asa é mexer em um parâmetro só. A compra de cima vai para um strike mais afastado do corpo do que a compra de baixo. Esse strike custa menos, então o caixa da montagem melhora, e o desenho do vencimento sobe inteiro do lado de baixo: abaixo da asa baixa as três pernas viram pó e o que resta é o caixa da entrada. Em compensação, a venda dupla passa a ter espaço descoberto entre o corpo e a asa alta, e esse espaço é a perda máxima da estrutura.
Em termos de peças, a asa quebrada é uma trava de alta comprada colada numa trava de alta vendida mais larga. Se essa linguagem de débito e crédito ainda não está firme, trava de crédito e trava de débito destrincha as duas. A comparação entre as estruturas simétricas de quatro pernas está em iron condor e iron butterfly, e a parente mais próxima, com mais vendas do que compras, em ratio spreads. Esta página fica só na variante assimétrica.
Por que um brasileiro monta isso numa cadeia americana
Quem já opera opções na B3 conhece o formato do livro por lá. A liquidez de opções de ações se concentra num punhado de papéis, dentro deles em poucos strikes ao redor do dinheiro, e quase toda no vencimento mais curto. Para uma trava de duas pernas isso basta. Uma estrutura de três strikes precisa de outra coisa: uma grade contínua, com preço dos dois lados em cada degrau, inclusive a 15 ou 20 dólares do dinheiro, que é exatamente onde a asa quebrada vai buscar a compra barata. Sem esse strike a asa não quebra. Com ele negociando por aproximação, o financiamento que aparecia na planilha some na entrada e na saída.
O painel abaixo conta, numa única sessão, quantos strikes distintos de AAPL tiveram negócio em cada vencimento dos quatro meses seguintes, e quantos deles passaram de 500 contratos.
| dias_ate_vencimento | strikes_negociados | strikes_liquidos |
|---|---|---|
| 3 | 30 | 15 |
| 5 | 39 | 12 |
| 6 | 69 | 30 |
| 10 | 35 | 2 |
| 12 | 29 | 0 |
| 14 | 48 | 10 |
| 20 | 32 | 8 |
| 28 | 25 | 2 |
| 35 | 44 | 19 |
| 42 | 32 | 0 |
| 49 | 25 | 2 |
| 70 | 52 | 7 |
| 98 | 48 | 6 |
O SQL exato por trás de cada número
SELECT
toUInt32(days_to_expiry) AS dias_ate_vencimento,
uniqExact(strike_price) AS strikes_negociados,
uniqExactIf(strike_price, volume >= 500) AS strikes_liquidos
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 1 AND 120
GROUP BY dias_ate_vencimento
ORDER BY dias_ate_vencimentoO vencimento mais curto da lista registrou 30 strikes com negócio, dos quais 15 passaram de 500 contratos. A contagem segue na casa das dezenas mesmo nos vencimentos mais distantes da janela. Uma montagem de três pernas escolhe strikes dentro dessa grade, em vez de torcer para que o degrau exista.
Os strikes e os prêmios desta página estão em dólar, como a cadeia cota. O custo de câmbio e o IOF da remessa aparecem uma vez, na decisão de financiar a conta internacional, e ficam fora do resultado da estrutura. Misturar as duas contas embaralha a leitura de qualquer trava.
A cadeia do exemplo: volatilidade implícita e delta strike a strike
O exemplo fica fixo numa sessão: calls de AAPL na negociação de 12 de junho de 2026, no vencimento de 17/07/2026, que foi o mais negociado daquela sessão entre 20 e 75 dias de prazo. A grade abaixo traz, para cada strike múltiplo de 5 dentro de 12% do preço da ação, a volatilidade implícita e o delta do fechamento daquele dia.
| vencimento | strike_usd | iv_pct | delta |
|---|---|---|---|
| 17/07/2026 | 260 | 27.3 | 0.925 |
| 17/07/2026 | 265 | 28.2 | 0.881 |
| 17/07/2026 | 270 | 21.9 | 0.888 |
| 17/07/2026 | 275 | 23.2 | 0.815 |
| 17/07/2026 | 280 | 23.5 | 0.739 |
| 17/07/2026 | 285 | 23 | 0.657 |
| 17/07/2026 | 290 | 22.2 | 0.565 |
| 17/07/2026 | 295 | 21.7 | 0.465 |
| 17/07/2026 | 300 | 21.5 | 0.366 |
| 17/07/2026 | 305 | 21.3 | 0.275 |
| 17/07/2026 | 310 | 21.3 | 0.2 |
| 17/07/2026 | 315 | 21.6 | 0.142 |
| 17/07/2026 | 320 | 21.8 | 0.098 |
| 17/07/2026 | 325 | 22.2 | 0.068 |
O SQL exato por trás de cada número
WITH
venc AS (
SELECT expiration_date AS exp
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 75
GROUP BY expiration_date
ORDER BY sum(volume) DESC
LIMIT 1
),
marks AS (
SELECT
toFloat64(strike_price) AS strike,
avg(implied_volatility) AS iv,
avg(delta) AS dl,
avg(toFloat64(underlying_close)) AS spot,
max(expiration_date) AS venc_date
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND expiration_date IN (SELECT exp FROM venc)
AND lower(toString(option_type)) IN ('call', 'c')
AND iv_converged = 1
AND volume > 0
GROUP BY strike
)
SELECT
formatDateTime(toDate(venc_date), '%d/%m/%Y') AS vencimento,
round(strike, 2) AS strike_usd,
round(iv * 100, 1) AS iv_pct,
round(dl, 3) AS delta
FROM marks
WHERE modulo(toUInt32(round(strike * 100)), 500) = 0
AND abs(strike / spot - 1) < 0.12
ORDER BY strikeOs dois extremos da grade não marcam a mesma volatilidade implícita: 27.3% no strike mais baixo contra 22.2% no mais alto. O delta na mesma linha mede quanto do movimento da ação cada perna acompanha, 0.925 embaixo contra 0.068 em cima. A compra distante é sempre a perna mais barata da estrutura em dólares, e é ela que paga a quebra da asa. Para o passo a passo de leitura de strike, vencimento, prêmio e gregas, veja como ler uma cadeia de opções.
As três pernas da montagem
A asa baixa fica no múltiplo de 5 imediatamente abaixo do preço da ação. O corpo fica 5 dólares acima dela, com 2 contratos vendidos. A asa alta fica 15 dólares acima da asa baixa, o que deixa 10 dólares entre o corpo e ela, o dobro dos 5 do lado de baixo. É essa diferença de larguras que define a estrutura.
| perna | strike_usd | premio_usd | delta |
|---|---|---|---|
| compra 1 (asa baixa) | 290 | 9.3 | 0.565 |
| venda 2 (corpo) | 295 | 6.7 | 0.465 |
| compra 1 (asa alta) | 305 | 3.15 | 0.275 |
O SQL exato por trás de cada número
WITH
venc AS (
SELECT expiration_date AS exp
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 75
GROUP BY expiration_date
ORDER BY sum(volume) DESC
LIMIT 1
),
marks AS (
SELECT
toFloat64(strike_price) AS strike,
avg(toFloat64(option_close)) AS mark,
avg(delta) AS dl,
avg(toFloat64(underlying_close)) AS spot
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND expiration_date IN (SELECT exp FROM venc)
AND lower(toString(option_type)) IN ('call', 'c')
AND iv_converged = 1
AND volume > 0
GROUP BY strike
),
anchor AS (
SELECT max(strike) AS k1
FROM marks
WHERE modulo(toUInt32(round(strike * 100)), 500) = 0
AND strike <= spot
)
SELECT
multiIf(m.strike = a.k1, 'compra 1 (asa baixa)',
m.strike = a.k1 + 5, 'venda 2 (corpo)',
'compra 1 (asa alta)') AS perna,
round(m.strike, 2) AS strike_usd,
round(m.mark, 2) AS premio_usd,
round(m.dl, 3) AS delta
FROM marks AS m
CROSS JOIN anchor AS a
WHERE m.strike = a.k1
OR m.strike = a.k1 + 5
OR m.strike = a.k1 + 15
ORDER BY m.strikeNa sessão do exemplo a asa baixa saiu em US$ 290, com prêmio de US$ 9.3 e delta de 0.565. O corpo, vendido duas vezes, ficou em US$ 295 por US$ 6.7 cada. A asa alta, em US$ 305, custou US$ 3.15. É essa terceira perna, a mais barata das três, que decide se a montagem entra com crédito ou com débito.
Quanto a asa larga financia
O financiamento fica mais claro como curva do que como número solto. O painel seguinte mantém a asa baixa e o corpo no lugar e empurra só a asa alta, de 10 até 30 dólares acima da asa baixa. Para cada largura ele mostra o caixa líquido da entrada, positivo quando entra crédito, e a perda máxima do lado largo.
| largura_total_usd | caixa_liquido_usd | risco_maximo_usd |
|---|---|---|
| 10 | -0.6 | 0.6 |
| 15 | 0.95 | 4.05 |
| 20 | 2.02 | 7.98 |
| 25 | 2.72 | 12.28 |
| 30 | 3.21 | 16.79 |
O SQL exato por trás de cada número
WITH
venc AS (
SELECT expiration_date AS exp
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 75
GROUP BY expiration_date
ORDER BY sum(volume) DESC
LIMIT 1
),
marks AS (
SELECT
toFloat64(strike_price) AS strike,
avg(toFloat64(option_close)) AS mark,
avg(toFloat64(underlying_close)) AS spot
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND expiration_date IN (SELECT exp FROM venc)
AND lower(toString(option_type)) IN ('call', 'c')
AND iv_converged = 1
AND volume > 0
GROUP BY strike
),
anchor AS (
SELECT max(strike) AS k1
FROM marks
WHERE modulo(toUInt32(round(strike * 100)), 500) = 0
AND strike <= spot
)
SELECT
round(u.strike - a.k1, 0) AS largura_total_usd,
round(2 * b.mark - l.mark - u.mark, 2) AS caixa_liquido_usd,
round((u.strike - a.k1 - 10) - (2 * b.mark - l.mark - u.mark), 2) AS risco_maximo_usd
FROM anchor AS a
CROSS JOIN marks AS l
CROSS JOIN marks AS b
CROSS JOIN marks AS u
WHERE l.strike = a.k1
AND b.strike = a.k1 + 5
AND u.strike >= a.k1 + 10
AND u.strike <= a.k1 + 30
AND modulo(toUInt32(round(u.strike * 100)), 500) = 0
ORDER BY u.strikeA primeira linha é a borboleta simétrica, com 5 dólares de cada lado do corpo. O caixa líquido dela é US$ -0.6 por ação, um débito, que também é a sua perda máxima. Na largura de 15, a que este texto usa, o caixa passa para US$ 0.95 e a perda máxima do lado de cima fica em US$ 4.05. Na linha mais larga do painel, com a asa a US$ 30 da asa baixa, o caixa vai para US$ 3.21 e o risco máximo para US$ 16.79.
As duas colunas andam juntas, degrau a degrau: cada passo de largura melhora o caixa da entrada e aumenta a exposição do lado largo. Quando esse caixa fica positivo, a estrutura entra financiada e o lado de baixo do vencimento deixa de ter perda. A leitura útil não é qual linha é melhor, e sim quanto de exposição cada dólar de financiamento custa.
Onde o resultado trava no vencimento
O painel abaixo desenha o resultado das duas versões no dia do vencimento, em dólares por ação, num passeio de preço que vai de 15 dólares abaixo da asa baixa até 30 dólares acima dela.
| preco_no_vencimento_usd | asa_quebrada_usd | simetrica_usd |
|---|---|---|
| 275 | 0.95 | -0.6 |
| 277.5 | 0.95 | -0.6 |
| 280 | 0.95 | -0.6 |
| 282.5 | 0.95 | -0.6 |
| 285 | 0.95 | -0.6 |
| 287.5 | 0.95 | -0.6 |
| 290 | 0.95 | -0.6 |
| 292.5 | 3.45 | 1.9 |
| 295 | 5.95 | 4.4 |
| 297.5 | 3.45 | 1.9 |
| 300 | 0.95 | -0.6 |
| 302.5 | -1.55 | -0.6 |
| 305 | -4.05 | -0.6 |
| 307.5 | -4.05 | -0.6 |
| 310 | -4.05 | -0.6 |
| 312.5 | -4.05 | -0.6 |
| 315 | -4.05 | -0.6 |
| 317.5 | -4.05 | -0.6 |
| 320 | -4.05 | -0.6 |
O SQL exato por trás de cada número
WITH
venc AS (
SELECT expiration_date AS exp
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 75
GROUP BY expiration_date
ORDER BY sum(volume) DESC
LIMIT 1
),
marks AS (
SELECT
toFloat64(strike_price) AS strike,
avg(toFloat64(option_close)) AS mark,
avg(toFloat64(underlying_close)) AS spot
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-12'
AND expiration_date IN (SELECT exp FROM venc)
AND lower(toString(option_type)) IN ('call', 'c')
AND iv_converged = 1
AND volume > 0
GROUP BY strike
),
anchor AS (
SELECT max(strike) AS k1
FROM marks
WHERE modulo(toUInt32(round(strike * 100)), 500) = 0
AND strike <= spot
),
legs AS (
SELECT
a.k1 AS k1,
l.mark AS p_baixa,
b.mark AS p_corpo,
u.mark AS p_alta,
s.mark AS p_simetrica
FROM anchor AS a
CROSS JOIN marks AS l
CROSS JOIN marks AS b
CROSS JOIN marks AS u
CROSS JOIN marks AS s
WHERE l.strike = a.k1
AND b.strike = a.k1 + 5
AND u.strike = a.k1 + 15
AND s.strike = a.k1 + 10
),
grade AS (SELECT arrayJoin(range(0, 19)) AS passo)
SELECT
round(preco, 2) AS preco_no_vencimento_usd,
round(greatest(preco - k1, 0)
- 2 * greatest(preco - k1 - 5, 0)
+ greatest(preco - k1 - 15, 0)
+ caixa_quebrada, 2) AS asa_quebrada_usd,
round(greatest(preco - k1, 0)
- 2 * greatest(preco - k1 - 5, 0)
+ greatest(preco - k1 - 10, 0)
+ caixa_simetrica, 2) AS simetrica_usd
FROM
(
SELECT
p.k1 AS k1,
p.k1 - 15 + 2.5 * g.passo AS preco,
2 * p.p_corpo - p.p_baixa - p.p_alta AS caixa_quebrada,
2 * p.p_corpo - p.p_baixa - p.p_simetrica AS caixa_simetrica
FROM legs AS p
CROSS JOIN grade AS g
)
ORDER BY preco_no_vencimento_usdTrês leituras saem do desenho. Na ponta esquerda do passeio a linha da asa quebrada marca US$ 0.95 por ação, que é o caixa da entrada e todo o resultado daquele lado, enquanto a simétrica marca o débito que pagou. No strike vendido, US$ 295, as duas chegam ao topo, e a asa quebrada registra US$ 5.95 por ação no melhor caso. Do lado de cima, a linha da asa quebrada estaciona em US$ -4.05 por ação: passado o strike da asa alta, a compra de fora recompõe a perna vendida e o resultado para de mudar, por maior que seja a alta. A simétrica volta a US$ -0.6, o débito que ela pagou, e trava ali.
Todos esses números são por ação. Cada contrato de opção nos Estados Unidos representa 100 ações, então uma borboleta de 1 por 2 por 1 multiplica cada valor do painel por 100.
Gestão: saída, exercício antecipado e risco de pino
O desenho acima só vale no vencimento. Antes dele, o corpo vendido ainda tem valor extrínseco e a linha do resultado é bem mais achatada, o que significa que a estrutura raramente entrega o topo do gráfico antes da última semana. É também na última semana que as gregas do corpo aceleram nas duas direções. Uma prática comum é definir na entrada o ponto de saída, tanto no lucro quanto no prejuízo, e desmontar enquanto as três pernas ainda têm mercado dos dois lados.
As opções americanas de ações podem ser exercidas a qualquer momento, e a chance real disso aparece quando o valor extrínseco da opção vendida encolhe quase a zero, tipicamente na véspera de uma data ex dividendo com o corpo dentro do dinheiro. Se uma das duas vendidas for exercida, você acorda vendido em 100 ações por contrato, com as compras ainda abertas e um risco de mercado que a estrutura não tinha. O calendário dessa exposição está em datas ex dividendo e opções.
O último ponto é o pino. Se a ação fechar o vencimento colada no strike do corpo, você não sabe no fim de semana quantos dos 2 contratos vendidos foram exercidos, e a posição resultante pode ir de zero a 200 ações vendidas. O tratamento completo, incluindo os horários de corte do intermediário, está em risco de pino no vencimento. Vale lembrar que o lado sem perda da asa quebrada só existe enquanto a estrutura entrou com crédito. Montada por débito, o lado de baixo perde o débito, como na versão simétrica.
Notas de dados
Os prêmios são os fechamentos diários de cada contrato na sessão de 12 de junho de 2026, com os contratos sem negócio no dia e sem convergência de volatilidade implícita descartados. O vencimento do exemplo não é escolhido no texto: cada painel pega o vencimento com mais contratos negociados naquela sessão entre 20 e 75 dias de prazo. Nenhum desses preços é uma cotação executável. Um livro real tem diferença entre compra e venda em cada uma das três pernas, e a borboleta paga essa diferença três vezes na entrada e três vezes na saída. As contas de caixa e de resultado usam esses fechamentos, por ação, sem corretagem e sem taxas.
FAQ
O que é uma broken wing butterfly?
É uma borboleta de opções de três strikes no mesmo vencimento, com compra de 1 contrato na asa baixa, venda de 2 no corpo e compra de 1 na asa alta, em que a distância entre o corpo e a asa alta é maior que a distância entre a asa baixa e o corpo. Essa assimetria barateia a montagem e concentra todo o risco do vencimento de um lado só.
Qual a diferença para a borboleta simétrica?
A simétrica tem as duas asas à mesma distância do corpo, entra por débito e perde esse débito nas duas pontas do gráfico. A de asa quebrada troca parte desse débito por exposição: um dos lados fica sem perda quando a entrada é de crédito, e o outro carrega uma perda máxima maior, igual à diferença entre as larguras das asas menos o crédito recebido.
A broken wing butterfly tem prejuízo ilimitado?
Não. A compra da asa alta fecha a exposição da venda dupla, então a perda para de crescer assim que o preço passa desse strike. O painel de resultado mostra exatamente onde a linha estaciona. O risco ilimitado apareceria se a asa de fora não existisse, que é o caso do ratio spread descoberto.
Por que montar a estrutura numa cadeia americana em vez da B3?
Porque a montagem exige três strikes com preço firme dos dois lados no mesmo vencimento, inclusive um bem afastado do dinheiro. Na B3 a liquidez de opções de ações se concentra em poucos strikes próximos do dinheiro e no vencimento curto, que é a grade de uma trava de duas pernas, não de uma de três.
O que acontece se a ação fechar exatamente no strike vendido?
Esse é o ponto de maior resultado no gráfico e, ao mesmo tempo, o ponto de maior incerteza operacional. O exercício das opções vendidas no dinheiro é decidido depois do fechamento, então a quantidade de ações que sobra na conta na segunda-feira só fica conhecida no fim de semana.
Cada painel desta página abre o SQL exato que produziu o número. Para levantar a mesma grade em outro papel, outro vencimento ou outra largura de asa, é só pedir em português no terminal da Strasmore.