> For the complete documentation index, see [llms.txt](https://docs.pancakeswap.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pancakeswap.finance/portuguese-brazilian/bem-vindo-ao-pancakeswap/how-to-guides/v3-v2-migration/how-v3-apr-is-calculated.md).

# Como o APR do v3 é calculado

{% hint style="info" %}
No V3 de Liquidez e Farms, com a nova liquidez não fungível e a capacidade de intervalo de preços personalizável. Cada posição LP terá seu próprio APR de taxa LP e de farming de CAKE.
{% endhint %}

O APR total é composto pelo APR de taxa LP e pelo APR de recompensa de CAKE

### Taxa LP

Teoricamente falando, dado um intervalo de preços e a liquidez que o usuário está prestes a adicionar, podemos estimar a taxa esperada para os próximos 7 dias da seguinte forma

$$
fee\_{next7d} = fee\_{in} \frac{\Delta{L}}{L\_{in} + \Delta{L}}
$$

* $$fee\_{in}$$ : Valor de taxa acumulado no intervalo de preços especificado pelo usuário nos últimos 7 dias
* $$L\_{in}$$: Liquidez atual no intervalo de preços especificado pelo usuário
* $$\Delta{L}$$: Liquidez que o usuário quer adicionar ao intervalo de preços

#### Taxa no intervalo

Para $$fee\_{in}$$, usamos os dados históricos de volume de negociação, nível de taxa e dados históricos de preços para estimar o preço no intervalo

$$fee\_{in} = f\_tV\_{7d}\frac{T\_{in}}{T\_{7d}}$$

* $$f\_t$$: Nível de taxa
* $$V\_{7d}$$: Volume total de negociação dos últimos 7 dias
* $$T\_{in}$$: Duração, medida em segundos, dos preços permanecendo dentro do intervalo de preços nos últimos 7 dias
* $$T\_{7d}$$: 7 dias medidos em segundos

### APR de CAKE

#### Alocação do Pool

A recompensa total de CAKE por segundo no MC v3 usando upkeep pode ser derivada por `latestPeriodCakePerSecond`

`cakePerSecond = lastestPeriodCakePerSecond / 1e12 / 1e18`

Em cada pool, podemos usar `poolInfo` para obter o `poolWeight` dividindo `poolInfo.allocPoint / totalAllocPoint`

#### APR Global de CAKE

APR global calculado usando o total de liquidez ativa e em Staking com as emissões de recompensa de CAKE do pool.

`APR (global) = (cakePerSecond * 31536000) / (totalAllocPoint / pool.allocPoint) * 100 * cakeUSD / totalStakedLiquidityUSD`

`totalStakedLiquidityUSD` representa a liquidez total ativa em Staking do pool atual em USD, composta por todos os ticks de posição dentro do intervalo em Staking no MasterChef v3.

#### APR de CAKE por Posição

Os APRs para posições individuais podem variar dependendo das configurações de intervalo de preços.

$$
ARP\_p = {\frac{USD\_{r}}{USD\_{p}}} {\frac{L\_{p}}{L\_{lm}}}
$$

* $$USD\_r$$: Recompensa de CAKE ganha em USD por ano no pool
* $$USD\_p$$: Valor total em USD na posição
* $$L\_{p}$$: Liquidez da posição
* $$L\_{lm}$$: Liquidez total de Staking rastreada pelo LMPool


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.pancakeswap.finance/portuguese-brazilian/bem-vindo-ao-pancakeswap/how-to-guides/v3-v2-migration/how-v3-apr-is-calculated.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
