mcpField
L
lending

lending

github.com/joellewisその他218709 回インストール15 週間前に更新
リポジトリ

lending について

借り手やファイナンシャルプランナー向けの住宅ローン分析スキルです。ローン費用と審査指標を解説し、返済計算、繰り上げ返済、PMI、借り換えなどに使える数式とPythonの実装を含みます。

主な機能

  1. 01固定金利とARMの分析
  2. 02返済額と利息の計算
  3. 03繰り上げ返済の効果推定
  4. 04ポイントとAPRの比較
  5. 05LTV、CLTV、PMIの分析
  6. 06Python計算モジュール

活用シーン

  1. 0115年ローンと30年ローンの比較
  2. 02繰り上げ返済による節約額の推定
  3. 03ポイント購入の損益分岐点の評価
  4. 04住宅ローン費用と審査条件の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/joellewis/finance_skills --skill lending

インストール後、Claude Code で/lendingを入力して読み込まれたか確認します。

同梱ファイルscripts/lending.py

詳細

ローン分析

基本概念

固定金利型住宅ローン

ローンの返済期間中、金利と毎月の返済額は一定です。

  • メリット: 返済額を予測しやすい、金利上昇への備えになる、家計の計画を立てやすい
  • デメリット: ARMより当初の金利が高い、金利が低下しても恩恵を受けられない(借り換えが必要)
  • 最も一般的な返済期間:30年と15年の固定金利
変動金利型住宅ローン(ARM)

当初の一定期間は金利が固定され、その後は指数にマージンを加えた値を基準に定期的に変動します。

  • 表記: 5/1 ARMは5年間固定され、その後は毎年金利が見直されます。7/1や10/1も同様です。
  • 完全連動金利: 指数(例:SOFR、1年物米国債)+マージン(例:2.75%)
  • 金利上限により、極端な金利変動を抑えます。
    • 初回見直し時の上限(例:2%):初回の見直しで許容される最大変動幅
    • 定期見直し時の上限(例:2%):各見直し期間で許容される最大変動幅
    • 生涯上限(例:5%):当初金利からの最大上昇幅
  • ARMが適している可能性がある場合: 固定期間の終了前に売却または借り換えを予定している場合、金利の低下を見込んでいる場合、または金利変動を許容できる場合
毎月の返済額の計算

固定金利ローンの標準的な元利均等返済の計算式:

  • PMT = P × [r(1+r)^n] / [(1+r)^n - 1]
  • ここで、P = 元金(ローン額)、r = 月利(年利 / 12)、n = 総返済回数(返済期間の月数)
  • 各回の返済額は、利息(減少)と元金(増加)に分かれます。
    • 利息分:残高 × 月利
    • 元金分:PMT - 利息分
支払利息の総額
  • 利息の総額 = (n × PMT) - P
  • 6.5%の金利で$400Kを30年間借り入れる場合:PMT = $2,528、総返済額 = $910,178、利息の総額 = $510,178
繰り上げ返済

追加の元金返済により、残高が減少し、返済期間が短縮され、利息の総額も減少します。

  • 追加返済した金額はすべて元金の返済に充てられます。
  • 効果は複利的に積み重なります。早い時期の追加返済ほど、後の時期の追加返済より利息を多く節約できます。
  • 方法:一括返済、毎月一定額の追加返済、隔週払い(半額の返済を年26回行うと、年間で通常の返済13回分になります)
住宅ローンのポイント

ローンの金利を下げるために前払いする利息です。

  • 1ポイント = ローン額の1%(例:$400Kのローンで1ポイント = $4,000)
  • 通常、金利を約0.25%引き下げます(貸し手や市場によって異なります)。
  • 損益分岐点の計算: ポイント費用 / 毎月の節約額 = 回収に必要な月数
  • ポイントの購入が適している場合:損益分岐点を超える期間にわたってローンを保有する予定がある場合、控除項目を個別に申告する場合(購入した年にポイントが税控除の対象となることがあります)
APRと金利の比較
  • 金利: 元金を借り入れる費用を年率で表したもの
  • APR(実質年率): 金利に特定の手数料や費用(融資手数料、ポイント、PMI)を加え、ローン期間にわたって年率換算したもの
  • APR > 金利(手数料がある場合は常に成立します)
  • 手数料の仕組みが異なるローンの提案を比較するには、APRのほうが適切な指標です。
