I”I let an AI crypto trading bot handle real money for six days straight. I’m not a programmer…”
‘m not a programmer. I can read basic Python, but I couldn’t have written any of what I’m about to show you from scratch. What I could do was describe what I wanted, test it relentlessly, and push back when something felt wrong.
Six days later, I had a system with 9 automated trading bots running 24/7 on a real server, connected to my real exchange account, trading with real money.
This is the honest account of how that went — the wins, the bugs, and the numbers.
The starting point
I wanted to see if I could build a crypto trading system entirely through conversation with Claude (Anthropic’s AI model), without writing code myself. Not a toy project — something that actually connects to an exchange, holds real positions, and reports back to me.
I picked Bitvavo, a Dutch/European exchange, because that’s where my existing account was.
What got built
By the end of the week, the system included:
- A trend-following bot trading ETH using EMA crossovers, ADX trend-strength filtering, and a trailing stop-loss
- A news-sentiment bot that reads crypto headlines via RSS, scores them with Claude, and trades on strong signals
- A whale-tracking bot watching order flow for unusually large trades
- A DCA bot that buys ETH every Sunday, adjusting the amount based on how far price has moved from its 20-day average
- A Fear & Greed contrarian bot that buys during extreme fear and partially sells during extreme greed
- An “AI Brain” that combines sentiment, Fear & Greed, and on-chain data into a single score — and can veto trades across all bots if conditions look bad
- A live web dashboard showing portfolio value, open positions, and stop-loss levels in real time
- Telegram integration so every trade, warning, and daily report lands directly in my phone
All of it running on a $6/month DigitalOcean server, communicating through systemd services, with shared state so the bots don’t accidentally sell each other’s positions.

The part nobody tells you: backtesting changes everything
Before any of this went live, we ran backtests — simulating the strategies against real historical price data to see whether they’d actually have made money.
The first version of the trend bot used a fixed take-profit at +6% and a fixed stop-loss at -3%. It looked reasonable on paper.
The backtest said otherwise: -13.8% over three years, versus -3% for simply buying and holding ETH. The strategy was actively worse than doing nothing.
We tested variations. Removing the fixed take-profit entirely and using a 5% trailing stop-loss instead — letting winners run further while still protecting gains — completely changed the outcome: +51.9%. Later, after tuning the ADX threshold down from 25 to 20 (catching slightly more trend signals without adding much noise), that climbed to +89% over the same period.
We also tested the strategy on 14 other coins. ETH was the only one where it consistently beat buy-and-hold. Bitcoin, Solana, XRP — all of them performed worse with active trading than just holding. So the bot only trades ETH now, deliberately.
None of this was intuition. It was running the numbers, being wrong, and adjusting.
Live trading is messier than backtests
Backtests run on clean historical data. Live systems don’t get that luxury. A few things that actually happened this week:
The grid bot kept losing its memory. Every time the server restarted, it would forget it had an open position and either duplicate a trade or lose track of a real one. The fix took several iterations — first checking a local state file, then checking an internal ledger, and finally querying Bitvavo’s actual trade history directly on every restart to reconstruct the true position. That last approach was the only one that actually held up.
A stop-loss update wasn’t being saved. The trailing stop-loss logic was correct, but a missing save_state() call meant the updated stop-loss value only existed in memory — it reset every time the bot restarted. Small bug, real consequence: the safety net wasn’t actually there when it mattered.
Fees quietly ate a “profitable” strategy. The grid bot pulled a chart of live trades, and several showed +$0.01 or +$0.03 profit per trade — technically green, but Bitvavo’s 0.25% fee on both the buy and the sell meant those trades were net losses once fees were accounted for. The grid lines were too close together. We had to widen them so each trade cleared the fee threshold by a real margin, not just on paper.
None of these are exotic problems. They’re the boring kind of bugs that only show up when a system runs continuously against a live market, and they’re exactly why “it worked in the backtest” isn’t the same as “it works.”

What I’d tell someone starting this
Test the strategy before you trust it. A convincing-sounding rule (fixed 6% take-profit, cut losses at 3%) can still lose money. Only backtesting against real data tells you the truth.
Assume your state will get lost. Servers restart, services crash, deployments happen. Any bot holding a position needs a way to recover the truth from the source that actually matters — in this case, the exchange’s own trade history — not just a local file that can silently go stale.
Fees are not a rounding error. At small trade sizes, fees can turn a “winning” strategy into a losing one. Always compare gross profit against the round-trip fee cost before calling a trade profitable.
Have the AI explain its reasoning, not just its code. The moments this system actually improved were when I asked why a threshold was set where it was, and asked for a backtest instead of taking the number on faith.
Where it stands now
The system is live, trading small amounts while it proves itself. I’m tracking real performance — weekly P&L reports, win rates, drawdowns — and I’ll be writing about what happens next: whether the backtested edge holds up in live conditions, what breaks next, and what I build after this.
If you’re curious about the technical side — the actual bot code, the backtest scripts, or the dashboard — I’ll be sharing pieces of it in future posts
Do you want to open a Bitvavo account use this link for a free $10 .
This is the first post on AI Project Log, where I document what happens when I try to build real, working systems using AI as the primary builder. No filtered success stories — just what actually happened. and if you want to know more about me check this out https://aiprojectlog.com/about-us/
Want to run this yourself? I’ve packaged the actual bot — with the trailing stop-loss logic, backtests, and dashboard — as a ready-to-use template: https://marcrietdijk.gumroad.com/l/zvgbx