LST×Perp Funding 裁定:stETHとETHのデルタ中立で利回りを狙う実践ガイド(初心者向け)

システムトレード

本稿は教育目的の一般的な情報であり、特定の銘柄・取引所・サービスの利用や投資を推奨するものではありません。自己判断・自己責任で実施してください。

テーマ概要:LST×Perp Funding 裁定とは

LST(Liquid Staking Token:例としてstETHなど)を保有してステーキングからの利回りを得ながら、同時にETHのパーペチュアル先物(以下、Perp)を等価額だけショートして価格変動を相殺し、Funding(資金調達料)の受け取りと、LSTとETHの価格関係(ディスカウント/プレミアム)の収斂を狙うデルタ中立型の多脚戦略です。初心者の方でも理解できるよう、必要な概念から手順、発注、評価、リスク管理まで徹底的に分解します。

この戦略で狙うリターンの内訳

ざっくり言うと、期待収益は以下の足し算(から費用を差し引き)です。

  1. LSTの利回り(例:stETHのリステーキングやバリデータ報酬の配分)
  2. PerpのFunding受取(多くの相場局面でロング優勢=ショート側受取になることがある)
  3. LSTとETHの価格差(ディスカウント)の収斂益:割安時にLSTを買い、割高に戻れば差益が出ます。

ここから、手数料・スリッページ・借入コスト・ブリッジ費用・税コストなどを差し引いたものがネットの実現リターンになります。初心者はまず、費用を見落とさない癖をつけてください。

前提知識(最短で理解)

LST(Liquid Staking Token)

ETHをステークすると、通常はロックされます。LSTは、ステークしたETHの受益権をトークン化して流動化したものです。価格は基本的にETHに連動しますが、需給によりETHに対してディスカウントやプレミアムが発生します。また、利回りの付与方式(リベース型/値上がり型)により損益計算の見え方が変わる点に注意します。

Perp(無期限先物)のFunding

Perpは満期がない先物で、Fundingというロング・ショート間の定期的な清算金で価格を現物に近づけます。多くの場面でロングがFundingを支払う設計のため、ショートで受け取りになる時間帯・相場が存在します(ただし、相場状況により逆転もあります)。

デルタ中立

価格変動の影響(デルタ)をゼロに近づけることです。LSTロングETH Perpショートを等価額で持つことで、ETHの上げ下げによる評価損益を極力打ち消します。完全にゼロにはできないので、乖離やリバランスが必要です。

戦略の全体像:プロセス設計

  1. 土台選定:LST銘柄(例:stETHなど)、使うチェーン、取引所(CEX/DEX)を決めます。初心者はまず、オンチェーンとPerpショートの管理が別レールになることを理解しましょう。
  2. 口座とウォレット準備:中央取引所の先物口座、自己保管ウォレット、ブリッジ環境、手数料トークン(ガス料)を用意します。
  3. 建て玉サイズ設計:総資金のうち、流動性・手数料・ガス・スリッページを引いた実投入可能額を算出し、LSTロング=1、Perpショート=1のデルタ中立比率でレッグを組みます。
  4. 初期発注LSTの買い指値+TWAP推奨、Perpショート成行+直後のヘッジ指値で滑りを短縮。順序はショート→現物ロングを基本とし、ショート先行で急騰時のデルタ露出を抑えます。
  5. リバランス:価格が動けばデルタがズレます。±2〜3%の乖離で再ヘッジする単純ルールから始めましょう。
  6. イグジット
    • ディスカウント回帰の利確:LSTが割安→中立に戻ったら一部または全部クローズ。
    • Funding環境悪化:受取が細る/支払いが常態化したら縮小。
    • 想定外リスク顕在化:スマートコントラクトやカストディの重大インシデント発生時は早期退避。

数式でざっくり把握:損益ブレークダウン

Net PnL ≒ (Y_LST × Notional × 保有日数/365)
        + Σ(Funding_received_per_interval × Notional)
        + (α × Notional)  ← LST-ETHのディスカウント/プレミアム回帰
        − (Fees + Slippage + Gas + Borrow + Taxなど)

ここでαはLSTとETHの価格関係の収斂に由来する超過リターンの近似項です。初心者はまず、各費用の上限を事前に積み上げて、最悪でも耐えられるサイズで入ることを徹底してください。

具体例(数値シミュレーション)

例:初期元本100万円。LSTがETHに対して2%ディスカウント、想定年率利回り3%、Perpの平均Funding受取想定が年率2%相当、コスト合計年率換算で1.2%と仮定します。

  • 期待総収益(年率)≒ 3%(LST) + 2%(Funding) + 2%(ディスカウント回帰) − 1.2%(コスト) = 5.8%
  • 価格変動の方向性に賭けないため、ボラティリティ相場でもブレが相対的に小さくなります(ただしゼロではありません)。

