Cross-protocol risk-adjusted DeFi yield screener: ranked pools with honest base-vs-reward
Cross-protocol risk-adjusted DeFi yield screener: ranked pools with honest base-vs-reward APY split, trap flags, and 0-10 risk overlay
100000 (raw units)
price
2
calls / 30d
1
unique payers
2026-09-10
updated
Provider
defi.lonestaroracle.xyz · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x52Ab53912D37759B2ad364f22dD06B16714b6C06",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "100000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "3nmeVj5m9Uq2hSTfsVsn3tJMHRJQNMKR1AjzyUJbrSgw",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": "100000",
"maxTimeoutSeconds": 300
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {
"asset": "BTC",
"category": "steel",
"chain": "base",
"limit": 10,
"min_tvl": 10000000,
"risk_max": 1,
"sort": "base",
"stablecoin": "example"
},
"type": "http"
},
"output": {
"example": "{\"results\":[{\"protocol\":\"unitas\",\"symbol\":\"SUSDU\",\"chain\":\"BSC\",\"apy_base\":11.6,\"apy_reward\":0,\"risk_score\":0,\"risk\":\"LOW\",\"sustainable\":true}]}",
"format": "json",
"type": "object"
}
},
"schema": {
"category": "blockchain",
"description": "Cross-protocol DeFi yield screener over the DeFiLlama pool universe: ranks pools by REAL base APY (separated from unsustainable reward/emission APY), flags yield traps, and adds a 0-10 risk overlay (emissions dependence, TVL depth, IL exposure, volatility). Filterable by asset, chain, stablecoin, min TVL, category, max risk. For allocation agents choosing where to deposit capital.",
"name": "DeFiRisk — Top Yields Screener",
"properties": {
"input": {
"properties": {
"method": {
"enum": [
"GET",
"HEAD",
"DELETE"
],
"type": "string"
},
"queryParams": {
"properties": {
"asset": {
"description": "Filter by token symbol substring, e.g. USDC",
"title": "Asset",
"type": "string"
},
"category": {
"description": "lending or lp",
"title": "Category",
"type": "string"
},
"chain": {
"description": "Filter by chain, e.g. Base, Ethereum, Arbitrum",
"title": "Chain",
"type": "string"
},
"limit": {
"default": 10,
"description": "Result count (max 50)",
"title": "Limit",
"type": "integer"
},
"min_tvl": {
"default": 10000000,
"description": "Minimum pool TVL in USD",
"title": "Min Tvl",
"type": "number"
},
"risk_max": {
"description": "Max risk score 0-10",
"title": "Risk Max",
"type": "integer"
},
"sort": {
"default": "base",
"description": "base | total | tvl",
"title": "Sort",
"type": "string"
},
"stablecoin": {
"description": "true = stablecoin pools only, false = exclude",
"title": "Stablecoin",
"type": "string"
}
},
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"tags": [
"defi",
"yield",
"apy",
"farming",
"stablecoin",
"risk",
"defillama"
],
"type": "object",
"version": "1.0.0"
}
}
}Use it
curl
curl "https://defi.lonestaroracle.xyz/top-yields" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://defi.lonestaroracle.xyz/top-yields");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://defi.lonestaroracle.xyz/top-yields")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/5353.json, and this resource appears in /discovery/resources and /discovery/search.