← Voltar aos artigos
July 25, 2026
5 min read

Impermanent Loss e LVR: a verdadeira matemática da lucratividade do LP

Impermanent Loss e LVR: a verdadeira matemática da lucratividade do LP
#defi
#amm
#impermanent loss
#lvr
#uniswap
#market making
#volatility
#quant

Fornecer liquidez parece um produto de rendimento e comporta-se como um livro de opções curtas. O APR principal num painel de controlo de pool é um número bruto: ele conta as taxas que entram e ignora silenciosamente os dois custos que saem — a divergência entre o que a sua posição se torna e o que você depositou (perda impermanente), e o sangramento mais constante e sorrateiro para os arbitradores que aproveitam as suas cotações desatualizadas em cada movimento de preço (perda-versus-rebalanceamento). Se a contabilidade estiver correta, todo o negócio se resume a uma desigualdade: o fluxo de taxas compensa o custo da posição impulsionado pela volatilidade? Se estiver errada, você é um vendedor sistemático de variância que se esqueceu de precificar a variância.

Este artigo é o seguimento prometido de Uniswap v3 para quants, que terminou nomeando a perda-versus-rebalanceamento e apontando para cá. Construímos o cálculo de lucratividade a partir dos primeiros princípios: a forma fechada para a perda impermanente num pool de produto constante, por que a liquidez concentrada é IL alavancada, o resultado LVR σ²/8 e a decomposição exata de PnL que ele permite, como a marcação por bloco mede a seleção adversa empiricamente, e a condição de equilíbrio — uma comparação de taxa versus volatilidade — que lhe diz quando uma posição de LP é realmente +EV em comparação com simplesmente manter os tokens.

O invariante de produto constante e o nascimento da perda impermanente

Um pool Uniswap v2 mantém reservas xx do token de risco e yy do numerário e impõe xy=kx \cdot y = k em cada negociação. O preço marginal do ativo de risco é P=y/xP = y/x. Como kk é conservado, as reservas a qualquer preço PP são fixadas:

x(P)=kP,y(P)=kP.x(P) = \sqrt{\frac{k}{P}}, \qquad y(P) = \sqrt{kP}.

Comece no preço p0p_0 com reservas (x0,y0)(x_0, y_0) e deixe o preço flutuar para pp. A posição do LP vale, marcada ao novo preço,

VLP(p)=x(p)p+y(p)=kp+kp=2kp.V_{\text{LP}}(p) = x(p)\,p + y(p) = \sqrt{kp} + \sqrt{kp} = 2\sqrt{kp}.

Se você tivesse simplesmente mantido os tokens depositados em vez de agrupá-los, você valeria

VHODL(p)=x0p+y0=k/p0  p+kp0.V_{\text{HODL}}(p) = x_0\,p + y_0 = \sqrt{k/p_0}\;p + \sqrt{kp_0}.

Defina a razão de preço r=p/p0r = p/p_0. Divida, e k\sqrt{k} e p0\sqrt{p_0} se cancelam limpa e completamente, deixando a perda impermanente como uma função apenas da razão de preço:

IL(r)=VLPVHODL1=2r1+r1.\text{IL}(r) = \frac{V_{\text{LP}}}{V_{\text{HODL}}} - 1 = \frac{2\sqrt{r}}{1 + r} - 1.

Esse é o objeto inteiro. É negativo para cada r1r \neq 1 e zero apenas quando o preço retorna ao ponto de entrada — "impermanente" precisamente porque desaparece se o preço voltar. Duas propriedades valem a pena internalizar.

É simétrico em preço logarítmico. Substitua r1/rr \to 1/r: a expressão permanece inalterada, porque 21/r1+1/r=2r1+r\frac{2\sqrt{1/r}}{1 + 1/r} = \frac{2\sqrt r}{1 + r}. Uma duplicação e uma redução pela metade prejudicam de forma idêntica. Concretamente, um movimento de 2× (r=2r=2) e um movimento de −50% (r=0.5r = 0.5) ambos resultam em

IL=2231=5.72%.\text{IL} = \frac{2\sqrt 2}{3} - 1 = -5.72\%.

A simetria é mais clara quando se escreve a razão de preços em logaritmos. Com u=lnru = \ln r, uma pequena manipulação colapsa a IL numa secante hiperbólica:

