HyperEVM 開発 · HyperEVM の DeFi · 7/8
貸し借りのプロトコル
ここにある機会
HyperEVM の読み取り用 precompile と CoreWriter は、貸し借りのプロトコルにめずらしいものを与えます。HyperCore の価格、残高、板に、チェーン上から触れられることです。プロトコルは HyperCore の価格で担保を評価し、HyperCore の板で直接売買して清算できます。
DeFi の貸し借りの仕組み
基本の形です。
Lender deposits USDC → Lending Pool ← Borrower provides collateral
↓ ↓
Earns interest Borrows USDC against collateral
基本の考え方
- 供給 — 資産を預けて利息を得ます
- 担保 — 資産をロックして、借りられるようにします
- 借入 — 担保をもとにお金を借ります
- 清算 — 担保の価値が基準を下回ると、ポジションが清算されます
HyperEVM の Aave 型の貸し借り
HyperLend など、HyperEVM のいくつかの貸し借り市場は、Aave V3 型のインターフェースを使っています。
// Aave V3-style pool interface
// Supplying USDC to earn interest
IERC20(USDC).approve(address(hyperLend), amount);
hyperLend.supply(USDC, amount, onBehalfOf, referralCode);
// Borrowing against collateral
hyperLend.borrow(USDC, borrowAmount, interestRateMode, referralCode, onBehalfOf);
無期限先物の口座を担保にする: 読めることと動かせることは別
貸し借りのプロトコルは、口座の証拠金のまとめを返す precompile(0x…080F)で、ユーザーの HyperCore の無期限先物口座の評価額を読めます。ただし読めても動かせるわけではありません。ユーザーはその資金をいつでも引き出せますし、損失で失うこともあります。コントラクトがほかの口座の HyperCore の資金を差し押さえることはできません。それを担保として数えて安全なのは、資金がプロトコルの管理する口座にある場合だけです。たとえば、コントラクト自身の HyperCore 口座です。これは CoreWriter で管理できます。
abstract contract PerpCollateralLending {
address constant ACCOUNT_MARGIN_SUMMARY = 0x000000000000000000000000000000000000080F;
struct AccountMarginSummary { int64 accountValue; uint64 marginUsed; uint64 ntlPos; int64 rawUsd; }
// Value of collateral the protocol actually holds for `user` (implementation-specific)
function tokenCollateral(address user) public view virtual returns (uint256);
// Equity of the protocol's OWN HyperCore account (perp dex 0)
function protocolPerpEquity() public view returns (int64) {
(bool ok, bytes memory res) =
ACCOUNT_MARGIN_SUMMARY.staticcall(abi.encode(uint32(0), address(this)));
require(ok, "margin summary failed");
return abi.decode(res, (AccountMarginSummary)).accountValue;
}
function maxBorrow(address user) external view returns (uint256) {
// Allow borrowing up to 50% of collateral the protocol controls
return (tokenCollateral(user) * 50) / 100;
}
}
HyperCore にはネイティブの貸し借り(「Earn」)もあります。CoreWriter の操作 15 で供給と引き出しを行い、precompile 0x…0811/0x…0812 でユーザーと準備金の状態を読みます(Interacting with HyperCore)。
リスク
- スマートコントラクトのリスク — HyperEVM のコントラクトは新しく、バグがあるかもしれません
- オラクルのリスク — 取引の薄い HyperCore の市場は、価格を動かされやすいです。mark 価格、オラクル価格、現物の価格はそれぞれ違う動きをします
- 清算の連鎖 — 急な巻き戻しが、清算の連鎖を起こすことがあります
- 環境をまたぐリスク — HyperCore の問題が HyperEVM のポジションに響くことがあります。また、CoreWriter の操作はチェーン上で数秒遅れて実行されます
テストネットでの実測
hyperevm-lend を作ったときの記録です(HyperEVM テストネット、2026-10-18)。学習用のプロジェクトで、監査は受けていません。
- HyperCore の貸し借りは、HYPE をオラクル価格ではなく mark 価格で評価します。 準備金の precompile(0x812)は HYPE を 51.802 と返しました。そのときの mark(0x806)は 51.80、オラクル(0x807)は 40.48 でした。ユーザーの状態の precompile(0x811)は、貸し借りの履歴がない口座だと revert します
- テストネットの価格は使えないことがあります。 テストネットの HYPE perp は、mark がオラクルから 28% ずれ、板の幅は 38% ありました。清算のロジックは、テストネット専用のコントラクトで自分が決めた価格を使って試してください
- 一つの価格だけを信じずに清算する方法: オラクル価格と mark 価格のうち、借り手に有利な方で清算を判定します(HYPE を担保にした借り入れなら高い方)。こうすると、片方の価格だけが動いても誰も清算されません。本当の暴落なら両方が動くので、清算は止まりません
HyperEVM の DeFi プロジェクトの例
例として挙げるだけで、推奨ではありません。今の状況は、HyperEVM の資料から辿れるエコシステムの一覧で確かめてください。
| プロジェクト | 種類 | 説明 |
|---|---|---|
| HyperLend | 貸し借り | Aave 型の貸し借り |
| Kinetiq | リキッドステーキング | kHYPE(ステークした HYPE を流動化したもの) |
| HyperSwap | DEX | HyperEVM のトークン向けの AMM |
| Felix | ステーブルコイン | HYPE を裏付けにした CDP 型のステーブルコイン |