# Morpho 两个同名市场为什么不同？核对市场 ID 与五项参数

整理：链小知（AI 辅助）
资料核对日期：2026-10-11
引用地址：https://lianxiaozhi.com/tools/guides/morpho-verify-market-id-five-parameters
难度：进阶
核验方式：官方文档整理，未执行真实账户操作

按网络和 marketId 读取借出资产、抵押资产、预言机、利率模型与 LLTV，识别同名不同配置的市场，再检查流动性与数据时间。

## 使用工具
- [Morpho](https://lianxiaozhi.com/tools/morpho) · [官方入口](https://app.morpho.org/)

## 前置条件
- 已有一个市场链接及网络，能够查看其完整 marketId。
- 本教程核对 Morpho Blue/可变利率市场；Vault 与其他产品需另查相应配置。只读查询不需钱包签名。

## 1. 从市场页面取完整身份

记录网络、marketId、借出资产与抵押资产的地址。页面“USDC | cbBTC”一类名称帮助阅读，但两个名称一样的市场仍可能由不同 oracle、IRM 或 LLTV 区分。

不要用 Vault 地址替代 marketId。Vault 是资金组织方式，可能分配到多个市场；需要先定位实际分配的市场再继续。

核对结果：得到网络 + marketId，以及两种资产的完整地址。
依据：[Morpho：可变利率市场的身份与五项参数](https://docs.morpho.org/learn/concepts/blue/)
依据：[Morpho：市场参数、ID 校验与动态状态读取](https://docs.morpho.org/developers/borrow/tutorials/get-data/)

## 2. 读取五项不变参数

从对应网络官方 Morpho 部署的只读入口调用 idToMarketParams(marketId)，保存 loanToken、collateralToken、oracle、irm、lltv。若使用官方 API，查询同样带上 chainId 与 marketId。

返回空值、调用报错或网络错误时，分别记录。不要用“当前总借款为零”单独判断市场从未创建；零活动与不存在不同。

核对结果：五项参数有原始返回值与读取网络，未读到的值保留未知。
依据：[Morpho：市场参数、ID 校验与动态状态读取](https://docs.morpho.org/developers/borrow/tutorials/get-data/)

## 3. 逐项比对并检查 LLTV 单位

先比资产地址，再比 oracle 和 irm；五项中任何一项不同，都应按不同市场研究。链上 LLTV 按 1e18 缩放，将其除以 1e18 后再转百分数。

例如原始 860000000000000000 对应 86%，不能误写成 0.86%。这只是清算阈值的解释，不是建议将借款顶到阈值。

核对结果：对比表包括五项原值与正确转换的 LLTV。
依据：[Morpho：可变利率市场的身份与五项参数](https://docs.morpho.org/learn/concepts/blue/)
依据：[Morpho：市场参数、ID 校验与动态状态读取](https://docs.morpho.org/developers/borrow/tutorials/get-data/)

## 4. 用参数重新生成 ID

官方说明 marketId 由参数的 ABI 编码计算 keccak256 得到。能够编码的研究者可按文档结构重新计算，再与保存的 marketId 比较。

不一致时先查字段顺序、整型与缩放，不要用字符串拼接代替 ABI 编码。不会编码也可先完成双来源字段核对，并注明未进行重编码校验。

核对结果：ID 校验通过，或明确标为未做；不把格式正确当成市场正确。
依据：[Morpho：市场参数、ID 校验与动态状态读取](https://docs.morpho.org/developers/borrow/tutorials/get-data/)

## 5. 另外核对 oracle 与可用流动性

oracle 地址相同也需要理解它如何报价；市场界面标价不是对预言机可靠性的保证。按官方资料继续核对依赖资产和报价规则，暂时读不到时保留缺口。

研究供给退出时再看 liquidityAssets 等状态。可提款还取决于市场可用流动性；五项参数永久固定不代表利率、价格和流动性固定。

核对结果：身份与动态状态分开记录，当前可用流动性有单位和时间。
依据：[Morpho：可变利率市场的身份与五项参数](https://docs.morpho.org/learn/concepts/blue/)
依据：[Morpho：市场参数、ID 校验与动态状态读取](https://docs.morpho.org/developers/borrow/tutorials/get-data/)

## 6. 处理 API 与合约数值不一致

先检查是否同一网络、marketId、区块和单位。官方说明 market() 原始状态不包含上次链上交互后的新增利息，而 SDK 或计算后的状态可能已经计入。

留下原始状态、查询区块及是否已计息的标签。不要为让两者一致而删除数据，也不要把数据差异直接写成协议出现亏空。

核对结果：差异解释有身份、时间与计息口径依据；未知部分明确标注。
依据：[Morpho：市场参数、ID 校验与动态状态读取](https://docs.morpho.org/developers/borrow/tutorials/get-data/)

## 常见错误
- 用交易对简称或 Vault 地址代替 marketId。
- 只对比两种代币，不核对 oracle、IRM 与 LLTV。
- 把低借款量或零流动性当作市场不存在。
- 混用已计息 API 状态和未更新的原始合约状态。

## 完成检查
- 市场五项参数和完整 ID 有证据。
- 同名不同市场能逐项区分。
- 动态状态的时间、精度与计息范围已记录。

## 相关知识
- [Morpho 独立借贷市场与 Vault 有什么区别？](https://lianxiaozhi.com/learn/morpho-isolated-markets)
- [预言机价格与交易池价格有什么区别？清算应看哪一个](https://lianxiaozhi.com/learn/oracle-and-market-price)

## 官方依据
- [Morpho：可变利率市场的身份与五项参数](https://docs.morpho.org/learn/concepts/blue/)
- [Morpho：市场参数、ID 校验与动态状态读取](https://docs.morpho.org/developers/borrow/tutorials/get-data/)
