autobalance.dev
Live since April 2026

Say what you want your money in. It gets you there, a bit at a time.

Type it the way you'd say it — “40% world index, 15% gold, 10% bitcoin, keep 15% in cash.” autobalance works out what to buy and sell, checks every name is really tradeable, and spreads the orders across days instead of one afternoon's price.

How it worksGitHub ↗

Starts on a practice account with pretend money. Going live is a switch you flip yourself.

DemoDemo Account 1 · sample data
Portfolio value$12,340.55 +12.19%
Total P&L+$1,340.55
Cash$2,100.00
Current
Positions
AAPL 6.77%
MSFT 6.19%
NVDA 7.22%
TSLA 5.12%
CASH17.0%
made-up numbers, not real returns
Why it exists

Every portfolio drifts. The winners quietly grow into too much of it, and putting that right is boring sums nobody feels like doing on a Tuesday — so it waits a month, and then it all happens at once, at whatever price that afternoon happens to offer. autobalance does the dull part every day, in small pieces, and lets you change your mind by typing a sentence.


How it works

From a sentence to a trade in your account

Four things happen between the sentence you type and the money actually moving.

  1. 01

    You say it

    Write your plan the way you would say it out loud — how much in what, where you want a hedge, how much to leave in cash. No ticker codes to look up, no spreadsheet, no form to fill in for every holding.

  2. 02

    It gets checked

    Your sentence becomes real percentages, and every name is looked up at the broker to confirm it can actually be traded. Anything that can’t is dropped, and what’s left is topped back up to 100%.

  3. 03

    It’s cut into small pieces

    One change can mean moving thousands at once. Instead it becomes a queue of small orders: a limit on each one, spread over as many days as you choose, and never smaller than the broker will accept.

  4. 04

    It trades for you

    Orders go out every ten minutes on weekdays from 09:00 to 22:00 German time, and four times a day at weekends for crypto. At 17:05 it checks the whole portfolio properly, and at 17:15 it writes you a plain summary of the day.


The app

Built to be read in ten seconds

Dark, tight, numbers before charts. Blue means up and buying, red means down and selling — the same way round as your broker's own screen, so the two never contradict each other. What's below isn't a screenshot: it's the real thing, filled with made-up numbers.

Sample data
Portfolio value
$12,340.55
Total P&L
+$414.37
+3.47% since you started
Cash
$1,516.40
12.3% of portfolio
Invested
$10,824.15
5 positions
Add 10% bitcoin, trim gold to 15%, drop NVDA and take the Tesla short to 8%.
+ BTCUSD 10.0%GOLD 20.0% → 15.0%TSLA 5.0% → 8.0%− NVDA removed

NVDA is out, and everything else was topped back up so it still adds to 100%.

Result
  • Vanguard FTSE All-World40.1%
  • Gold Spot24.8%
  • Apple Inc10.4%
  • Bitcoin8.9%
  • Tesla Inc (short)6.0%
  • Cash9.8%

Ask for a change and it tells you what moved — not your whole portfolio read back to you.


What runs it

It keeps working while you get on with your life

You never have to have this site open. A program sits on a server all day holding the timetable, the things that need retrying and the orders still waiting for a market to open. That's why your portfolio keeps moving through a week of you not logging in.

The website (Next.js)

What you look at: your portfolio, the chat, the charts. It can’t place a trade itself.

Signing in (Supabase)

You log in with Google. One brokerage account at a time, and only ever yours.

The API (FastAPI)

Answers the website: your plan, your positions, your orders, your backtests.

The scheduler

Awake day and night. Holds the timetable, the retries and every order still waiting.

The database (Postgres)

Your plan, the queue of orders still to go out, and everything that has already traded.

Your broker

Where the money actually sits. Prices come in, orders go out. Practice or real.

Claude

Turns your sentence into percentages, and writes the summary at the end of the day.

Telegram

Sends the trades, the problems and the daily wrap-up. Where you’ll actually read it.


Where the care went

Six things I didn’t want to leave to chance

A name that doesn’t exist can’t break your day

The AI suggests what to hold; the broker decides what is actually buyable. Names it doesn’t carry are dropped and the rest is topped back up to 100%, so a bad suggestion turns into a slightly bigger position elsewhere instead of a day where nothing happened.

Big moves go out in slices

A single decision can mean moving €40,000. It leaves as a queue instead: a cap on each order, spread over as many days as you like, and adjustable holding by holding — so something rarely traded can crawl while cash-like things move at once.

A closed market isn’t a failure

An order that arrives while the market is shut isn’t thrown away. It waits, with a note saying why and when to try again, and the next run picks it up. A weekend leaves a queue behind it, not a hole.

Practice and real money can’t get mixed up

Every plan, order and trade belongs to one account, and which account you are in is decided on the server, not in your browser. Switch accounts and everything switches with it, including orders that haven’t gone out yet.

The profit number tells the truth

Things are priced in dollars, pounds and euros while your account is in one currency. Every price and every gain is converted at the rate that actually applied, so your total isn’t quietly measuring the euro against the dollar.

You hear about it on your phone

Trades, problems and the end-of-day summary arrive as Telegram messages. The normal way to know what happened is a notification, not logging in. The site is for when you want to change something.