ディスカウントが拡大する局面では一時含み損が出ますが、資金管理とリバランスでメンタルを守りましょう。サイズを小さくしても戦略は機能します。

実務フロー(初心者用チェックリスト)

  1. 取引所KYC・先物口座開設、自己保管ウォレット作成、秘密鍵バックアップ。
  2. 資金をオンチェーンへブリッジ(少額テスト→本番)。
  3. LST購入:板の厚み、プールの深さを確認して少量分割。
  4. 同額のETH Perpショートを建てる(USDT建て/コイン建ていずれでもOK、証拠金余力を厚めに)。
  5. デルタ検証:合計ETH換算のネットポジションが±1〜2%以内かを確認。
  6. Fundingカレンダー確認:受取が続く環境か、直近の転換リスクはないか。
  7. 手数料レート、借入・ガス費を表にし、日次で損益を記録。
  8. 乖離が広がったら段階的に増し玉/縮小。常に証拠金維持率>300%目安。

主要リスクと対処

1. LSTのスマートコントラクト/カストディリスク

技術的欠陥や運用不備がゼロではありません。対策は、分散(複数LSTに分ける)・サイズ抑制・監査報告の確認です。

2. ディスカウント拡大(短期含み損)

需給悪化でETHに対してLSTがさらに割安化することがあります。証拠金余力を高く保つ/段階的エントリーで乗り切ります。

3. Fundingの逆転

相場環境により、ショート側が支払うフェーズが続く場合があります。しきい値管理(受取が年率1%未満なら縮小)などのルールを用意してください。

4. 清算リスク(Perp側)

急騰時にショートが踏み上げられると清算の危険があります。レバレッジは低倍数(1〜2倍)・追証不要の範囲・自動カットロスを徹底します。

5. オペレーション・ミス

チェーン間ブリッジ先の誤送付、ガス不足、誤発注などのヒューマンエラーは頻出です。少額テスト→メインの手順をルーチン化してください。

実装:初心者向けデルタ中立の「考え方」をEAに落とす(MQL4)

MT4上ではDeFiレッグ(LST保有)を直接管理できませんが、「金利(スワップ)と先物的な乖離に着目してショートを優先する」という考え方は、ETHUSDのCFDなどでも訓練できます。以下は教育用の簡易EAテンプレートです。ブローカー仕様により動作は異なりますので、デモ口座で検証してください。

//+------------------------------------------------------------------+
//|  LST-Perp-Funding Style Short Bias EA (Training Template)        |
//|  For educational use. Test on demo first.                        |
//+------------------------------------------------------------------+
#property strict

input string  Sym            = "ETHUSD";     // 取引シンボル(ブローカー仕様に合わせる)
input double  RiskPerTrade   = 0.01;         // 口座残高に対する1トレードのリスク比率
input double  MaxSpreadPts   = 50;           // 許容スプレッド(ポイント)
input double  RebalancePct   = 2.0;          // 価格乖離時のリバランス間隔(%)
input double  StopATRMult    = 3.0;          // 損切り(ATR倍率)
input int     ATRPeriod      = 14;           // ATR期間
input double  MinSwapShort   = 0.0;          // ショート時に受取期待のスワップ閾値(>=ならOK)
input bool    OnlyOnePos     = true;         // 常に1ポジに限定

double atr;

int OnInit(){
   return(INIT_SUCCEEDED);
}

