Defi Yield — DeFi 收益
v1DeFi 收益聚合器(Yield Aggregator)助手。帮助用户找到最佳收益策略、分析各协议 APY、执行自动复投、追踪仓位收益。 当用户提到以下内容时激活: - "收益聚合"、"DeFi 收益"、"撸收益" - "Yearn Finance"、"Beefy Finance"、"Pendle"、"Gamma" - "APY 查询"、"哪个池子收益最高"、"收益策略" - "自动复投"、"流动性挖矿"、"收益农场" - "质押收益"、"LP 收益"、"稳定币收益" - 查询 APY、对比收益、分析风险、执行操作
运行时依赖
安装命令
点击复制技能文档
DeFi Yield Aggregator 技能 概述
收益聚合器(Yield Aggregator)是 DeFi 中的自动理财协议,核心逻辑:
用户入金 → 协议自动分配到最高收益池子 → 收益自动复投 → 用户受益
相比手动收益耕种的优势:
自动复利(收益再投资,省 Gas) 策略由专业团队维护(Yearn 等) 智能路由(自动切换到收益最高的池子) 核心概念 术语 含义 APY 年化收益率(含复利效应) APR 年化收益率(不含复利) TVL Total Value Locked,锁仓量 Vault 收益池,用户存入资产、协议自动操作 Auto-compounding 自动复利,收益自动再质押 Delta Neutral 三角中性,对冲风险策略 Leverage / 杠杆 借款放大收益(同时放大风险) IL Impermanent Loss,无常损失 主流收益聚合协议 🥇 Yearn Finance(以太坊) 项目 信息 官网 yearn.finance 链 Ethereum、Arbitrum、Polygon、Fantom 特点 主动策略 Vault(yVaults),顶级安全性 代币 YFI(治理代币) APY 来源 yearn.finance/vaults 🥈 Beefy Finance(多链) 项目 信息 官网 beefy.finance 链 50+ 条链(BSC/ETH/Polygon/Arbitrum等) 特点 多链覆盖,收益 Vault 数量最多 代币 BIFI APY 来源 beefy.finance/vaults 🥉 Pendle Finance(创新) 项目 信息 官网 pendle.finance 链 Ethereum、Arbitrum、BSC 特点 收益代币化(PT / YT),可锁定未来收益 适合 预期利率下降,想提前锁定高收益 🏅 Gamma Strategies(Gamma) 项目 信息 官网 gamma.xyz 链 Ethereum、Polygon 特点 Uniswap V3 流动性管理,专攻 LP 收益 适合 想做市但不想主动管理 LP 仓位 🏅 Stargate(跨链) 项目 信息 官网 stargate.finance 链 多链 特点 跨链稳定币桥 + 收益池 适合 稳定币跨链 + 收益双赢 其他常见协议 协议 特点 Convex Finance CVX 生态,专注 Curve 收益 Aura Finance Balancer 收益聚合 Gearbox 杠杆收益协议 Roken Lido rETH 质押收益增强 Eigenlayer 再质押(Restaking)收益 工具
API / 网页 抓取
提取_content_from_网页sites — 抓取 Yearn / Beefy / Pendle 等官方 APY 数据 batch_网页_搜索 — 搜索最新收益策略、协议动态
Python 脚本
scripts/apy_检查er.py — 批量查询多协议 APY scripts/position_追踪er.py — 追踪钱包在各协议中的仓位和收益 scripts/yield_优化器.py — 收益对比分析,优化建议 工作流程 场景一:查询最佳 APY 确认用户资产类型:稳定币 / ETH / BTC / 山寨币 确认链偏好和风险承受能力 查询各协议对应 Vault APY 输出对比表 + 建议
操作步骤:
- 使用 apy_检查er.py 拉取 Yearn / Beefy / Gamma 等协议 APY
- 对比稳定币收益(USDC/USDT/DAI)
- 考虑 Gas 成本(以太坊主网 vs L2)
- 提示无常损失风险和流动性限制
- 给出最优策略建议
场景二:收益策略分析
根据用户持仓类型推荐策略:
稳定币(USDC/USDT/DAI):
最优:Yearn yUSDC Vault / Beefy USDC Vault APY 范围:3%~15%(根据市场情况) 风险:低(单币池,无 IL) 注意:Gas 成本要低于收益 推荐链:Arbitrum / Polygon(低 Gas)
ETH 生态:
方案A:直接质押 Lido → 4~5% APY(安全稳定) 方案B:stETH 在 Curve/Yearn 循环LP → 5~10% APY 方案C:Yearn ETH Vault → 自动策略 风险:ETH 波动 + IL
BTC 生态:
方案A:WBTC 存入 BitBTC -> 4~6% APY 方案B:Curve wBTC/renBTC 池 风险:BTC 波动
场景三:仓位追踪 用户提供钱包地址 调用 position_追踪er.py 扫描 输出各协议的资产分布 + 估算收益 提示未领取奖励情况 常用脚本 脚本 1:APY 批量查询
文件:scripts/apy_检查er.py
#!/usr/bin/env python3 """ DeFi APY 批量查询器 查询 Yearn、Beefy、Pendle 等主流协议的 APY 数据 """ 导入 请求s 导入 json from dataclasses 导入 dataclass from typing 导入 列出, Optional
@dataclass class Vault信息: protocol: str chAIn: str as设置: str vault_添加ress: str apy: float # percentage tvl_usd: float has_reward_令牌: bool = False reward_apy: float = 0.0
def 查询_yearn_vaults() -> 列出[Vault信息]: """查询 Yearn Finance Vaults""" url = "https://yearn.vision/vaults" 结果s = [] try: resp = 请求s.获取(url, timeout=10) data = resp.json() for vault in data.获取("data", [])[:20]: 结果s.应用end(Vault信息( protocol="Yearn", chAIn=vault.获取("chAIn", "ethereum"), as设置=vault.获取("symbol", "").replace("yv", "").upper(), vault_添加ress=vault.获取("添加ress", ""), apy=float(vault.获取("apy", {}).获取("net_apy", 0) or 0) 100, tvl_usd=float(vault.获取("tvl", {}).获取("tvl", 0) or 0), )) except 异常 as e: print(f"Yearn API 失败: {e}") return 结果s
def 查询_beefy_vaults(as设置: str = "") -> 列出[Vault信息]: """查询 Beefy Finance Vaults""" url = "https://API.beefy.finance/vaults" 结果s = [] try: resp = 请求s.获取(url, timeout=10) data = resp.json() for vault in data: if as设置 and as设置.upper() not in vault.获取("令牌", "").upper(): continue 结果s.应用end(Vault信息( protocol="Beefy", chAIn=vault.获取("chAIn", ""), as设置=vault.获取("令牌", ""), vault_添加ress=vault.获取("earnContract添加ress", ""), apy=float(vault.获取("apy", 0) or 0) 100, tvl_usd=float(vault.获取("tvl", 0) or 0), )) except 异常 as e: print(f"Beefy API 失败: {e}") return 结果s
def 查询_pendle_markets() -> 列出[Vault信息]: """查询 Pendle Finance 市场""" url = "https://API.pendle.finance/vip/data/API/v1/markets" 结果s = [] headers = {"Accept": "应用/json"} try: resp = 请求s.获取(url, headers=headers, timeout=10) data = resp.json().获取("data", []) if isinstance(resp.json(), dict) else resp.json() for m in data[:10]: 结果s.应用end(Vault信息( protocol="Pendle", chAIn="ethereum", as设置=m.获取("underlyingAs设置", ""), vault_添加ress=m.获取("添加ress", ""), apy=float(m.获取("apy", 0) or 0), tvl_usd=float(m.获取("tvlUsd", 0) or 0), )) except 异常 as e: print(f"Pendle API 失败: {e}") return 结果s
def 格式化_结果s(vaults: 列出[Vault信息], top_n: int = 10): """格式化输出""" # 排序 排序ed_v