IL(r)=sech ⁣(12lnr)1    (lnr)28(small moves),\text{IL}(r) = \operatorname{sech}\!\left(\tfrac{1}{2}\ln r\right) - 1 \;\approx\; -\frac{(\ln r)^2}{8}\quad(\text{small moves}),

o que torna explícita a forma quadrática no retorno logarítmico: perto do preço de entrada, a IL cresce com o quadrado do movimento do preço logarítmico — a assinatura de um payoff de gama curta, e a razão pela qual permanece negligenciável para pequenas oscilações e morde forte nas tendências.

Razão de preço rr Movimento IL vs HODL
0.50 −50% −5.72%
0.70 −30% −1.57%
0.90 −10% −0.14%
1.00 estável 0.00%
1.10 +10% −0.11%
1.50 +50% −2.02%
2.00 −5.72%
4.00 −20.0%

Perda impermanente como função da razão de preço, curva simétrica em forma de U zero no preço de entrada e acentuando-se com movimentos maiores

Os números parecem pequenos até você se lembrar do que eles medem: IL é a lacuna em relação à manutenção, e é realizada apenas em relação a esse benchmark. Um token que quadruplica deixa o LP com um grande lucro em termos de dólares — apenas 20% menos do que se ele tivesse mantido. IL não é uma perda que você sente; é um custo de oportunidade que você precisa ser pago para suportar. O fluxo de taxas é esse pagamento. Se é suficiente, é o resto deste artigo.

Liquidez concentrada é perda impermanente alavancada

Uniswap v3 permite que um LP confine capital a um intervalo de preços [pa,pb][p_a, p_b]. Dentro do intervalo, a posição comporta-se exatamente como um pool v2 — a mesma curva de ligação — mas usando apenas as reservas necessárias para cobrir essa banda (a construção de reserva virtual derivada no artigo de mecânica v3). A consequência para a IL é nítida, e resulta de uma linha de álgebra.

Escreva s=ps = \sqrt p. Uma posição v3 com liquidez LL em [pa,pb][p_a, p_b], iniciada no preço p0p_0 e ainda dentro do intervalo em pp, detém x(p)=L(1/p1/pb)x(p) = L(1/\sqrt p - 1/\sqrt{p_b}) e y(p)=L(ppa)y(p) = L(\sqrt p - \sqrt{p_a}). Calcule o seu valor menos o valor HODL dos seus próprios tokens iniciais, e tudo o que envolve pap_a e pbp_b cancela:

VLP(p)VHODL(p)=L(pp0)2p0.V_{\text{LP}}(p) - V_{\text{HODL}}(p) = -\,L\,\frac{\left(\sqrt p - \sqrt{p_0}\right)^2}{\sqrt{p_0}}.

Esta é a mesma perda de divergência absoluta que um pool v2 com o idêntico LL — os limites do intervalo não aparecem. Então, de onde vem a dor extra? Do capital. A concentração em [pa,pb][p_a, p_b] permite que os mesmos dólares suportem um LL muito maior. Para um intervalo geometricamente centrado no preço de entrada, o fator de amplificação é exatamente

Λ=11pa/pb4,\Lambda = \frac{1}{1 - \sqrt[4]{p_a/p_b}},

o multiplicador de "eficiência de capital" v3. Uma posição de alcance total tem Λ=1\Lambda = 1; um alcance de 0.5p00.5p_0 a 2p02p_0Λ3.4\Lambda \approx 3.4; uma banda [2700,3300][2700, 3300] em torno de p0=3000p_0 = 3000 (±10%) dá Λ20.4\Lambda \approx 20.4. Como a perda absoluta escala com LL e capital igual compra Λ\Lambda vezes mais LL, a IL fracionária escala da mesma forma:

ILv3    ΛILv2(while in range).\text{IL}_{v3} \;\approx\; \Lambda \cdot \text{IL}_{v2}\quad(\text{while in range}).

Considere essa posição de ±10%, entrada de $3.000, e aumente o preço. Os números v2 da tabela acima são multiplicados por ~20:

Preço Movimento IL v2 IL v3 (Λ ⁣ ⁣20.4\Lambda\!\approx\!20.4)
3.150 +5% (dentro do intervalo) −0.030% −0.61%
3.300 +10% (no limite superior) −0.11% −2.32%