void OnTick(){
   if(Symbol() != Sym) return;
   if(!IsTradeAllowed()) return;

   // スプレッドチェック
   double spread = (MarketInfo(Sym, MODE_ASK) - MarketInfo(Sym, MODE_BID)) / MarketInfo(Sym, MODE_POINT);
   if(spread > MaxSpreadPts) return;

   // ATR算出(簡易)
   atr = iATR(Sym, PERIOD_M15, ATRPeriod, 0);
   if(atr <= 0) return;

   // スワップ(ショート側)チェック:受取期待であること
   double swapShort = MarketInfo(Sym, MODE_SWAPSHORT);
   if(swapShort < MinSwapShort) return;

   // 既存ポジ確認
   int total=0; int ticket=-1; int dir=0; double openPrice=0;
   for(int i=OrdersTotal()-1; i>=0; i--){
      if(!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
      if(OrderSymbol()==Sym && OrderMagicNumber()==123456){
         total++; ticket = OrderTicket(); dir = OrderType(); openPrice = OrderOpenPrice();
      }
   }

   // リバランス(価格が一定%動いたら建て直し)
   double mid = (MarketInfo(Sym, MODE_ASK)+MarketInfo(Sym, MODE_BID))/2.0;
   if(total>0){
      double movePct = MathAbs(mid - openPrice) / openPrice * 100.0;
      if(movePct >= RebalancePct){
         // 一旦クローズ
         OrderClose(ticket, OrderLots(), (dir==OP_SELL?MarketInfo(Sym, MODE_ASK):MarketInfo(Sym, MODE_BID)), 5);
         total=0;
      }
   }

   // エントリー:ショート・バイアス(教育用)
   if(total==0){
      double stop = mid + StopATRMult * atr; // ショートの損切り
      double lot  = CalcLotForRisk(stop - mid);
      if(lot > 0){
         int tk = OrderSend(Sym, OP_SELL, lot, MarketInfo(Sym, MODE_BID), 5, stop, 0, "LST-Funding-Style", 123456, 0, clrRed);
      }
   }
}

double CalcLotForRisk(double riskPrice){
   if(riskPrice <= 0) return(0);
   double balance = AccountBalance();
   double riskAmt = balance * RiskPerTrade;
   double tickVal = MarketInfo(Sym, MODE_TICKVALUE);
   double tickSz  = MarketInfo(Sym, MODE_TICKSIZE);
   if(tickVal <=0 || tickSz <=0) return(0);
   double lot = (riskAmt / (riskPrice / tickSz * tickVal));
   // ブローカー最小・刻みに丸め
   double minLot = MarketInfo(Sym, MODE_MINLOT);
   double lotStep= MarketInfo(Sym, MODE_LOTSTEP);
   double maxLot = MarketInfo(Sym, MODE_MAXLOT);
   lot = MathMax(minLot, MathMin(maxLot, MathFloor(lot/lotStep)*lotStep));
   return(lot);
}
//+------------------------------------------------------------------+

このEAは、「受取スワップ(=金利収益の近似)を確認しつつ、価格が動きすぎたら建て直す」という訓練用の雛形です。実際のLST×Perp戦略では、LST側はオフチェーン/オンチェーン管理になるため、ポジション台帳を外部で統合し、デルタずれを監視する必要があります。

バックテストと検証

MT4でのCFDショート訓練

Strategy TesterでETHUSDの過去データを使い、上記EAのパラメータ(RebalancePct、StopATRMult、MinSwapShortなど)を最適化します。目標は、最大ドローダウン/平均取引コスト/保有日数分布の把握です。

LSTレッグのシミュレーション

オンチェーンのLST価格データ(ETH建て)とPerpのFunding履歴を日次に落とし、等価額ヘッジ・リバランス・費用控除を実装したスプレッドシートを作成します。最初は月次の粗い粒度で良いので、「どの費用がボトルネックか」を把握しましょう。

発注オペレーションの実務ポイント

  • 分割発注:固まった数量で一気に出すと滑ります。TWAPまたは階段指値で薄く刺すのが基本です。
  • ヘッジの順序:ショート→ロングの順。想定と逆に飛んだ場合の露出時間を最小化します。
  • 証拠金維持率:強制ロスカットの基準を確認し、常に3倍以上の余力を確保します。
  • Funding転換の兆候:板の傾き(買い急ぎ)、OI急増、現物プレミアム拡大はロング過多のサインになりやすいですが、逆転も起こります。事前ルールで縮小を。
  • 税・会計:居住国のルールに依存します。実現損益の計上タイミングとコストの取り扱いを税理士に確認してください。

スケールと複線化

戦略規模を拡大したくなったら、複数のLST・複数の取引所・複数チェーンで分散します。だだし、オペレーション複雑度が急増するため、台帳・自動計算・アラートの整備が前提です。最初は1レッグずつの拡張を推奨します。

よくある質問(FAQ)

Q1:ディスカウントはどのくらいの水準で入ればいいですか?
A:初心者は直近1年の分布を見て、下位20%タイル程度まで広がった時の小口分割から始めると良いです。

Q2:Fundingがマイナスに転じたら?
A:受取年率が1%未満になったらポジションを半分に、マイナスが続くなら一旦クローズを検討します。

Q3:完全に価格変動を打ち消せますか?
A:いいえ。完全なゼロは不可能です。デルタは動くため、定期的なリバランスが必須です。

まとめ

LST×Perp Funding裁定は、方向性に賭けないデルタ中立の発想で、小さく安全に学びながら利回り源泉を積み上げることを目指す戦略です。鍵は、費用の厳密管理・十分な証拠金・ルール化されたリバランスにあります。まずは少額・デモ・シミュレーションから、手順を体に染み込ませてください。

コメント

タイトルとURLをコピーしました