关于 yield-analysis
Yield Analysis 是用于评估和比较 DeFi 收益的分析技能,面向流动性提供者及收益策略研究者。它拆解手续费、代币激励和借贷利息,并纳入无常损失、费用及激励代币贬值来估算实际收益。
主要功能
- 01拆分收益来源
- 02估算扣除成本后的实际收益
- 03评估代币激励可持续性
- 04按风险和资产比较收益机会
- 05从 DeFiLlama 获取收益数据
适用场景
- 01比较不同流动性池的净收益
- 02评估高激励收益的可持续性
- 03核算无常损失和交易成本
- 04比较 Solana 借贷与质押机会
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ agiprolabs/ claude-trading-skills --skill yield-analysis安装后在 Claude Code 中输入/yield-analysis确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/sustainability_analysis.mdyield_math.mdscripts/yield_calculator.pyyield_comparison.py详细介绍
Yield Analysis — DeFi 收益评估与比较
DeFi 收益往往具有误导性。某个池子宣称 APY 为 200%,但计入无常损失、Gas 费用和激励代币贬值后,实际回报可能为负。本技能提供一套框架,用于准确拆解、评估和比较收益机会。
收益分析为何重要
大多数 DeFi 收益看板展示的是名义收益,也就是醒目的宣传数字。要计算实际收益,就必须将该数字拆解为各个组成部分,并扣除所有成本。若不进行这种拆解:
- LP 会追逐 APY 高的池子,却因 IL 而损失本金
- 由激励驱动的收益会随着奖励代币贬值而崩溃
- Gas 和再平衡成本会侵蚀微薄的利润
- 忽略了机会成本(你本可以质押 SOL,收益约为 7%)
收益组成部分
每种 DeFi 收益都由以下一个或多个来源构成:
1. 交易手续费收入
流动性提供者赚取的 Swap 手续费。这是最可持续的收益来源,因为它源自真实的经济活动。
fee_apr = (daily_volume * fee_rate / tvl) * 365
your_daily_fees = daily_volume * fee_rate * (your_liquidity / total_liquidity)
对于 CLMM 池(集中流动性),手续费收入会随着流动性区间集中度的提高而增加。有关 CLMM 的运作机制,请参阅 lp-math 技能。
2. 代币排放/激励
分发给 LP 的协议奖励代币。这通常是宣传收益中占比最大的部分,但往往难以持续。
emission_apr = (daily_emission_tokens * token_price * 365) / tvl
关键问题是:激励代币能否保值?如果所有人都来挖矿并抛售,代币就会贬值,实际美元收益也会低得多。
3. 借贷利息
通过向借贷协议(Marginfi、Kamino、Solend)存入资金而赚取的利息。其收益由借贷需求驱动,比代币排放更可持续,但会随资金利用率波动。
4. 质押奖励
验证者质押收益(Solana 上的 APR 约为 7%)或流动性质押代币(LST)收益。这是 Solana 生态系统中的基准无风险利率。
实际收益与名义收益
| 指标 | 包含内容 | 忽略内容 |
|---|---|---|
| 名义 APY | 手续费 APR + 排放 APR(复利) | IL、Gas、贬值、风险 |
| 实际收益 | 所有因素,扣除全部成本后的净值 | 无——这才是真实回报 |
实际收益公式
real_yield = fee_apr
+ emission_apr × (1 - emission_depreciation)
- il_cost
- gas_cost
- rebalancing_cost
其中:
fee_apr:手续费收入年化值,占仓位价值的比例emission_apr:按当前代币价格计算的排放收入年化值emission_depreciation:预期激励代币价格跌幅(0.0 至 1.0)il_cost:预期无常损失年化比率(参见impermanent-loss技能)gas_cost:存入、提取、领取和复利操作的交易费用rebalancing_cost:针对 CLMM 仓位,将超出区间的仓位重新平衡所需的成本
示例:SOL-USDC 池
Nominal APY displayed: 45%
Decomposition:
Fee APR: 18%
Emission APR: 30% (RAY token rewards)
Emission depreciation: 40% (RAY down 40% over 30d)
Effective emission: 18% (30% × 0.6)
IL cost (estimated): 12% (SOL volatile against USDC)
Gas + rebalance: 1%
Real yield = 18% + 18% - 12% - 1% = 23%
计入所有因素后,45% 的名义收益实际上只有 23%。
手续费 APR 计算
恒定乘积池
fee_apr = fee_rate * daily_volume / tvl * 365
对于手续费率为 0.25%、日交易量为 200 万美元、TVL 为 1,000 万美元的池子:
fee_apr = 0.0025 * 2_000_000 / 10_000_000 * 365 = 18.25%
集中流动性(CLMM)池
CLMM 手续费收入取决于你的仓位区间与交易活动的相对关系:
# Simplified — see lp-math skill for full CLMM math
fee_apr = fee_rate * daily_volume_in_range / position_liquidity * 365
区间越窄,每投入一美元赚取的手续费越高,但也更容易超出区间,因此需要重新平衡。
LP 份额
your_share = your_liquidity / total_pool_liquidity
your_daily_fees = total_daily_fees * your_share
排放可持续性
死亡螺旋模式
- 协议以高额排放奖励启动 → 吸引 LP
- TVL 增长 → 每位 LP 的收益下降 → 协议提高排放量
- LP 挖矿并抛售排放代币 → 代币价格下跌
- 代币价格下跌 → 以美元计价的收益降低
- LP 离场 → TVL 下降 → 协议进一步提高排放量
- 螺旋持续,直到排放停止或协议失败
可持续性指标
# Protocol P/E ratio
pe_ratio = fully_diluted_valuation / annual_protocol_revenue
# Revenue-to-emission ratio (> 1.0 is sustainable)
sustainability = annual_revenue / annual_emission_value
# Token velocity (high = lots of sell pressure)
velocity = daily_emission_selling / daily_token_volume
解读:
- P/E < 20 且可持续性 > 1.0:收益可能可持续
- P/E 为 20-100 且可持续性为 0.3-1.0:中等风险
- P/E > 100 或可持续性 < 0.3:依赖代币排放,风险高
危险信号
- APY > 100%,且收益主要来自代币排放
- 排放代币价格连续 30 天以上下跌
- 排放率保持不变或上升,但 TVL 持续下降
- 协议收入只占排放成本的一小部分
- 排放代币没有归属期或锁定期
收益比较框架
比较收益机会时,请统一以下维度:
1. 同类资产基准
比较同类资产。以 SOL 为例:
| 策略 | 预期 APR | 风险等级 | 无常损失敞口 |
|---|---|---|---|
| 原生质押 | ~7% | 低 | 无 |
| 流动性质押(mSOL) | ~7.5% | 低 | 极低 |
| SOL-USDC LP(Orca) | ~15-25% | 中 | 高 |
| SOL 借贷(Marginfi) | ~3-8% | 低至中 | 无 |
| 杠杆收益 | ~20-50% | 高 | 不定 |
2. 风险调整后收益
risk_score = (
il_risk * 0.3 +
smart_contract_risk * 0.25 +
emission_sustainability_risk * 0.2 +
liquidity_risk * 0.15 +
protocol_risk * 0.1
)
risk_adjusted_yield = net_apr / risk_score
3. 总成本核算
计入所有成本:
- 无常损失(参见
impermanent-loss技能) - 所有交易的 Gas 费(存入、取出、领取、复投)
- 机会成本(无风险情况下本可获得的收益)
- 智能合约风险溢价
- 再平衡成本(CLMM 仓位)
Solana 收益来源
流动性提供
| 协议 | 池类型 | 费率档位 | 备注 |
|---|---|---|---|
| Raydium | CPMM、CLMM | 0.01-1% | 按交易量计算的 Solana 最大 DEX |
| Orca | CLMM(Whirlpool) | 0.01-2% | 专注于集中流动性 |
| Meteora | DLMM、动态 | 可变 | 动态调整费用 |
借贷
| 协议 | 资产 | 典型 APR | 备注 |
|---|---|---|---|
| Marginfi | SOL、USDC 等 | 2-10% | 积分计划正在运行 |
| Kamino | SOL、USDC 等 | 2-12% | 自动复投金库 |
| Solend | SOL、USDC 等 | 1-8% | 成熟的协议 |
质押
| 方式 | APR | 锁定期 | 备注 |
|---|---|---|---|
| 原生 SOL 质押 | ~7% | 1 个 epoch(约 2 天) | 验证器的选择很重要 |
| mSOL(Marinade) | ~7.2% | 即时 | 流动性强,可用于 DeFi |
| jitoSOL(Jito) | ~7.5% | 即时 | 包含 MEV 奖励 |
| bSOL(BlazeStake) | ~7% | 即时 | 去中心化验证器集 |
数据来源
DeFiLlama Yields API(免费,无需认证)
import httpx
# All yield pools
pools = httpx.get("https://yields.llama.fi/pools").json()
# Filter for Solana
solana_pools = [p for p in pools["data"] if p["chain"] == "Solana"]
# Sort by TVL
solana_pools.sort(key=lambda p: p.get("tvlUsd", 0), reverse=True)
响应字段:pool、chain、project、symbol、tvlUsd、apy、apyBase、apyReward、il7d、exposure。
协议专用 API
- Raydium:
https://api-v3.raydium.io/pools/info/list - Orca:
https://api.mainnet.orca.so/v1/whirlpool/list - Marginfi:通过 Solana RPC 获取链上账户数据
与其他技能的集成
lp-math:用于费用计算和仓位数学的 AMM 公式impermanent-loss:估算 IL,以计算实际收益defillama-api:获取各协议的收益和 TVL 数据risk-management:组合层面的收益分配决策position-sizing:确定分配给收益策略的资金规模
文件
参考资料
references/yield_math.md— 费用 APR、APR/APY 换算、净收益公式、盈亏平衡分析references/sustainability_analysis.md— 代币排放可持续性指标、死亡螺旋模式、实际收益识别
脚本
scripts/yield_calculator.py— 离线收益计算器,支持费用 APR、无常损失估算、净收益、盈亏平衡和敏感性分析scripts/yield_comparison.py— 获取 DeFiLlama 收益数据,并对 Solana 收益机会进行比较和风险调整排名