> For the complete documentation index, see [llms.txt](https://gitbook-docs.coinmetrics.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gitbook-docs.coinmetrics.io/network-data/protocol-metrics/risk-parameters.md).

# Risk Parameters

## Overview

Risk parameters are the limits and thresholds a lending market's governance sets to bound how it can be used: how much can be supplied or borrowed, how much of a deposit's value can be borrowed against, and what happens at liquidation. They are set by protocol governance and change only when governance updates them, unlike the rates and balances documented elsewhere in [Protocol Metrics](/network-data/protocol-metrics.md). See that page for the shared entity model (protocol, chain, market) and the beginning-of-interval timestamp convention.

## At a Glance

<table data-full-width="true"><thead><tr><th>Data type</th><th>Entities</th><th width="159">Frequency / cadence</th><th>Unit</th><th>Primary endpoint</th><th>Coverage</th></tr></thead><tbody><tr><td>Supply and borrow caps, loan-to-value, and liquidation parameters</td><td>Protocol markets (protocol + chain + market)</td><td>1d and 1m</td><td>Native units, U.S. dollars where available, or percent</td><td><code>/timeseries/protocol-metrics</code></td><td><em>coming soon....</em></td></tr></tbody></table>

## Metrics

None of these metrics has a `_mean` form: each is a governance-set parameter, not a rate that fluctuates within the day.

<table data-full-width="true"><thead><tr><th width="290">Metric</th><th>Description</th><th width="90">Frequency</th></tr></thead><tbody><tr><td><code>supply_cap_ntv</code></td><td>The maximum amount that can be supplied to the market, in the market's native asset units.</td><td>1d, 1m</td></tr><tr><td><code>supply_cap_usd</code></td><td>The maximum amount that can be supplied to the market, in U.S. dollars.</td><td>1d, 1m</td></tr><tr><td><code>borrow_cap_ntv</code></td><td>The maximum amount that can be borrowed from the market, in the market's native asset units.</td><td>1d, 1m</td></tr><tr><td><code>borrow_cap_usd</code></td><td>The maximum amount that can be borrowed from the market, in U.S. dollars.</td><td>1d, 1m</td></tr><tr><td><code>ltv_max_pct</code></td><td>The maximum loan-to-value ratio for a position collateralized by this market's asset: the largest percentage of the collateral's value that can be borrowed against it.</td><td>1d, 1m</td></tr><tr><td><code>liquidation_threshold_pct</code></td><td>The loan-to-value ratio at which a position collateralized by this market's asset becomes eligible for liquidation.</td><td>1d, 1m</td></tr><tr><td><code>liquidation_bonus_pct</code></td><td>The bonus paid to a liquidator who liquidates a position collateralized by this market's asset, expressed as a bonus factor above 100 (for example <code>105</code> means the liquidator receives 105% of the seized collateral's value, a 5% bonus).</td><td>1d, 1m</td></tr></tbody></table>

{% hint style="info" %}
**Conventions.**

* Metric values are returned as JSON strings to preserve precision.
* `time` marks the beginning of the interval a row covers (see [Protocol Metrics: Conventions](/network-data/protocol-metrics.md#at-a-glance)).
* The `_usd` cap variants are published where available: a market whose underlying asset has no Coin Metrics reference rate has no `_usd` cap values, even though its `_ntv` values are published.
* The `_pct` metrics are already scaled to percent (for example `80.5` means 80.5%, not 0.805%), except `liquidation_bonus_pct`, which is a bonus factor above 100 rather than a plain percent (see Methodology below).
* `ltv_max_pct` is always less than or equal to `liquidation_threshold_pct`, since a position must be allowed to be opened before it can become eligible for liquidation.
  {% endhint %}

## Methodology

* Each of these values is read directly from the protocol's on-chain risk configuration for the market, as set by the protocol's governance process. They change only when governance passes an update, so unlike the rates and balances on the other Protocol Metrics pages, a flat series here reflects an unchanged configuration rather than a lack of activity.
* `liquidation_bonus_pct` is published as a bonus factor above 100, not a plain percentage: a value of `105` means the liquidator receives 105% of the seized collateral's value, a 5% bonus. See the live example below, which returns exactly this value for a real market.

## Accessing the Data

* [`/timeseries/protocol-metrics`](https://docs.coinmetrics.io/api/v4/#operation/getTimeseriesProtocolMetrics)

{% tabs %}
{% tab title="Python Client" %}

```python
import os
from coinmetrics.api_client import CoinMetricsClient

client = CoinMetricsClient(os.environ["CM_API_KEY"])

df = client.get_protocol_metrics(
    protocols="aave_v3",
    markets="core-weth",
    metrics=["ltv_max_pct", "liquidation_threshold_pct", "liquidation_bonus_pct"],
    frequency="1d",
).to_dataframe()
```

{% endtab %}

{% tab title="Shell" %}

```shell
curl --compressed "https://api.coinmetrics.io/v4/timeseries/protocol-metrics?protocols=aave_v3&markets=core-weth&metrics=ltv_max_pct,liquidation_threshold_pct,liquidation_bonus_pct&frequency=1d&page_size=10000&api_key=$CM_API_KEY"
```

{% endtab %}

{% tab title="Python" %}

```python
import os, requests

response = requests.get(
    "https://api.coinmetrics.io/v4/timeseries/protocol-metrics",
    params={"protocols": "aave_v3", "markets": "core-weth",
            "metrics": "ltv_max_pct,liquidation_threshold_pct,liquidation_bonus_pct",
            "frequency": "1d", "page_size": 10000, "api_key": os.environ["CM_API_KEY"]},
).json()
print(response)
```

{% endtab %}
{% endtabs %}

Full parameter reference: see the API Reference for [`/timeseries/protocol-metrics`](https://docs.coinmetrics.io/api/v4/#operation/getTimeseriesProtocolMetrics).

## Examples

The example below is a live pull, returned as JSON strings, and changes on each pull.

### Example: risk parameters for a lending market

Caps and liquidation parameters for the Aave v3 WETH market on Ethereum ([browser](https://api.coinmetrics.io/v4/timeseries/protocol-metrics?markets=core-weth\&metrics=ltv_max_pct,liquidation_threshold_pct,liquidation_bonus_pct,borrow_cap_usd,supply_cap_usd\&frequency=1d\&page_size=2\&paging_from=end\&api_key=YOUR_API_KEY)):

```json
[
  {
    "protocol": "aave_v3",
    "market": "core-weth",
    "chain": "ethereum",
    "time": "2026-08-08T00:00:00.000000000Z",
    "borrow_cap_usd": "4599014118.516864",
    "liquidation_bonus_pct": "105",
    "liquidation_threshold_pct": "83",
    "ltv_max_pct": "80.5",
    "supply_cap_usd": "5173890883.331472"
  },
  {
    "protocol": "aave_v3",
    "market": "core-weth",
    "chain": "ethereum",
    "time": "2026-08-09T00:00:00.000000000Z",
    "borrow_cap_usd": "4586234954.527968",
    "liquidation_bonus_pct": "105",
    "liquidation_threshold_pct": "83",
    "ltv_max_pct": "80.5",
    "supply_cap_usd": "5159514323.843964"
  }
]
```

Note that `liquidation_bonus_pct` reads `105` here: a bonus factor above 100, meaning a 5% bonus expressed as 105% of the seized collateral's value, not a plain percentage. See [Methodology](#methodology) above.

## Coverage

See [Protocol Metrics: Coverage](/network-data/protocol-metrics.md#coverage) for how to check current availability against the catalog directly.

## Related

* [Protocol Metrics](/network-data/protocol-metrics.md): the parent page, with the shared entity model and frequency semantics.
* [Liquidity and Size](/network-data/protocol-metrics/liquidity-and-size.md): the total borrowed and total market size figures these caps bound.
* [Rates and Yield](/network-data/protocol-metrics/rates-and-yield.md): utilization and the rates these risk parameters help govern.


---

# 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://gitbook-docs.coinmetrics.io/network-data/protocol-metrics/risk-parameters.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.