Um movimento de 10% que custa a um LP de gama completa onze pontos base custa ao LP concentrado 2,3% em comparação com a manutenção. E piora no limite, porque a gama tem uma segunda aresta que a fórmula acima esconde: uma vez que o preço cruza pbp_b, a posição é 100% numerário, deixa de gerar taxas e a sua divergência congela na composição do limite. O LP concentrado vendeu totalmente o ativo de risco na subida e agora observa qualquer outra subida sem ele — a cauda de short-straddle, bloqueada, com o fluxo de prémio desligado. A concentração é alavancagem tanto no rendimento das taxas quanto na perda, mais uma dependência do caminho — tempo gasto na gama — que a escala ingénua ΛILv2\Lambda \cdot \text{IL}_{v2} não capta.

Valor da posição v3 concentrada versus uma posição v2 de gama completa em relação ao preço, mostrando a divergência amplificada dentro da gama e a composição de limite congelada

LVR: a perda que não se pode culpar o mercado

A perda impermanente mede o LP em relação a um HODLer passivo, e esse benchmark introduz silenciosamente o risco de mercado: a maior parte do que "IL vs HODL" lhe cobra é apenas a exposição direcional que você teria carregado de qualquer forma ao possuir os tokens. A decomposição mais precisa — aquela que isola o custo que é específico de ser um AMM — é a perda-versus-rebalanceamento (LVR), de Milionis, Moallemi, Roughgarden e Zhang, Automated Market Making and Loss-Versus-Rebalancing (arXiv:2208.06046).

A ideia é comparar o LP não com a manutenção, mas com uma carteira de rebalanceamento que detém, a cada instante, as mesmas quantidades exatas de tokens que o pool — mesmo delta, mesma exposição ao mercado — mas negocia ao preço de mercado externo sem atrito em vez de contra a própria curva de ligação do pool. Ambas as carteiras carregam risco de preço idêntico, então subtrair uma da outra cancela o ruído de mercado completamente e deixa apenas o custo estrutural de ser o AMM: o dinheiro que o pool perde porque os arbitradores, não o LP, capturam cada movimento de preço. Esse resíduo é o LVR.

Modele o preço externo como movimento browniano geométrico com volatilidade σ\sigma. O resultado central do artigo — que os autores chamam de "fórmula Black–Scholes para AMMs" — é que o LVR acumula-se como um desvio determinístico e não negativo:

(P)=σ2P22x(P),\ell(P) = \frac{\sigma^2 P^2}{2}\,\big|x'(P)\big|,

onde x(P)x(P) é a detenção de ativos de risco do pool como uma função do preço e x(P)<0x'(P) < 0 (o AMM vende o ativo de risco à medida que o seu preço sobe). Para o pool de produto constante, x(P)=L/Px(P) = L/\sqrt P, então x(P)=12LP3/2|x'(P)| = \tfrac{1}{2}L P^{-3/2}, e como o valor do pool é V=2LPV = 2L\sqrt P, a taxa como uma fração do valor do pool colapsa para uma constante:

V=σ28.\frac{\ell}{V} = \frac{\sigma^2}{8}.

Essa é a famosa σ²/8. É agnóstica a taxas e agnóstica a inventário: um pool de produto constante perde σ2/8\sigma^2/8 do seu valor por unidade de tempo para arbitragem, ponto final. Com 5% de volatilidade diária, isso são 0.052/83.10.05^2/8 \approx 3.1 pontos base todos os dias — aproximadamente 11% do valor do pool por ano — antes que um único dólar de taxas seja contabilizado. Para uma posição concentrada, a mesma lógica dá /VΛσ2/8\ell/V \approx \Lambda\,\sigma^2/8 enquanto estiver dentro do intervalo: a alavancagem que amplificou a IL amplifica o LVR pelo mesmo fator idêntico.

Por que o LVR é a unidade de conta correta, e o IL não é, resume-se a uma propriedade: a diferença LP-menos-rebalanceamento tem volatilidade zero. É um puro desvio previsível,  ⁣dt-\!\int \ell\,dt. Isso significa que o risco de preço é totalmente hedgeável — replique a carteira de rebalanceamento com um hedge delta dinâmico e o que resta é determinístico. A verdadeira economia do LP é, portanto,

LP PnLrealized=Rebalancing PnLhedgeable market risk  +  Fees    dtLVR    gas.\underbrace{\text{LP PnL}}_{\text{realized}} = \underbrace{\text{Rebalancing PnL}}_{\text{hedgeable market risk}} \;+\; \text{Fees} \;-\; \underbrace{\textstyle\int \ell\,dt}_{\text{LVR}} \;-\; \text{gas}.

