学習・技術検証用デモ — 本システムは実際の銀行サービスではありません。

公開情報をもとに構築した教育目的のシステムです。実在する個人情報・口座情報・機密情報・認証情報等を入力しないでください。

ミニ銀行ACADEMY SYSTEM LEARNING
教材メニュー
学習進捗0 / 134
あと134項目
ADVANCED · 発展COURSE 09 · BANKING ENGINEERING

銀行エンジニアリング 35:金利・流動性・オペレーショナルリスクの測り方

同じスナップショットから、金利の影響、預金が流出したときの資金繰り、障害による損失を、それぞれ円で表します。式を1つずつ追い、Treasuryと同じ式が使われていることを確かめます。

45 / 55
BANKING ENGINEERING · 銀行エンジニアリング

v8以降に実装した台帳・記帳エンジンなどを実際に動かし、正常時と異常時の両方から銀行システムの構造を学ぶ。

Prerequisite: BANKING SYSTEM

LEARNING GOALS

このページで学ぶこと

  • 純金利収益(NII)の感応度と預金ベータ
  • 流動性バッファと資金不足の調達費用
  • 障害の所要時間を損失に換算する

PLAIN LANGUAGE

まず、ここだけつかむ

1

金利は純金利収益の変化、流動性は流出後の比率と調達費用、オペレーショナルは障害の所要時間から、円で表します。

2

金利と流動性の式は、v13のTreasuryと同じです。両者が一致することをテストで固定しています。

3

4つを単純に足した合計は、相関や分散の効果を考えていない、と明記します。

DIFFICULT PARTS, STEP BY STEP

難しいポイントを、順番にほどく

専門用語を覚えることより、「なぜ必要か」「このシステムのどこで使うか」を理解することが目標です。

01

預金ベータ

やさしく言うと

基準金利が動いたとき、預金金利がどれだけ追随するかの割合です。

なぜ必要?

預金の利息費用の増え方を決めるためです。

Minibankでは

treasury.policy の deposit_beta(30%)。

02

流動性バッファ

やさしく言うと

残存預金に対して持つべき、すぐ払える資金の割合です。

なぜ必要?

預金が出ていっても払えるようにするためです。

Minibankでは

20%。下回ると不足分の調達が必要。

03

重大度の重み

やさしく言うと

障害の深刻さに応じた倍率です。

なぜ必要?

重い障害ほど損失が大きいと見積もるためです。

Minibankでは

SEV1=4、SEV2=2、SEV3=1(架空)。

Level 1 基礎:3つのリスクは、原因も単位も違う

リスク起きることMiniBankでの数字
金利(市場)金利が動くと、受け取る利息と支払う利息の差が変わる純金利収益(NII)の年間の変化
流動性預金が急に出ていき、払えるお金が足りなくなる流出後の流動性比率と、不足分を借りる年間の費用
オペレーショナル障害や事務の失敗で損失が出る障害の所要時間から見積もる損失

Level 2 銀行業務:例題

普通預金1,000万円、定期預金200万円、流動資産250万円(中央銀行預け金250万円)、コールローン700万円の銀行を考えます(基準金利0.25%、調達スプレッド0.10%、流動性の最低バッファは残存預金の20%)。

  • 金利が上がると得をするのは、この銀行が『金利に敏感な資産』を多く持っているからです。リスクの比較では、純金利収益の『減少』だけを損失として数え、増えるときは0とします。
シナリオ計算結果
預金が20%流出流出 200万円。流動資産は 250万 − 200万 = 50万円。バッファは (800万 + 200万) × 20% = 200万円不足 150万円。流動性比率は 5%(警戒水準の20%を下回る)
不足分の調達費用150万円 × 調達金利 0.35%年間 5,250円
金利が+1.00%受け取る利息は増え、預金の利息は預金ベータ(30%)ぶんだけ増えるこの例では、純金利収益は年間 65,000円増える

