メインコンテンツまでスキップ

Beancount での将来のトランザクションの予測

Beancount は、fava.plugins.forecast プラグインを使用して、将来の定期的なトランザクションを予測できます。これにより、給与、家賃、サブスクリプションなどの定期的な収入と支出が財務レポートに与える将来の影響を視覚化できます。

予測プラグインのスクリーンショット

ステップ 1: 予測プラグインの有効化

まず、Beancount レジャーファイルの先頭に次の行を追加して、プラグインを有効にする必要があります。

plugin "fava.plugins.forecast"

ステップ 2: 予測トランザクションの作成

定期的なトランザクションを予測するには、# フラグ ( * または ! の代わり) を使用して単一のトランザクションエントリを作成し、ナレーションに特別な予測タグを追加します。

基本的な構造は次のようになります。

YYYY-MM-DD # "ナレーション [頻度 条件]"
Account:One 100.00 USD
Account:Two -100.00 USD

予測プラグインは、このエントリをテンプレートとして使用して、レポートに将来のトランザクションを生成します。

予測構文の理解

ナレーションの予測タグは、[頻度 条件] という特定の形式に従います。

頻度

頻度 の部分は必須であり、トランザクションが再発する頻度を定義します。すべて大文字でなければなりません。

  • DAILY (毎日)
  • WEEKLY (毎週)
  • MONTHLY (毎月)
  • QUARTERLY (四半期ごと)
  • YEARLY (毎年)

例: 月々の家賃の支払い このトランザクションは、2024 年 1 月から毎月 1 日に発生すると予測されます。

2024-01-01 # "家賃の支払い [MONTHLY]"
Expenses:Housing:Rent 2500.00 USD
Assets:Checking -2500.00 USD

条件 (オプション)

オプションの 条件 を追加して、予測の期間とパターンを制御できます。

1. UNTIL で終了日を設定する 特定の日付で予測を停止するには、UNTIL YYYY-MM-DD を使用します。

  • 例: 今年末に終了するジムのメンバーシップ。

    2024-01-15 # "ジムのメンバーシップ [MONTHLY UNTIL 2024-12-31]"
    Expenses:Health:Gym 80.00 USD
    Assets:Checking -80.00 USD

2. REPEAT で発生回数を制限する トランザクションを特定の回数だけ生成するには、REPEAT n TIMES を使用します。

  • 例: 残り 36 回の自動車ローン。

    2024-01-25 # "自動車の支払い [MONTHLY REPEAT 36 TIMES]"
    Expenses:Transportation:CarPayment 450.00 USD
    Liabilities:Auto-Loan -450.00 USD

3. SKIP で不規則なパターンを作成する 間隔をスキップするには、SKIP n TIME/TIMES を使用します。これは、隔週の給与などに役立ちます。

  • 例: 隔週の給与 (2 週間ごとに発生)。

    2024-01-05 # "隔週の給与 [WEEKLY SKIP 1 TIME]"
    Assets:Checking 3000.00 USD
    Income:Salary -3000.00 USD

実践的な例: 月次予算

複数の予測を組み合わせて、さまざまな収入と支出の流れを含む、予算全体を予測できます。

plugin "fava.plugins.forecast"

; === 収入 ===
2024-01-05 # "隔週の給与 [WEEKLY SKIP 1 TIME]"
Assets:Checking 3000.00 USD
Income:Salary -3000.00 USD

; === 支出 ===
2024-01-01 # "家賃 [MONTHLY]"
Expenses:Housing:Rent 2500.00 USD
Assets:Checking -2500.00 USD

2024-01-01 # "食料品 [WEEKLY]"
Expenses:Food:Groceries 150.00 USD
Assets:Checking -150.00 USD

2024-01-15 # "自動車保険 [QUARTERLY REPEAT 4 TIMES]"
Expenses:Insurance:Auto 450.00 USD
Assets:Checking -450.00 USD

これらのエントリを追加すると、損益計算書純利益 チャートなどのレポートに、予測データが自動的に含まれ、財務の将来を明確に把握できます。

トラブルシューティングとベストプラクティス

  • 予測が表示されない場合

    • plugin "fava.plugins.forecast" がレジャーファイルにあることを確認します。
    • トランザクションに * ではなく # フラグを使用します。
    • 頻度タグにタイプミスがないか確認します (例: [Monthly][MONTLY] ではなく [MONTHLY])。
  • ベストプラクティス

    • 記述的にする: 各予測が何であるかを把握できるように、明確なナレーションを使用します。
    • 定期的にレビューする: 予測を更新して (例: 給与の増加または家賃の変更)、正確性を維持します。
    • 終了条件を使用する: 永続的でないトランザクション (ローンやサブスクリプションなど) の場合は、UNTIL または REPEAT を使用して、無期限に予測されるのを防ぎます。
References: