---
title: "A pool and the backtest of every range it is evaluated on (1 h, 24 h, 7 d, 30 d)"
method: GET
path: "/v1/pools/{chain}/{address}"
tags: ["pools"]
---

# A pool and the backtest of every range it is evaluated on (1 h, 24 h, 7 d, 30 d)

`GET /v1/pools/{chain}/{address}`

## Request

- Base URL: `https://api.lpsignal.app`
- URL: `https://api.lpsignal.app/v1/pools/{chain}/{address}`
- Auth: none required

## Path parameters

- `chain` 'ethereum' | 'bsc' | 'base' | 'arbitrum' | 'optimism' | 'polygon' | 'robinhood', required
- `address` string, required: pool address, or a Uniswap v4 pool id

## Response `200`

OK

- object
  - `pool` object: the pool record (tokens, fee, tick spacing, TVL, …)
  - `metrics` object[]
    - `windowHours` integer
    - `rangeBp` integer: half-width of the range in basis points of price; 0 = full range
    - `tickLower` integer
    - `tickUpper` integer
    - `exact` boolean: every hour has exact (feeGrowth) fees; only exact figures fire signals
    - `feeApr` number: fees earned, annualised (a fraction: 0.42 = 42%)
    - `ilApr` number: impermanent loss vs holding, annualised (≤ 0) (a fraction: 0.42 = 42%)
    - `netApr` number: feeApr + ilApr (a fraction: 0.42 = 42%)
    - `inRangeRatio` number: share of the window the price spent in the range (a fraction: 0.42 = 42%)
    - `asOf` string, date-time

## Other responses

- `400`: invalid request
- `404`: not found

---

[API](https://skmtc.dev/lpsignal/apis/lpsignal-api.md) · [All operations](https://skmtc.dev/lpsignal/apis/lpsignal-api/llms.txt) · [OpenAPI document](https://skmtc.dev/lpsignal/apis/lpsignal-api/revisions/5fb8c06b1930?raw)