Level 3 システム:MiniBankでの実装

  • risk.alm_calc は、v13のTreasuryの式(treasury.run_scenario)と同じ計算を、書込みのない純粋な関数にしたもの。同じ入力で両方を実行し、結果が一致することをテストで固定している。式が片方だけ変わると、テストが失敗する
  • 預金の金利は、v15の価格の版が営業日に定める実際の金利(普通預金の年利、定期預金の加重平均の契約金利)を使う。価格が欠けたときだけ、v13の市場の仮定に置き換え、警告を残す
  • 再評価ギャップ(1年以内に金利が見直される資産 − 負債の累積)も併せて示す
  • risk.operational_calc:所要時間(分)→時間 × 1時間あたりの損失 × 重大度の重み × 障害の倍率。継続中のインシデントは、スナップショットを取った時刻までで数え、『継続中』の注意を残す
  • 重大度の重みは SEV1=4、SEV2=2、SEV3=1、1時間あたりの損失は50,000円(承認済みの版。いずれも教育用の仮定)

異常時:流動性が警戒水準を下回る

段階内容
症状預金流出のシナリオで、流動性の欄に『下回り』と出る
読み方実際に流出が起きたら、警戒水準を満たすために不足分を借りる必要がある。その費用が『不足資金の調達費用』
対応の例コールローンの運用を減らして預け金に戻す、定期預金の満期を分散する、を対策案として記録する(実際の取引は自動では変わらない)

Level 4 アーキテクチャ:数字をそのまま足さない

4つのリスクの円の数字は、同じ単位に並べられますが、単純に足すと、リスクどうしの相関や分散の効果が無視されます。MiniBankはそのことを結果に明記し、合計を『単純合算』と呼びます。規制上の比率(LCRなど)とは別物です。

どこを確認すればよいか

  • 管理画面『リスク管理』:シナリオ別の比較表(金利・流動性・障害の欄)
  • 運用センター:継続中のインシデントが、注意としてスナップショットに残る

CHECK YOUR UNDERSTANDING

3問で理解チェック

答えを頭の中で考えてから、各項目を開いて確認してください。

Q1金利が上がると純金利収益はいつも減りますか?
答え

いいえ。金利に敏感な資産が多ければ増えます。リスクとして数えるのは減少分だけです。

Q2継続中のインシデントは、どう数えますか?
答え

スナップショットを取った時刻までの時間で数え、『継続中』の注意を残します。

Q3リスクの合計は規制上の比率ですか?
答え

いいえ。教育用の単純合算です。

ここまで読めましたか?

完全に暗記する必要はありません。大切な考え方を説明できそうなら押してください。

SOURCE TRAIL

根拠と関連教材

CURRENT IMPLEMENTATIONは確認したrepository内の実装です。HISTORICAL IMPLEMENTATIONは導入・修正の履歴で、後続migrationによる再定義があり得ます。RELATED LESSONは教材への案内で、実装の一次Sourceではありません。ASSUMPTIONは仮定、UNKNOWNは未確認を表します。

確認基点: d02eae8914f39cbf06bfe422dc39c71886f82b3e / 2026-09-11。稼働環境への適用確認: UNKNOWN。パス実在の自動検査と、記述した技術的事実の確認は別です。

Implementation Status: IMPLEMENTED IN MINIBANK(この教材が扱うコードの範囲)

  • RELATED LESSON/docs/be-rate-shock金利ショックの試算(v13)
  • RELATED LESSON/docs/be-deposit-outflow-scenario預金流出の試算(v13)
  • RELATED LESSON/docs/be-incident-recoveryインシデントと復旧
  • CURRENT IMPLEMENTATIONsupabase/migrations/20260930140000_v18_risk.sqlrisk.alm_calc金利・流動性:v13のTreasuryと同じ式の、書込みのない版
  • CURRENT IMPLEMENTATIONsupabase/migrations/20260930140000_v18_risk.sqlrisk.operational_calcオペレーショナルリスク:所要時間 × 1時間の損失 × 重大度の重み
  • CURRENT IMPLEMENTATIONsupabase/migrations/20260930140000_v18_risk.sqlrisk.compute凍結した入力・パラメータ・シナリオから結果を作る純粋な関数
  • CURRENT IMPLEMENTATIONscripts/banking/v18-risk.test.mjs式の手計算、v13との一致、凍結と再現、欠測、元帳を書かないこと、決裁のDBテスト