Maou is the finance agent in AEGIS, the self-hosted agent platform I run my life on. A few weeks ago it learned to keep my books properly, and I wrote about why a ledger is not a database table. Now it has a second job: it runs a paper trading desk on real market prices.
The goal is simple. I have a trading system that decides what to hold each day. I want Maou to place those trades with real money. But not yet. First it has to show, on paper and over months, that the whole chain works and that the results are worth having.
This post covers both halves of what Maou now does with money, and what has to be true before the paper desk becomes a real one.
This is a write-up about engineering, not investment advice. The desk trades on paper, and this post deliberately does not show which stocks it holds.
The books: one view of where the money stands
The books are a plain-text double-entry journal in git, checked by hledger. Postgres is only an index over it. That was the last post. What changed since is that I can now see the money, not just trust it.
The figures are blurred because they are my real finances. The page shows:
- Net worth at each month end: everything I have, less everything I owe.
- Money in and money out, month by month.
- Where it went this month, by category. My business spending splits into its own categories rather than arriving as one bar called "business".
Every number comes from hledger, asked at the moment the page loads. Nothing is copied into a second table that could drift.
One rule mattered more than any chart. Some of my spending is in dollars and pounds, and the books have no exchange rate for those days yet. The easy move is to guess a rate and fold them in. Instead the page leaves them out of the chart and says so underneath: "left out of the charts because there is no rate for them: $, £". A wrong number that looks right is worse than a gap you can see.
Behind the charts are the parts that need action: bills still to pay, spending the books could not explain, and bank statements that have not been matched line by line. Maou raises those as tasks for me, and a task closes itself when its problem goes away.
The desk: who decides what
The split of responsibilities is the most important design choice, so here it is plainly:
- The trading system decides what to hold. Every evening it publishes a list of positions and how much of the portfolio each should be. That system is Ansaar, my market data platform, with its own models and its own risk manager.
- Maou decides nothing about the picks. It turns that list into orders for whole shares against the paper capital, places them, and fills them at the next session's opening price, using real prices.
- Maou scores the result against a benchmark every week and every month.
The agent is dumb on purpose. What I am testing is not whether an LLM can pick stocks. It is whether the full chain holds together: the trading system's decisions, the data they arrive on, the sizing, the fills, the costs and the scoring. When real money is involved, every link in that chain can lose it.
This is the first part. The full post — including the rest of the working details — is on my site: Paper Before Real Money: How My Finance Agent Earns the Right to Trade


Top comments (0)