> ## Documentation Index
> Fetch the complete documentation index at: https://defi-cli.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Yield

> Rank and filter yield opportunities with provider-aware behavior.

## Basic ranking

```bash theme={null}
defi yield opportunities --chain 1 --asset USDC --limit 20 --results-only
```

## Select providers explicitly

```bash theme={null}
defi yield opportunities --chain 1 --asset USDC --providers aave,morpho --limit 20 --results-only
defi yield opportunities --chain solana --asset USDC --providers kamino --limit 20 --results-only
```

`--providers` expects provider names from `defi providers list`.

## Filter with objective metrics

```bash theme={null}
defi yield opportunities \
  --chain 1 \
  --asset USDC \
  --providers aave,morpho \
  --min-tvl-usd 1000000 \
  --min-apy 1 \
  --sort liquidity_usd \
  --limit 20 \
  --results-only
```

## Key opportunity fields

* `apy_total`: total APY percentage points (`2.3` means `2.3%`).
* `tvl_usd`: total supplied/managed USD reported by the provider.
* `liquidity_usd`: currently available withdrawable/borrowable USD from the provider.
* `backing_assets`: full backing composition list with per-asset `share_pct`.

## Incomplete opportunities

```bash theme={null}
defi yield opportunities --chain 1 --asset USDC --include-incomplete --results-only
```

When enabled, warnings may indicate missing APY/TVL and combined-provider counts.

## Historical series

```bash theme={null}
defi yield history --chain 1 --asset USDC --providers aave,morpho --metrics apy_total --interval day --window 7d --limit 1 --results-only
defi yield history --chain 1 --asset USDC --providers morpho --metrics apy_total,tvl_usd --interval day --window 30d --limit 1 --results-only
defi yield history --chain solana --asset USDC --providers kamino --metrics apy_total,tvl_usd --interval day --window 7d --limit 1 --results-only
```

Optional time filters:

```bash theme={null}
defi yield history --chain 1 --asset USDC --providers aave --metrics apy_total --from 2026-02-20T00:00:00Z --to 2026-02-26T00:00:00Z --interval hour --limit 1 --results-only
```

## Positions

```bash theme={null}
defi yield positions --chain 1 --address 0xYourEOA --providers aave,morpho --limit 20 --results-only
defi yield positions --chain 1 --address 0xYourEOA --providers morpho --asset USDC --results-only
```

Supported providers: `aave`, `morpho`, `moonwell`.

## Execution (deposit, withdraw)

```bash theme={null}
defi yield deposit plan --provider aave --chain 1 --asset USDC --amount 1000000 --wallet agent-treasury --results-only
export DEFI_OWS_TOKEN=...
defi yield deposit submit --action-id <action_id> --results-only
```

Morpho yield execution requires `--vault-address`:

```bash theme={null}
defi yield deposit plan --provider morpho --chain 1 --asset USDC --vault-address 0xVault --amount 1000000 --wallet agent-treasury --results-only
```

`yield` and `lend` are split by intent: `yield` for passive deposits/withdrawals, `lend` for loan lifecycle (`supply|withdraw|borrow|repay`).

Plan with `--wallet` (OWS) or `--from-address` (local signer). See [Execution & Signing](/concepts/execution-auth) for submit auth details.

## Important caveats

* APY values are percentage points (`2.3` = `2.3%`).
* Morpho may produce extreme APY for very small markets; use `--min-tvl-usd`.
* Kamino yield routes currently support Solana mainnet only (read only, no execution).
* Moonwell yield routes are supported on Base and Optimism; Moonwell does not support `--on-behalf-of`.
* `yield opportunities` no longer includes subjective risk/score fields.
* `yield history --metrics` supports `apy_total` and `tvl_usd`; Aave currently supports `apy_total` only.
* Aave history is lookback-window based and effectively ends near current time.
* `action_policy_error` can indicate an OWS policy denial on wallet-backed submit.
