ポートフォリオ証拠金へのオンボーディング
ポートフォリオ証拠金(PM)は本番環境で稼働しており、すべてのアカウントが利用できます。PMは、オプションとHyperliquidのパーペチュアルをまとめて、ポートフォリオ全体の最悪ケースのリスクに基づいて証拠金を計算します。そのため、ヘッジされたブックに必要な担保はスタンダード証拠金の場合よりも大幅に少なくなります。このページではPMへの移行方法を説明します。証拠金自体の計算方法については、ポートフォリオ証拠金をご覧ください。
要点: 新しいマネージャーウォレットを用意し、そのHypercallアカウントを作成し、HyperCoreのユニファイドアカウントモードを有効にし、Portfolioモードに切り替えてから、最後に入金します。
新しいウォレットから始める理由
残高またはオープンなブックがあるスタンダード証拠金(SM)アカウントは、そのままポートフォリオ証拠金に切り替えることはできません。Hypercallは、マネージャーウォレットについて以下の条件がすべて満たされている場合にのみ、Portfolioモードへの切り替えを受け付けます。
| 要件 | 意味 |
|---|---|
| Hypercallアカウントがちょうど1つ | マネージャーが1つのAccountコントラクトを管理していること。0個または2個以上の場合は拒否されます。 |
| スタンダード残高がゼロ | ウォレットのスタンダード証拠金の現金残高がゼロであること。出金可能な残高があると切り替えはブロックされます。 |
| フラット | マネージャーウォレットとそのAccountのいずれにも、オープンポジションおよび未約定注文がないこと。 |
これらのルールが存在するのは、2つのモードが1つのアカウントの設定違いではなく、種類の異なるアカウントだからです。
- 担保の保管方法が異なります。 スタンダード証拠金からポートフォリオ証拠金への移行は、スイッチを切り替えることではなく、資金を移動することを意味します。
- ポジションは異なるルールで証拠金計算されます。 オープンポジションがあると、一方のルールからもう一方のルールへ証拠金を再計算する必要があります。
- そのため、切り替えは空のアカウントから行います。 この両方を1ステップで安全に行うことはサポートされていないため、アカウントを事前にフラットかつ空にする必要があります。
証拠金モードはマネージャーウォレットごとに設定されるため、1つのウォレットで両方のモードを運用することはできません。最も簡単な方法はPM用に新しいマネージャーウォレットを用意することで、セットアップ中も既存のSMアカウントでクオートを続けられます。既存のウォレットを空にして(すべてのポジションを決済し、すべての注文をキャンセルし、スタンダードの現金をすべて出金して)切り替えることも可能ですが、その間SMのブックを稼働させ続けることはできません。
始める前に
- 新しいマネージャーウォレット(ご自身が管理するEOA。ハードウェアなど安全に保管された鍵が理想です)。
- アカウント作成デポジットとガス代のための、そのウォレット内のHyperEVM上のHYPE。
- 担保として使用する予定のUSDC。
セットアップ手順
以下の順番で実行してください。ステップ4は必ずステップ5より前に行う必要があります。
-
新しいマネージャーウォレットを作成します。 SMのマネージャー、APIウォレット、エージェントキーを再利用しないでください。
-
Hypercallアカウントを作成します。 マネージャーウォレットから、HYPEの作成デポジットを添えてFactoryコントラクトの
createAccount(salt)を呼び出します。これによりAccountコントラクトがデプロイされ、HyperCore上で有効化されます。オンボーディング(コントラクト)をご覧ください。このマネージャーに対して作成するアカウントは1つだけにしてください。 -
AccountでHyperCoreのユニファイドアカウントモードを有効にします。 マネージャーウォレットで署名した
hl_set_abstractionアクションを、userにAccountアドレス、abstractionに2(ユニファイドアカウント)を設定して送信します。POST /v1/actions/hl_set_abstraction/typed-dataが署名すべき正確なtyped dataを返し、POST /v1/actions/hl_set_abstractionでそれを送信します。HyperCoreがAccountをunifiedAccountとして報告するまで待ちます。Hyperliquid独自のポートフォリオ証拠金モードを含む、Hyperliquidのその他のアカウントモードはサポートされていません。 -
Portfolioモードに切り替えます。
walletにマネージャーアドレス、margin_modeにportfolioを設定し、マネージャーウォレットで署名したPOST /margin-modeを送信します(認証を参照)。レスポンスでは、AccountアドレスがPMウォレットとして返されます。これは入金の前に行ってください。ウォレットがまだスタンダードモードの間にHypercallへ入金すると、スタンダードの現金として計上され、その残高を再度出金するまで切り替えがブロックされます。 -
AccountにUSDCを入金します。 証拠金モードに応じてルーティングするアプリから入金するか、HyperCore上でAccountアドレスにUSDCを送金します。資金は、HypercallによるHyperCoreの次回スナップショットに反映された時点で証拠金に算入されます。
-
署名キーを設定します。 旧SMウォレットでの承認は引き継がれません。
-
取引します。 オプションのリクエストでは引き続きマネージャーアドレスを
walletとして送信してください。HypercallがそれをPMアカウントへルーティングします。注文タイプ、注文API、署名はスタンダード証拠金と同じです。アプリからのHyperliquidパーペチュアル取引については、Hypercallでのパーペチュアルをご覧ください。
アプリでは、Settings > Margin ModeでPortfolioを選択すると、ステップ2から4が自動で実行されます。アカウントがない場合は作成し、ユニファイドアカウントモードを有効にし、モードを切り替えます。
HypercallはPMアカウントをHyperCore上のエクイティで評価しますが、HyperCoreはユニファイドアカウントモードのAccountについてのみエクイティを公開します。Accountがこのモードでない場合、ステップ4は400 pm_account_not_unifiedで拒否されます。ステップ3を完了し、HyperCoreがモードを確認するのを待ってから再試行してください。
Accountが後にユニファイドアカウントモードから外れた場合、ポートフォリオの読み取りは503 pm_account_equity_pending(HyperCoreがそのAccountのエクイティを一度も公開していない場合は409 pm_account_not_unified)を返し、注文はmissing HyperCore account equity for PM wallet 0x...のようなエラーで失敗します。解決するには、ユニファイドアカウントモードを再度有効にしてください。エラーと拒否理由をご覧ください。
よくある質問
スタンダード証拠金アカウントを稼働させたままにできますか? はい。新しいマネージャーウォレットでPMにオンボーディングし、SMアカウントはそのままにしておいてください。
証拠金モードの切り替えが拒否されたのはなぜですか?
エラーに該当するルールが示されます。ウォレットにAccountがない(または2つ以上ある)、スタンダード残高がある、オープンポジションまたは未約定注文がある、あるいはAccountがまだHyperCoreのユニファイドアカウントモードになっていない(pm_account_not_unified)のいずれかです。新しいウォレットから始める理由をご覧ください。
切り替える前に入金してしまいました。どうすればよいですか? 入金はスタンダードの現金として計上されています。それを出金してから、Portfolioモードに切り替え、Accountに入金してください。
新しいAPIキーは必要ですか? 新しい承認が必要です。オプションのエージェント承認はマネージャーウォレットに紐づいているため、新しいウォレットに対して改めてキーを承認してください。パーペチュアルのAPIウォレットは1つのAccountでのみ有効にできるため、新しいキーを使用するか、先に旧Accountから削除してください(ステップ6)。
PMの証拠金、清算、決済の仕組みはどこで学べますか? ポートフォリオ証拠金、PM証拠金の計算例、証拠金フロア、清算、決済をご覧ください。