HELOC(ホーム・エクイティ・クレジットライン)

住宅の純資産を担保とするリボルビング型の融資枠です。

  • 合算LTV(CLTV): (第一順位住宅ローンの残高 + HELOCの融資枠)/ 住宅価格
    • ほとんどの貸し手は、CLTV ≤ 80~90%を条件とします。
  • 借入期間(通常10年):柔軟に借り入れと返済ができ、多くの場合、利息のみを支払います。
  • 返済期間(通常20年):新たな借り入れはできず、元利均等で返済します。
  • 変動金利: 通常、プライムレート + マージンで、市場に応じて変動します。
  • 利用例: 住宅の改修、債務の一本化、緊急時の予備資金(ただし、主な緊急資金としては使わないでください)
  • リスク: 住宅が担保です。債務不履行になると、差し押さえの対象になります。
ローンの審査基準
  • FICO スコア: 通常型ローンは 620 以上、FHA は 580 以上、最良の金利には 700 以上
  • DTI: フロントエンド ≤ 28%、バックエンド ≤ 36~43%(プログラムによって異なります)
  • LTV(ローン対価値比率): ローン金額 / 物件価値。LTV が低いほどリスクが低く、条件が良くなります
  • 準備資金: クロージング後に流動資産として保有する支払い月数分の資金(通常 2~6 か月分)
  • 雇用・収入: 安定した収入履歴が必要で、通常は 2 年分の書類が必要です
PMI(民間住宅ローン保険)

通常型ローンの LTV が 80%を超える場合に必要です。

  • 費用: ローン金額の年 0.5~1.5%で、月々の支払いに加算されます
  • 解約: 当初の償却スケジュールに基づき、LTV が 78%になると自動的に解約されます。LTV が 80%になった時点で申請による解約も可能です
  • 回避策: 頭金 20%、ピギーバックローン(80/10/10)、貸し手負担の PMI(より高い金利)、VA ローン(PMI なし)
  • PMI は借り手ではなく貸し手にメリットをもたらします。借り手にとっては純粋な費用です
15 年ローンと 30 年ローンの比較
  • 15 年: 月々の支払いは高く、金利は低め(通常 0.5~0.75%低い)で、総利息は大幅に少なくなり、エクイティを早く築けます
  • 30 年: 必要な月々の支払いが低く、柔軟性が高い一方、総利息費用は高くなります
  • ハイブリッド方式: 柔軟性を確保するため 30 年ローンを組み、15 年ローンの場合と同じように繰り上げ返済します

主な計算式

計算式表現用途
月々の支払いPMT = P × [r(1+r)^n] / [(1+r)^n - 1]固定金利ローンの支払い
総利息n × PMT - P借入の総費用
k 回支払い後の残高B_k = P × [(1+r)^n - (1+r)^k] / [(1+r)^n - 1]任意の時点での残高
ポイントの損益分岐点ポイント費用 / 月々の節約額ポイント費用を回収するまでの月数
LTVローン金額 / 物件価値リスクと PMI の評価
CLTV(第一順位抵当権 + HELOC) / 住宅価値合算レバレッジ
ARM の完全連動金利指数 + マージン固定期間終了後の金利

計算例

例 1:30 年ローンと 15 年ローンの比較

条件: 住宅価格 $500K、頭金 $100K、ローン金額 $400K。30 年ローンの金利:6.5%。15 年ローンの金利:5.9%。 計算: 月々の支払い、総利息、利息の節約額。 解答:

  1. 30 年ローンの月々の支払い: PMT = $400,000 × [0.005417 × (1.005417)^360] / [(1.005417)^360 - 1]
    • r = 6.5%/12 = 0.005417、n = 360
    • PMT = 月額 $2,528
  2. 30 年ローンの総利息: 360 × $2,528 - $400,000 = $510,178
  3. 15 年ローンの月々の支払い: PMT = $400,000 × [0.004917 × (1.004917)^180] / [(1.004917)^180 - 1]
    • r = 5.9%/12 = 0.004917、n = 180
    • PMT = 月額 $3,354
  4. 15 年ローンの総利息: 180 × $3,354 - $400,000 = $203,694
  5. 支払い額の差: $3,354 - $2,528 = 15 年ローンのほうが月額 $826 多い。
  6. 利息の節約額: $510,178 - $203,694 = 15 年ローンを選ぶことで $306,484 節約できます。
  7. 15 年ローンは月々の支払いが 33%多い一方、総利息を 60%節約できます。
