Rebalancing
Portfolio rebalancing software that hands you the trades
Most portfolio tools stop at the diagnosis: here is your allocation, here is your drift, good luck. The arithmetic that turns "you're overweight equities" into "sell exactly this much of exactly this fund, in this account" is the part you end up doing in a spreadsheet at 11pm. RangefinderInvest is built to do that part.
The short version: you design the portfolio you want as asset-class slices, name the actual funds that fill each slice at each brokerage, and RangefinderInvest turns your real holdings into an order ticket — Add, Reduce, Close or Hold, per account, in dollars for mutual funds and whole shares for ETFs. It runs on your desktop, your data stays in a file you own, and you buy it once. It does not link to your brokerage accounts: you import a Schwab or Fidelity CSV, or type your statement in.
The model the whole app runs on
A target model is a named allocation. It holds slices — asset-class parts, each with a target weight — and each slice names the actual ticker or tickers that fill it, with a split when more than one does. The slice editor shows how much of your 100% budget is left as you type, and flags a model as Valid or Review depending on whether it totals exactly 100%.
That indirection is what makes the rest work. Because each slice names its own funds per brokerage, one "U.S. Large Blend" target becomes a Fidelity mutual fund order in your IRA and a Schwab ETF order in your taxable account — automatically, without you maintaining two parallel spreadsheets.
Models also carry effective-dated versions. When you change your allocation the old weights stay on record, so the current version drives today's trades while historical backtests still apply the weights that were actually in force on each date.
What the order ticket actually contains
For every account in rebalancing, every slice and every ticker, it computes the whole chain — target % → current % → % off target → target $ → current $ → drift $ → action → order — and classifies each line Add, Reduce, Close, or Hold. Anything inside your drift threshold is a Hold, so noise doesn't generate churn, and the threshold is yours to set.
The part that saves the spreadsheet work is the order column being brokerage-aware: mutual funds are dollar-traded, so you get "Add $4,426 FXNAX"; ETFs are share-traded, so the equivalent Schwab order comes out in whole shares. It also does the things you'd otherwise forget — it flags holdings that aren't in your model at all as Close rows, counts your uninvested core cash as investable dollars, and lets you filter by action and account.
Rebalancing around a withdrawal or a contribution
Rebalancing in the abstract is the easy case. The real one is "I need $40,000 out this year" — and there the trades that raise the cash and the trades that fix the drift should be the same trades. Tell it the flow and it re-sizes every target against the post-flow value, with:
- A strategy selector — proportional, trim-overweight-first, preserve-tax-lots.
- Tax-aware account sequencing — taxable first, then tax-deferred, Roth last, respecting each account's own "allow withdrawals" flag.
- Lot-level detail — per-lot gain and loss, a HIFO / FIFO / specific-ID lot method, the short- versus long-term split, wash-sale flags, and an estimated tax bill on the sale.
- Now / Defer guidance from a reserve floor and an equity-drawdown band, so it nudges you to spend cash rather than sell into a dip.
It models the accounts you actually have
A household is not one account, and the tax treatment is not a footnote — it's what decides which shares you should sell. Every account carries its institution and type (brokerage, traditional IRA, Roth, rollover, 401(k), HSA, 529), a tax treatment derived from that type and overridable, its own target model, the owner's birth year for RMD timing, and toggles for whether it participates in rebalancing and whether withdrawals may come from it.
Holdings get in one of two ways: hand-enter your monthly statement, or import a Schwab or Fidelity CSV. Go the transaction route and your share counts, cost basis, realized and unrealized gains and income are all derived from the ledger rather than maintained by hand, with uninvested cash tracked as its own per-account ledger. Imports detect the broker, preview the parsed rows, flag unknown tickers, and de-duplicate so re-importing the same file is safe. If your broker's share count ever disagrees with the ledger, Reconcile writes the exact adjusting trade.
Where it fits, and where it doesn't
Good fit
- A real multi-account household — IRAs, Roth, taxable, HSA, across more than one brokerage.
- You run a written target allocation and want to hold it without an advisor's fee.
- Your accounts are at Schwab or Fidelity (CSV import), or you don't mind entering statements.
- You hold bonds or brokered CDs — they're priced by accrual to maturity, not dropped for lack of a price feed.
- You want the projection too: whether this portfolio actually lasts.
Poor fit
- You want accounts to sync automatically. There is no aggregation and no linked-credential connection of any kind.
- You want budgeting or spending tracking. This is portfolio and retirement software; it doesn't track your cash flow.
- You want it on a phone or in a browser. Desktop only.
- You want someone to place the trades. It writes the order ticket; you enter every order at your broker yourself.
- You're outside the US tax system — the withdrawal and projection tax modeling assumes it.
Against the alternatives
| RangefinderInvest | Free aggregating dashboard | A spreadsheet | |
|---|---|---|---|
| Tells you your drift | Yes | Yes | If you built it |
| Gives you the exact orders | Yes — Add / Reduce / Close, per account | Usually not | If you built it |
| Dollars for funds, whole shares for ETFs | Automatic | — | Manual |
| Different funds per brokerage for one target | Built in | — | Manual |
| Where your holdings live | A file on your disk | The vendor's servers | Your disk or your cloud drive |
| How you get data in | CSV import or typed statements | Automatic account linking | Manual |
| Cost | One-time license | Free — check how it's monetized | Free |
| Cost basis, lots, wash sales | Ledger-derived, lot-level | Varies | Rarely |
| Bonds & brokered CDs | Accrual-priced ladder | Often ignored | Manual |
| Monte-Carlo retirement projection | Built in, with taxes and RMDs | Varies | No |
| Budgeting / spending | No | Common | Maybe |
| Mobile access | No | Common | Sort of |
Compared against the general shape of free aggregating dashboards as a category, not against any one product's current feature list — those change without telling us. Verify specifics with each vendor. Four rows there go against us on purpose.
Your portfolio never leaves your machine
Everything — accounts, holdings, transactions, cost basis, models and plans — lives in one SQLite database file on your computer. You can see where it is, move it to a synced folder or an external drive, and it backs itself up automatically on launch with a keep-count you set. There's no account to create and no server holding a copy, which is why there is also no aggregator holding your brokerage credentials: the app never asks for them because it never connects to your broker.
Rather than claim zero network activity, here are the only two outbound requests it makes: the market-data lookups you configure, which carry ticker symbols and date ranges and nothing about your holdings, and a once-a-day update check carrying the app's version, the operating system, and — once in an install's life — a flag that the install is new. Both have off switches, and Microsoft Store installs skip the update check entirely. The privacy policy lists both request types field by field.
Questions
Can I try it on my real portfolio before paying?
Yes — 30 days, every feature, no card and no account. When the trial ends the app stays open read-only: your portfolio, your plans, CSV export and backups all keep working. Nothing is held hostage.
Can I see it without entering anything?
Four complete sample households ship with the app — early career, mid career, near retirement and in retirement. Load any of them and everything is populated. Each opens as an editable copy, so your own portfolio is never touched.
My accounts aren't at Schwab or Fidelity.
Those are the two CSV formats it detects. Everything else goes in by entering your statement, which is snapshot tracking rather than a full transaction ledger — you can upgrade an account to transaction tracking later, and the latest snapshot becomes its opening positions.
Does it place the trades?
No. It produces the order list; you enter the orders at your broker. It is not a broker, not an advisor, and holds no connection to your accounts.
See it on a full household portfolio
Download it, load a sample household, and look at a real order ticket before you decide anything.
30 days, every feature, no card and no account — then read-only, never locked.
Schwab is a trademark of Charles Schwab & Co., Inc.; Fidelity is a trademark of FMR LLC. Kalman Software LLC is not affiliated with, endorsed by, or sponsored by either firm; their names appear only to identify the CSV formats RangefinderInvest can read, and those formats are theirs to change. Tickers and dollar amounts named on this page are illustrations drawn from the sample portfolio that ships with the app — not recommendations, and not figures from any real account. RangefinderInvest is software, not an investment adviser: it does not provide investment advice, and you place every trade yourself.
Related: a private alternative to Empower / Personal Capital · retirement planning software without a subscription