Skip to content

gnmerritt/etf-balancer

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Build Status

etf-balancer

Try and optimally balance an account of Vanguard ETFs given a target allocation. Runs as an API for easy use from google sheets.

features

Balances funds to a target percentage across multiple accounts.

  • high-yield funds prioritized to tax-sheltered accounts
  • can avoid sales in taxable accounts
  • minimizes uninvested cash in each account
  • spreadsheet auto-updates to graph returns and balances over time

CLI usage:

Describe your target allocation, your accounts and provide current market quotes for the funds you're interested in balancing, something like this (via the excellent httpie):

http POST https://etf.gnmerritt.net/balance target:='{"VEU":0.7,"VOO":0.3}' accounts:='[{"name":"taxed", "tax_sheltered":false,"cash":1000, "positions":{"VEU":2, "VOO":2}}]' market:='[{"symbol":"VEU", "price":54.33},{"symbol":"VOO", "price":254.77}]' no_sale_accounts:='["taxed"]'

spreadsheet usage:

I talk to the API via a google sheet which contains my account info, you can find a template here: Google Sheet Template. If you make yourself a copy you can start using it to balance your own accounts.

dashboard

accounts