Neste artigo, vou compartilhar como criei um bot para fechar lacunas de arbitragem na Rysk Beyond Options AMM. Vou dar uma visão do que é um spread vertical, como identificar uma oportunidade de arbitragem livre de riscos e como escolher a quantidade ideal de opções que maximiza seu lucro. Ele foi usado para a competição de rede de testes e essas oportunidades de arbitragem só surgem em circunstâncias altamente irracionais; portanto, não espere que funcione com dinheiro real.
Entendendo os Spreads Verticais
Se você apenas comprar uma opção, terá um potencial de lucro ilimitado, mas se ela vencer fora do dinheiro, perderá o prêmio que pagou. Se você vender uma opção, receberá seu prêmio, mas se ela terminar dentro do dinheiro, terá algumas perdas.
O que acontece se você escolher um ativo e uma data de vencimento, comprar uma opção de compra e vender outra opção de compra a um preço de exercício mais alto? Você cria um Spread de Compra Vertical. O mesmo acontece se você comprar uma opção de venda e vender outra opção de venda para o mesmo ativo e vencimento, mas com um preço de exercício mais baixo.
Spreads Verticais: spreads verticais são uma maneira de usar opções para fazer uma aposta mais segura sobre se o preço de um token vai subir ou descer. Você faz isso usando duas opções juntas, com preços diferentes. Digamos que você pense que o preço de um token vai subir. Você pode comprar uma opção que permite comprar o token a um preço mais baixo e, ao mesmo tempo, vender outra opção que permite vender o token a um preço mais alto. Quando você usa essas duas opções juntas, cria um "spread vertical".
O benefício de um spread vertical é que ele limita os riscos. Se você comprasse apenas uma opção e o preço do token fosse na direção errada, poderia perder muito dinheiro. Mas com um spread vertical, mesmo que o preço do token não saia como você esperava, as perdas são controladas porque o ganho compensa a perda na outra ponta.
Pense nisso como jogar com inteligência, tendo uma rede de segurança ao fazer previsões sobre o preço de um token. Spreads verticais são um pouco mais avançados, mas podem ser uma ótima estratégia para gerenciar riscos.
Se os preços forem racionais quando você cria o seu spread, você comprará a um preço mais baixo e venderá a um preço mais alto, efetivamente pagando ao formador de mercado pelo potencial de ganho. Mas você sabe como é o mundo das criptomoedas: tudo, menos racional. Vamos mergulhar no mecanismo da Rysk Beyond para aprender como lucrar com isso.
Identificando oportunidades livres de risco
Rysk Beyond é um Formador de Mercado Automatizado (AMM) para opções, que calcula os preços das opções de forma algorítmica na Arbitrum, permitindo que qualquer pessoa compre e venda opções através dele. Seu principal objetivo é manter uma posição neutra em relação às mudanças de preço e evitar fazer apostas especulativas na direção dos ativos subjacentes. Em vez disso, a Rysk Beyond se esforça para estabelecer os preços das opções de forma a incentivar os traders de opções a equilibrar sua exposição. É aqui que surge nossa oportunidade.
Captura de tela do quadro de opções. Você pode ver os preços das opções de compra à esquerda e das opções de venda à direita. Estas são opções de ETH com vencimento em 25 de agosto. Fonte: app.rysk.finance.
Se alguém vender uma quantidade significativa de opções a um preço de exercício de $2000 no exemplo acima, o cofre reduzirá o prêmio para esse trade específico, visando desencorajar outros negociantes de seguir o mesmo caminho. Esse ajuste pode fazer com que tanto os preços de compra quanto de venda diminuam, levando o preço de compra de exercício de $2000 a ficar mais baixo do que o preço de venda de $2100. Quando essa anomalia ocorre, temos a oportunidade de criar um spread vertical e obter lucro!
Cada vez que o cofre compra ou vende opções, o preço muda. Ao construirmos nosso spread vertical, não é diferente. Portanto, não podemos simplesmente investir toda a nossa liquidez nesse trade, pois fazer isso empurraria os preços na direção oposta ao nosso resultado desejado. Há um limite para o quanto podemos nos envolver nesse trade enquanto ainda obtemos lucro. Para aproveitar ao máximo a situação, devemos encontrar a quantidade ideal de opções para comprar.
Encontrando o ponto ideal
O primeiro passo para encontrar a quantidade ideal de opções para comprar é entender como o preço muda em função da quantidade comprada/vendida. Isso é chamado de derrapagem (slippage), e há uma equação codificada profundamente na lógica do contrato inteligente que determina isso. A derrapagem média em uma determinada exposição inicial x específica, para opções _a _sendo negociadas, é a seguinte:
Onde t é o número de contratos que o cofre possui (longo ou curto), e g é o gradiente de derrapagem.
Essas integrais são avaliadas como:
Agora que sabemos como calcular a derrapagem, vamos formalizar a função de lucro da nossa operação:
P(a) é o lucro em função da quantidade, B é o preço de compra, a é a quantidade, L_b é a derrapagem de compra e L_s é a derrapagem de venda.
Os preços atuais de venda e compra, bem como t, x e g, são constantes (para a nossa operação) e podemos obtê-los facilmente em seu sistema. O que temos aqui é o lucro como uma função da quantidade. Como encontramos o lucro máximo para a operação? Derivando a equação e igualando a zero!
P′(a)=S⋅Ls(a)+S⋅a⋅Ls′(a)−B⋅Lb(a)−B⋅a⋅Lb′(a)
As coisas estão começando a ficar complicadas. L(a) já é uma equação longa e agora precisamos da sua derivada. Vamos usar o WolframAlpha para fazer esse trabalho mecânico por nós:
Mano, eu adoro o WolframAlpha!
Agora temos tudo o que precisamos para encontrar qual é o valor de a que maximizará nossos lucros. No entanto, encontrar a raiz dessa equação é... trabalhoso. Como proceder?
Métodos Numéricos para o Resgate
Quando encontramos uma equação que não queremos resolver analiticamente, podemos usar métodos numéricos para encontrar uma boa aproximação do valor real. Poderíamos tentar alguns valores aleatórios de a, encontrar um intervalo onde a função de lucro muda de sinal e iniciar uma busca binária para reduzir o intervalo para uma aproximação suficientemente boa. Mas isso é uma estratégia de pensamento pequeno; em vez disso, vamos usar o método de Newton:
É claro que eu colocaria o ChatGPT aqui
Nossa, precisamos da segunda derivada de L(a)
O ChatGPT me disse que precisamos de P''(a) e L''(a). Mas sabemos que não podemos confiar nele com álgebra complexa. WolframAlpha para o resgate, parte 2!
Eu já disse a você que adoro o WolframAlpha?
Certo, agora temos quase tudo o que precisamos para encontrar essa quantidade absurda de opções. Eu pedi ao ChatGPT para codificar o método de Newton para mim, como você pode ver aqui:
Em nosso caso, f é na verdade P'(a) e "fprime" é P''(a). Não vou entediá-los com todos os detalhes, mas colei todas essas longas equações da saída do WolframAlpha no GPT para traduzi-las em funções JavaScript.
É isso, pessoal! Essa função chamada newtonMethod retornará a quantidade ideal de opções para comprar, dadas algumas informações do protocolo. Com isso, você pode usar a interface deles para fechar as lacunas ou enviar transações programaticamente usando um provedor RPC.
Eu publiquei todo o código relacionado à obtenção de dados, como encontrar o spread vertical, método numérico e envio de transações no meu GitHub. Você pode encontrá-lo aqui.
Artigo escrito por Leonardo Papais. Traduzido por Marcelo Panegali.
Oldest comments (0)