Se você se proteger do primeiro termo, o LP fica com taxas − LVR − gás — uma posição de variância curta cujo carry é o fluxo de taxas e cujo custo é um sangramento contínuo, previsível e impulsionado pela volatilidade. Este é exatamente o trade-off gama-theta de um livro de opções curtas: LVR é o custo gama 12Γσ2P2\tfrac{1}{2}\Gamma\sigma^2P^2, as taxas são o theta que você coleta, e a analogia com precificação de opções Black–Scholes é estrutural, não decorativa. É também a mesma tensão de seleção adversa versus spread que Avellaneda–Stoikov formalizam para formadores de mercado de livro de ordens, com o nível de taxa do pool desempenhando o papel do spread cotado.

Um refinamento mantém a honestidade do enquadramento. O σ²/8 limpo assume arbitragem contínua e sem custos. Na realidade, o próprio nível de taxa cria uma banda sem arbitragem — os arbitradores só negociam quando um movimento de preço excede a taxa — então o LVR realizado é menor do que o valor sem atrito, e as taxas têm dupla função: pagam-lhe e alargam a banda que o protege. A versão discreta e consciente das taxas é desenvolvida no artigo de acompanhamento Automated Market Making and Arbitrage Profits in the Presence of Fees (Milionis, Moallemi, Roughgarden, 2023); trate o σ²/8 contínuo como um limite superior para o sangramento.

Decomposição do PnL do LP ao longo do tempo: componente de rebalanceamento hedgeável, acumulação positiva de taxas e o desvio LVR monotónico que puxa o líquido abaixo do benchmark de rebalanceamento

Markout: medindo a seleção adversa bloco a bloco

LVR é um teorema sobre uma difusão. A sombra empírica que projeta em preenchimentos reais é o markout, e é assim que se mede a seleção adversa numa posição ativa sem qualquer modelo de volatilidade.

O markout avalia um preenchimento em relação a um preço de referência "justo" algum horizonte Δ\Delta depois. Para um provedor de liquidez passivo, cada troca que negocia contra o seu intervalo é um preenchimento que você não escolheu — o tomador escolheu-o, e escolheu-o porque era bom para ele. Defina o markout do LP num preenchimento como a mudança de inventário assinada vezes o movimento de preço subsequente:

markoutΔ=Δq(Pt+ΔPfill),\text{markout}_\Delta = \Delta q \cdot \left(P_{t+\Delta} - P_{\text{fill}}\right),

onde Δq\Delta q é a quantidade de ativos de risco que o LP adquiriu na negociação (negativa quando o LP vendeu). O fluxo informado e tóxico torna isso sistematicamente negativo: o pool compra o ativo de risco de um vendedor que está certo, pouco antes da queda do preço, e vende para um comprador que está certo, pouco antes da sua subida. Em média, ao longo de muitas negociações, o LP está do lado errado do próximo tick — o que é precisamente o LVR realizado uma troca de cada vez.

Medido por bloco, isso se torna uma métrica limpa de seleção adversa: pegue a mudança líquida de inventário do LP em um bloco e marque-a contra o preço um ou alguns blocos depois. Agregado ao longo da vida de uma posição, a soma dos markouts por bloco é o LVR empírico. A razão pela qual isso importa é que o número do markout geralmente é feio. Os estudos empíricos de grandes amostras — começando com a análise de Loesch, Hindman, Richardson e Welch de 2021 das posições Uniswap v3 (o estudo Topaze Blue / Bancor) e reforçados pelos painéis de quantificação de LVR que se seguiram — descobriram que uma grande fração dos LPs v3, em muitos pools importantes, cerca de metade ou mais, teve um desempenho inferior ao de simplesmente manter os tokens uma vez que o IL e a seleção adversa foram compensados pelas taxas. Cartea, Drissi e Monga formalizam a mesma quantidade para liquidez concentrada como "perda previsível", chegando ao mesmo desvio escalado pela volatilidade por um caminho diferente.

A conclusão prática para um LP que monitoriza um livro ativo: o APR da taxa é um número bruto; taxas + markout é o líquido. Uma posição pode mostrar um rendimento de taxa saudável e um markout profundamente negativo, e a soma é o que você realmente ganhou. Os arbitradores que realizam esse markout contra você são os mesmos pesquisadores perfilados no artigo sobre MEV e mempool — um backrun contra uma cotação AMM desatualizada após cada movimento do oráculo é a extração de LVR, bloco a bloco, e é o lado benigno e corretor de preços do espectro MEV, mesmo sendo o lado tóxico do seu PnL.

