銀行エンジニアリング 21:預金が20%流出すると、銀行に何が起きるか
Deposit → Liquidity → Funding → Funding Cost → Accounting → Profitability。架空の教科書銀行を使い、MiniBankのシナリオ計算と同じ数字で因果関係を1段ずつ追います。
v8以降に実装した台帳・記帳エンジンなどを実際に動かし、正常時と異常時の両方から銀行システムの構造を学ぶ。
Prerequisite: BANKING SYSTEMLEARNING GOALS
このページで学ぶこと
- 預金流出が流動性と調達に与える影響
- 調達コストが利益(NII)を下げる仕組み
- シナリオが示す仕訳(会計への影響)
PLAIN LANGUAGE
まず、ここだけつかむ
預金が流出すると流動資産が減り、方針の水準を下回った分を借りる必要が出ます。
借入の利息と預け金の減少で、資金利益(NII)が下がります。
流出が大きいと流動資産がマイナスになり、そもそも払い戻しができなくなります。
DIFFICULT PARTS, STEP BY STEP
難しいポイントを、順番にほどく
専門用語を覚えることより、「なぜ必要か」「このシステムのどこで使うか」を理解することが目標です。
Deposit Outflow
預金が引き出されて出ていくことです。
流動性リスクの主な原因だからです。
deposit_outflow_pct(0〜100%)。
Funding Need
方針の流動性を保つために必要な借入額です。
足りない流動性を補うためです。
必要な流動性 − 流出後の流動資産(0未満は0)。
Funding Cost
借入に払う利息です。
流動性の確保が利益を削るためです。
必要調達額 × 借入金利(基準金利+スプレッド)。
例題:架空の教科書銀行
| 項目 | 金額 | 補足 |
|---|---|---|
| 普通預金 | 1,000万円 | 金利0.02% |
| 定期預金 | 200万円 | 金利0.10%(満期まで固定) |
| 流動資産(中央銀行預け金) | 250万円 | 基準金利0.25%が付く |
| コールローン(長期の運用) | 700万円 | 金利0.30%、30日以内には戻らない |
| 方針 | 残存預金の20%以上の流動性を保つ | treasury.policy |
1段ずつ追う(BASEシナリオ・預金流出20%)
利益が減る理由は2つあります。預け金が減って受取利息が減ること、そして新しい借入の利息を払うことです。預金の利息が減る効果(800万円分に減る)はありますが、それより小さいのです。
- 01預金流出:1,000万円 × 20% = 200万円(普通預金は800万円に)
- 02流動性:250万円 → 50万円(流動性比率 5.0%)
- 03必要な流動性:(800万+200万) × 20% = 200万円 → 不足150万円を調達
- 04調達コスト:150万円 × 0.35%(基準金利0.25%+スプレッド0.10%)= 年5,250円
- 05資金利益(NII):年23,250円 → 17,150円(−6,100円)
会計への影響(このシナリオが意味する仕訳)
BSでは預金(負債)が借入(負債)に置き換わり、PLでは資金調達費用が増えます。シナリオ計算自体は記帳しません。実際に調達するときは、画面の「コールマネーで調達」で記帳します。
| 出来事 | 借方 | 貸方 | 金額 |
|---|---|---|---|
| 預金流出 | 2100 普通預金 | 1100 中央銀行預け金 | 200万円 |
| 不足資金の調達(TREASURY_BORROW) | 1100 中央銀行預け金 | 2400 コールマネー | 150万円 |
| 借入利息・1年分(TREASURY_FUNDING_INTEREST) | 5200 資金調達費用 | 1100 中央銀行預け金 | 5,250円 |
異常時:流出が大きすぎると支払えない
| 流出率 | 流動資産の残り | 必要調達額 | 調達コスト(年) | NIIの変化(年) |
|---|---|---|---|---|
| 0% | 250万円 | 0円 | 0円 | 0円 |
| 20% | 50万円 | 150万円 | 5,250円 | −6,100円 |
| 40% | −150万円(資金ショート) | 310万円 | 10,850円 | −12,300円 |
金利が上がっていたら(RATE_UP_100シナリオ)
同じ20%流出でも、基準金利が1.25%の環境では借入金利が1.35%になり、調達コストは年20,250円に増えます(BASEの約4倍)。流動性の問題と金利の問題は同時に起こり得ます。
Level 3 システム:MiniBankでの実装
- treasury.run_scenario() が上の順で計算し、入力(市場シナリオ・方針・ポジション)と結果を treasury.scenario_runs に追記専用で保存する
- What-if入力を使うと、DBの内容に関係なく同じ数字が再現できる(この例題はDBテストで固定されている)
- 「基準比」は、同じ市場シナリオで流出0・追加の金利変化0の場合との差
どこを確認すればよいか
- 管理画面「Treasury・ALM」→ 教科書の架空銀行で試す
- 結果の「会計への影響」
CHECK YOUR UNDERSTANDING
3問で理解チェック
答えを頭の中で考えてから、各項目を開いて確認してください。
Q1例題で20%流出したときの必要調達額は?
150万円です。
Q2そのときの年間の調達コストは?
5,250円(0.35%)です。
Q340%流出で流動資産がマイナスになるとは?
手元の資金だけでは払い戻しができない(資金ショート)という意味です。
完全に暗記する必要はありません。大切な考え方を説明できそうなら押してください。
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-maturity-gap満期と資金ギャップ
- RELATED LESSON/docs/be-financial-statementsBS・PL
- CURRENT IMPLEMENTATION
supabase/migrations/20260924150000_v13_treasury_alm.sqltreasury.run_scenario預金流出・金利ショックのシナリオ計算 - CURRENT IMPLEMENTATION
src/domain/platform/treasury.tsscenarioChain()シナリオの因果関係の表示順 - CURRENT IMPLEMENTATION
scripts/banking/v13-treasury.test.mjs20%流出の例題、単調性、金利上昇、資金取引のBS/PL反映のDBテスト