Jay Doe

Financial Planner

A system to project finances, layering different accounts, constraints and strategies

Overview

I've always planned my finances in a spreadsheet, which works extremely awesomely (because spreadsheets rule) until it doesn't, and it becomes unworkable to update and 'branch' with different options. I've done lots of fits and starts and making a software package to do the same and this is the next one.

What the software should do

My spreadsheet normally works like this:

First column is a running month/year column, with a row for each month. Each subsequent column has running totals for these months

Net Worth

A section of columns for net worth.. total net worth, then broken down by (Property, Liquid, Retirement, Debt)

Income

A section of columns for income, my takehome, my wife's takehome, and other income rolled up

Spend allocation

A break down of how that takehome gets allocated:

  1. A configured 'discretionary' spend - this is basically a lump value for month budget not including 'non-discretionary' spend, i.e. debt servicing, required mortgage payments, etc
  2. A total 'non-discretionary' spend - this is the sum of all the non-discretionary spend, which is broken down in other sections

Surplus allocation

A breakdown of surplus allocation according to some strategy I have encoded, for example I've had schemes such as:

  • Prioritize paying off my HELOC (variable APR) up to some maximum amount per month, then put everything in taxable brokerage
  • Prioritize paying into my 529 for 6 months, then back to paying off HELOC, then put everything into taxable brokerage from then on

Example Scenarios

Here are some scenarios I have used this for

  • Simple check in on whether our family budget is going to lead us to our goals
  • Consider big financial decisions such as job changes, 429 investments, decide on things like prepaying a mortgage vs investing in a taxable account, how much to put in tax deferred retirement accounts
  • Using net worth at target dates along with target retirement dates and target retirement spend to see how things go

What didn't work well

  • Adding new accounts - e.g. what if we bought a second property
  • Visibility into where the money was going without reading and holding all formulas in your head
  • Debugging errors
  • Explaining the results to my wife
  • No modeling of taxes, makes that hard to compare
  • Inflation sort of washed out, not sure that is valid

So here's what I want

A projection system that lets me configured my current accounts, mortgages, investments, etc, then projects network at different times in the future. I want to be able to make different projections where one is a copy of the other but with some changes, and see the different outcomes easily (graphically)

User-Facing Conceptual Model

Accounts

Income Accounts

  • Represents different sources of income

Named Monthly Income

  • Have a set amount
  • Start and stop on different days,
  • Have a growth function
    • constant rate
    • based on a defined time curve (later functionality)

Spend Accounts

  • Represent accounts of spending such as discretionary budgets, mortgages, current lines of credit

Named Monthly Spend

  • Have a set amount
  • Start and stop on different days,
  • Have a growth function
    • constant rate
    • based on a defined time curve (later functionality)

Asset Accounts

  • Values contribute positively to Net Worth
  • May appreciate or not

Liability Accounts

  • All liability account balances count negative to Net Worth
  • Can have a Lien on an Asset

Lien

  • A lien is an attachment of a liability to an asset that requires the liability to be paid off when the asset is liquidated

Mortgage

  • Debt Balance
  • Interest Rate

Game Loop

Generate Income

Generate Spend

Allocate Excess Spend

TODO How?? Ideas..

Idea 1

"SpendAllocationConfig" - list of { account, constraints } in order of priority?

constraints are like MaxAmount, MinAmount, for network

Allocate min amounts first, by order priority, then allocate to accounts in order of list, respecting max amount

Thoughts

Both asset accounts and liability accounts can be drawable, e.g.

  • A HELOC can be drawn on
  • A Checking/brokerage account

Model Architecture

All rights reserved.