Curva de markout cumulativa para uma posição LP passiva que se torna negativa ao longo de blocos sucessivos, ilustrando a seleção adversa realizada contra o fluxo de arbitragem

Quando o LPing realmente supera a manutenção

Colapse tudo para a decisão que serve. Proteja o risco de mercado e uma posição de LP é +EV contra seu benchmark exatamente quando a taxa de receita de taxas compensa a taxa de LVR:

fτfee yield / unit time  >  σ28LVR / unit time,\underbrace{f \cdot \tau}_{\text{fee yield / unit time}} \;>\; \underbrace{\frac{\sigma^2}{8}}_{\text{LVR / unit time}},

onde ff é o nível de taxa do pool e τ\tau é o volume de negócios — volume de negociação dividido por TVL, por unidade de tempo. Reorganizada, a condição é uma comparação de duas volatilidades. O fluxo de taxas implica uma volatilidade de equilíbrio

σ=8fτ,\sigma^\ast = \sqrt{8 f \tau},

e o LP ganha sempre que a volatilidade realizada for inferior a ela. Esta é a versão do AMM de implícita versus realizada: o pool cota uma volatilidade implícita através do seu rendimento de taxas, e fornecer liquidez é vender variância a esse nível. Alguns pontos de referência trabalhados (volume de negócios claramente hipotético, escolhido para ser representativo de pools ativos):

  • Pool de 0,05%, volume de negócios 1,0/dia (volume ≈ TVL diário): σ=80.00051.06.3%\sigma^\ast = \sqrt{8 \cdot 0.0005 \cdot 1.0} \approx 6.3\% diário. Abaixo de ~6,3% de volatilidade diária realizada, o LP está à frente.
  • Pool de 0,30%, volume de negócios 0,2/dia: σ=80.0030.26.9%\sigma^\ast = \sqrt{8 \cdot 0.003 \cdot 0.2} \approx 6.9\% diário.
  • Stablecoin / par correlacionado, σ0.2%\sigma \approx 0.2\% diário: LVR é σ2/85×107\sigma^2/8 \approx 5\times10^{-7} por dia — essencialmente nada, porque o LVR escala com o quadrado da volatilidade. Quase qualquer rendimento de taxa o compensa.

Essa dependência quadrática é toda a estratégia em um único fato. Reduzir pela metade a volatilidade do par reduz o sangramento em um quarto, enquanto o rendimento das taxas não é afetado. É por isso que a vantagem duradoura do LP reside em pares de baixa σ — pares de stablecoin, pares de token de staking líquido/ETH e outros pares fortemente correlacionados — e por que o LPing de pares voláteis é uma aposta de que as taxas são extraordinárias ou que você pode proteger e reequilibrar mais rápido do que o pool sangra.

import numpy as np

def breakeven_daily_vol(fee_tier: float, turnover: float) -> float:
    """Daily volatility at which fee income exactly offsets v2 (or in-range v3) LVR.
    fee_tier: pool fee as a fraction (0.0005 = 0.05%).
    turnover: daily trading volume / TVL."""
    daily_fee_yield = fee_tier * turnover
    return np.sqrt(8 * daily_fee_yield)

def lp_is_plus_ev(fee_tier, turnover, sigma_forecast) -> bool:
    """LP beats the rebalancing benchmark iff forecast vol < break-even vol."""
    return sigma_forecast < breakeven_daily_vol(fee_tier, turnover)

sigma_star = breakeven_daily_vol(0.0005, 1.0)   # ~0.063  (6.3%/day)
lp_is_plus_ev(0.0005, 1.0, sigma_forecast=0.045)  # 4.5% forecast -> True

O único input em que toda a decisão se baseia é σ\sigma — não a volatilidade realizada do mês passado, mas uma previsão da volatilidade realizada durante o período de detenção, que é exatamente um problema de previsão de volatilidade. Uma previsão de volatilidade GARCH para um dia à frente inserida em σ\sigma^\ast transforma "este pool paga o suficiente" num sinal em tempo real e atualizável: LP quando a previsão está abaixo do ponto de equilíbrio, afaste-se quando uma mudança de regime de volatilidade a empurra para cima.

