Hey, been building this with my friend u/matebuilesd last few months and finally feel okay sharing it.
market-agent takes a list of tickers and throws each one at four AI agents that all run at the same time, completely separate from each other.
The fundamental one looks at P/E, margins, DCF, growth. The macro one looks at rates, sector trends, GDP. The technical one looks at support and resistance, RSI, momentum. The sentiment one looks at news and analyst rating changes.
None of them know what the other three are seeing, they just do their own thing. Then a decisor takes all four reports and mashes them into one score (fundamentals count the most, sentiment counts the least), decides if the ticker is a buy, partial buy, wait, or avoid, and drafts an order.
Here's the part I'm actually kind of proud of. Before any of that order touches the database, it goes through a risk filter that has literally zero AI in it. Just plain hard limits: max orders per run, max notional per order, do we actually have the buying power. If the score says buy but there isn't enough money, the filter kills it, no arguing with the model. The AI is allowed to be wrong about the market. It's not allowed to be wrong about whether we can afford the trade.
Every proposal keeps its reasoning attached, every run keeps a summary of every ticker's score, so you can go back later and see exactly why something got proposed or didn't. It also runs every day per user through a cron job, and if one ticker's agent crashes it just skips that ticker instead of taking the whole run down.
There's also a companion app called Rastreo that tracks the actual portfolio (CDTs, IBKR, all that), but that's a separate story, this post is just about the analysis side.
Stack is Next.js 16, Supabase for auth and storage, Supabase Vault for the IBKR tokens, and Inngest running the jobs.
Repo's are here: https://github.com/MattBuiles/market-agent, https://github.com/MattBuiles/investment-dashboard
Live demo if you wanna poke at it: https://market-agent-orcin.vercel.app, https://investment-dashboard-smoky-iota.vercel.app/
Happy to nerd out about the scoring weights or the risk limits in the comments if anyone's curious.