例 2:追加支払いの影響

条件: 金利 6.5%の $300K の 30 年住宅ローン(月々の支払い = $1,896.20)。借り手が元金に月額 $200 を追加し、合計支払い額を月額 $2,096.20 にします。 計算: 短縮できる期間と利息の節約額。 解答:

  1. 追加支払いをしない場合: 360 か月、総利息 = 360 × $1,896.20 - $300,000 = $382,633。
  2. 新しい返済期間(閉形式による推定): r = 0.065/12 = 0.005417 のとき、n = -ln(1 - P × r / PMT_total) / ln(1+r):
    • n = -ln(1 - $300,000 × 0.005417 / $2,096.20) / ln(1.005417) ≈ 276.3 回の支払い。
  3. 正確な償却計算(月ごとのシミュレーション。最終支払いは一部のみ):277 か月 = 23 年 1 か月(約 23.1 年)で完済し、総利息は $279,185 です。閉形式の計算結果と正確な返済スケジュールは、ほぼ一致します。
  4. 利息の節約額: $382,633 - $279,185 = $103,449。
  5. 短縮できる期間: 360 - 277 = 83 か月 ≈ 6.9 年。
  6. 追加で支払う元金の合計 ≈ 276 × $200 = $55,200。追加支払い 1 ドルあたりの利息節約額:$103,449 / $55,200 ≈ $1.87。

よくある落とし穴

  • 金利ではなくAPRを比較すること。APRには手数料が含まれるため、より正確に費用を比較できます
  • ARMの当初優遇金利により、固定期間終了後に金利が上昇して調整されると、返済額が急増すること
  • ポイント購入の損益分岐点:損益分岐点より前に売却または借り換えをする場合、ポイントを購入しても得になりません
  • 金利上昇局面では、HELOCの変動金利にリスクがあります。金利上昇に備えて予算を組んでください
  • PMIの費用により、高LTVローンは見かけ以上に割高になります。毎月の総費用にPMIを含めてください
  • 機会費用を無視すること:3~4%の住宅ローンを繰り上げ返済する場合と、期待リターン7~10%で投資する場合を比較してください
  • 複数の貸し手に見積もりを依頼しないこと。同じ借り手でも、金利の見積もりは0.5%以上異なる場合があります
  • 借り換え時に返済期間を30年に戻すこと。金利が下がっても、完済までの総期間が延びます
  • 借り換えの判断で諸費用を無視すること(debt-managementの借り換え損益分岐点を参照)

相互参照

  • debt-management(wealth-managementプラグイン):借り換え分析、債務返済と投資の比較、DTI計算
  • emergency-fund(wealth-managementプラグイン):ローンの審査と財務上の安全性に必要な十分な準備資金
  • tax-efficiency(wealth-managementプラグイン):住宅ローン利息の控除、ポイントの控除
  • savings-goals(wealth-managementプラグイン):頭金の貯蓄は、目標に基づく一般的な貯蓄目標です
  • liquidity-management(wealth-managementプラグイン):ほとんどの家計のキャッシュフロー計画において、住宅ローンの返済は最大の固定支出です

スクリプトの実行

参照実装を直接実行します。

uv run scripts/lending.py          # PEP 723 header resolves dependencies automatically
python3 scripts/lending.py         # after: pip install numpy scipy

引数なしで実行すると、返済額の計算、繰り上げ返済の影響、LTV/PMI、DSCR、バルーン返済、借り換え分析、ポイント購入の損益分岐点、ARMの金利リセットを扱うデモが表示されます。--verifyを使用すると、デモの数値を再計算し、このスキルの計算例と一致することを検証します(一致すればPASS、不一致ならFAILを表示し、不一致の場合はゼロ以外の終了コードで終了します)。利用可能なクラスと関数を一覧表示するには、--helpを使用してください。このファイルは、単独で実行するよりも、モジュールとしてインポートすることを主な用途としています(from lending import LendingAnalysis)。

コメント