Live · Updated Daily

Forex Bot Journal

Every trade our algorithm takes, logged and published. Wins, losses, the ugly stretches — all of it. No cherry-picked backtests. Just a real bot learning in public.

EUR/USD GBP/USD AUD/USD USD/CAD USD/CHF NZD/USD EUR/GBP XAU/USD

Running on an OANDA practice account with a demo balance. Real market data, real fills, real slippage — just not real money yet. We'll graduate to a small live account after 30 days of clean performance.

Live Performance

Rolling window of closed trades. Pips, not dollars — scales to any account size.

Trades
Total Pips
Win Rate
Profit Factor
Gross win / Gross loss

Loading latest data…

Where we're at, honestly

The lifetime profit factor on this account is still below 1.0. That's not a typo — the early trades ran through several losing strategies (old scalp, RSI divergence) and a badly-tuned exit that strangled winners. We found the problem in a 45-trade audit, shipped a fixed configuration on April 11, 2026, and the 7-day window above is the real story going forward. Click "Lifetime" to see everything, warts included.

We're publishing every trade here instead of waiting until the numbers look good, because the whole point of this journal is transparency. If the fix holds for 30 days, the headline number will earn itself. If it doesn't, you'll see that too.

Read the full story →

Breakdown

Lifetime, grouped by instrument and strategy.

By instrument

PairnWRPFPips

By strategy

StrategynWRPFPips

Recent Trades

Newest first. Every closed position — wins and losses both shown. Hover for details.

Closed (UTC) Pair Strategy Side Pips Duration Result
Loading trades…

 

What the bot does

Two complementary strategies on M15 candles, 24 × 5.

Strategy 1

Trend Standard

Rides momentum when EMA(12) and EMA(26) agree with higher-timeframe trend. Wide stop at 2 × ATR absorbs the noise, a break-even shield locks in gains once the trade moves +10 pips, and a fixed 2.75R take-profit captures the full move instead of trailing into reversals.

Strategy 2

Mean Reversion Pullback

Fades Bollinger Band extremes when price is stretched but the H1 trend still favors a bounce. RSI confirms exhaustion. Targets the BB midline — a tighter, higher-probability exit than the trend strategy.

Risk management

Flat 1% risk per trade on the wide stop distance. Max 5 concurrent positions. Daily loss cap. Session-aware pair blocks — if EUR/GBP loses 6 straight, it's benched automatically.

What we removed

RSI divergence (8 trades, all losing). Old mean reversion. Dynamic risk scaling that was silently halving size on losing streaks. The journal shows exactly which strategies we pulled and when.

FAQ

Is this data real?
Yes. Every trade on this page is parsed directly from the bot's live signal log — the same JSONL file the bot writes as it runs. The numbers aren't hand-picked, adjusted, or backtested; they're exactly what the live bot did.
Why is the profit factor below 1.0?
The account has 158 trades going back to early March. The first ~120 of those ran strategies and exits that we've since disabled. The winning config shipped April 11 and is earning its numbers in the 7-day window (the default tab above). Click "Lifetime" to see every trade in the ledger, including the losing strategies we've since turned off.
Are you selling signals yet?
No. We pulled the signal-subscription product in April when our live results didn't match our backtests — selling "$29/mo signals" on a losing bot would be the wrong thing to do. We'll re-evaluate if and when the live bot earns a sustainable edge over 4+ weeks.
Can I get the code?
The V3 Python bot is private, but we write openly about the architecture, the bugs we fixed, and the strategies we've tried — both here and on the journey blog. The Rust rewrite (V4) may open-source later.
What does "shadow mode" mean?
For the in-progress V4 Rust bot, we log what it would have traded without actually submitting orders. That lets us validate the signal generation and risk math against live prices before putting real money behind it.
Email list?
Sure — leave your email below if you want a short weekly recap. No sales pitch, just a link to the latest numbers and whatever we learned that week.

Follow along

Drop your email for the weekly journal recap.

No spam. Unsubscribe anytime. Weekly recap only — no trade-by-trade pings.