A concentração não altera a razão enquanto você está dentro do intervalo — ela multiplica o rendimento da taxa e o LVR pelo mesmo Λ\Lambda, então a desigualdade taxa-versus-vol é invariante em escala dentro do intervalo. O que ela muda é tudo ao redor das bordas: um intervalo apertado passa menos tempo dentro do intervalo (sem taxas, IL congelado quando fora), e exige rebalanceamento ativo cujos custos de gás e markout de reentrada são custos reais. Portanto, a regra honesta para intervalos apertados é estreita: justifique-os apenas quando sua previsão de vol realizada for baixa em relação à largura do intervalo, ou quando você estiver gerenciando e protegendo ativamente a posição em vez de configurá-la e esquecê-la. A mecânica desse gerenciamento ativo — gatilhos de rebalanceamento, hedge delta do inventário em mudança do pool e transformação do carry de taxas − LVR em uma estratégia protegida — são o assunto do artigo complementar sobre estratégias de LP e hedge do Uniswap v3.

O que levar

  • A perda impermanente tem uma forma fechada, IL(r)=2r1+r1=sech(12lnr)1\text{IL}(r) = \frac{2\sqrt r}{1+r} - 1 = \operatorname{sech}(\tfrac12\ln r) - 1, simétrica em preço logarítmico (um movimento de 2× e um de −50% custam ambos 5,72%) e quadrática no retorno logarítmico perto da entrada — a impressão digital de um payoff de gama curta.
  • A liquidez concentrada é IL alavancada. A perda de divergência absoluta permanece inalterada para um dado LL, mas capital igual implanta Λ=1/(1pa/pb4)\Lambda = 1/(1-\sqrt[4]{p_a/p_b}) vezes mais LL, então tanto a IL quanto as taxas escalam por Λ\Lambda — e a posição congela no ativo perdedor assim que o preço sai do intervalo.
  • LVR é a perda que sobrevive à proteção. Comparado a uma carteira de rebalanceamento, um pool de produto constante perde σ2/8\sigma^2/8 de valor por unidade de tempo, independentemente das taxas; o PnL protegido do LP é taxas − LVR − gás, um carry de variância curta.
  • Markout é o LVR medido em preenchimentos reais. O markout por bloco quantifica a seleção adversa diretamente, e o registro empírico mostra que uma grande parte dos LPs v3 são líquidos negativos em relação à manutenção, uma vez que é contabilizado. O APR da taxa é bruto; taxas + markout é líquido.
  • A decisão é uma desigualdade. Um LP supera seu benchmark quando o rendimento da taxa excede σ2/8\sigma^2/8, ou seja, quando a volatilidade realizada cai abaixo do ponto de equilíbrio implícito na taxa σ=8fτ\sigma^\ast = \sqrt{8f\tau}. Como o LVR escala com σ2\sigma^2, a vantagem reside em pares correlacionados de baixa volatilidade — e o input que decide isso é uma previsão de volatilidade.

Referências

  • Milionis, J., Moallemi, C. C., Roughgarden, T., Zhang, A. L. (2022). Automated Market Making and Loss-Versus-Rebalancing. arXiv:2208.06046.
  • Milionis, J., Moallemi, C. C., Roughgarden, T. (2023). Automated Market Making and Arbitrage Profits in the Presence of Fees. arXiv:2305.14604.
  • Loesch, S., Hindman, N., Richardson, M. B., Welch, N. (2021). Impermanent Loss in Uniswap v3. Topaze Blue / Bancor.
  • Cartea, Á., Drissi, F., Monga, M. (2023). Decentralised Finance and Automated Market Making: Predictable Loss and Optimal Liquidity Provision. SSRN / arXiv.
  • Adams, H., Zinsmeister, N., Salem, M., Keefer, R., Robinson, D. (2021). Uniswap v3 Core (whitepaper).
  • Fan, Z., Marmolejo-Cossío, F., Moroz, D., Neuder, M., Rao, R., Parkes, D. C. (2022). Strategic Liquidity Provision in Uniswap v3. arXiv:2106.12033.
blog.disclaimer

Authors

Eugen Soloviov
Eugen Soloviov

Trading-systems engineer

Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.

Newsletter

Fique à frente do mercado

Assine nossa newsletter para insights exclusivos sobre trading com IA, análises de mercado e atualizações da plataforma.

Respeitamos sua privacidade. Cancele a inscrição a qualquer momento.