Open quantitative record
A Bitcoin Trading Model, published in the open — Trades, Method and Limitations
I run a machine learning model on bitcoin and publish everything it does: every trade as it happens, the methodology behind it, and the parts that did not work. Free, with nothing to sell — no subscriptions, no broker affiliates, no copy-trading.
Live feed
Every trade, at the moment it is placed
The model trades bitcoin on spot and futures markets. It places a handful of positions per month and holds them for hours to days — this is not a high-frequency system, and there is usually nothing to do between signals.
Posts go out on Telegram the moment a position opens or closes. The same feed is mirrored below if you would rather not join the channel.
Record
The backtest, with the in-sample part clearly marked
Almost every published trading curve hides where the model was trained and where it was actually tested. Mine does not. The hatched region below is in-sample data — the model saw it during fitting, and those results are not a performance claim. The solid teal region is what happened afterwards, on data the model had never been trained on.
The gap between the two is the whole point. In-sample the curve compounds at roughly 47 % a year. Out-of-sample it settles near 7 %. That drop is the normal, expected cost of leaving the training set, and any strategy that does not show you both numbers is showing you the wrong one.
Out-of-sample figures — the only ones worth quoting
| Metric | Out-of-sample | In-sample |
|---|---|---|
| Annualised return | +6.7% | +47.1% |
| Total return | +29% | +473% |
| Win rate | 50.5% | 59.5% |
| Trades | 208 | 205 |
| Period covered | 4.0 years | 4.5 years |
| Average trades per month | 4.4 | 3.8 |
| Average holding period | 6.5 bars | 4.6 bars |
| Maximum leverage | 2:1 | 2:1 |
Drawdown is measured on closed-trade equity and therefore understates intra-trade excursion. Past performance, simulated or real, is not a reliable indicator of future results.
Independently verified account
The backtest above is a model study. The account below is the live-tracked record, read directly by FXBlue — a third party with no reason to flatter it. Treat the two as separate things, because they are.
Method
What is actually under the hood
“AI-powered” means very little on its own, so here is the specific version. The model is XGBoost — gradient-boosted trees — classifying directional edge on daily bitcoin candles. Recurrent networks were tested at length and rejected: on this data they added nothing that survived validation, and that result is documented rather than hidden. Signals pass through a fixed risk layer that caps leverage at 2:1 regardless of model confidence.
Features
Seven inputs, all derived from price structure, realised volatility and candle microstructure. No sentiment scraping, no funding or on-chain data, and no calendar features — time-of-day encodings were removed after one was caught memorising the training set.
Validation
Anchored walk-forward analysis with strictly out-of-sample windows and purge gaps between partitions. Selection is always by validation score — never by test — and pass criteria are written down before anything runs.
Risk layer
Fixed position sizing, hard leverage ceiling, and a rule set that sits outside the model and cannot be overridden by it.
What is not claimed
No price prediction, no forecasting of tops or bottoms. The model estimates conditional edge over a horizon, nothing more.
The full write-up — feature construction, the walk-forward setup, and the graveyard of what did not survive it — is on the methodology page. The open record is on GitHub.
What to expect
The uncomfortable parts, stated in advance
Most systems are abandoned during the flat stretch, not the losing one. Setting expectations before that happens is more useful than any performance chart.
Long quiet periods
Weeks can pass with a handful of trades and no meaningful movement in the equity curve. This is normal behaviour, not a malfunction.
Drawdowns are structural
A model with positive expectancy still loses for extended stretches. The published maximum drawdown is a historical figure, not a ceiling.
Individual trades mean nothing
The results come from the full sequence. Selecting trades from it changes the risk profile into something the record does not describe.
The model changes
It gets retrained and occasionally rebuilt. Every material change is logged publicly with a date, so the record stays interpretable.
What you get here
Every trade, live and timestamped. Posted to the free Telegram channel at the moment of execution — before the outcome is known — and independently tracked by FXBlue.
The complete research record. The full methodology, out-of-sample results side by side with in-sample, and the graveyard of every rejected model — failures included.
Research you can build on. Regular articles on overfitting, walk-forward validation and machine learning trading models, written so you can develop and test your own.
If it is useful, it is yours.
Disclosure
Simulated account, real market conditions
Every result published here comes from a simulated account executing under live market conditions. No real capital is at risk, and I state that up front rather than burying it in a footnote.
The account applies the same swap and commission structure as a live one, so the two largest sources of drag are already reflected in the numbers. The model also places only a handful of trades per month, which keeps cumulative transaction costs low by design.
What a simulated environment cannot fully reproduce is execution. Fills always occur at the requested price, with no partial fills, requotes or spread widening during news events. For a low-frequency system holding positions over days, this is a second-order effect — but it is not zero, and I would rather name it than imply it away.
The methodology is open, every trade is timestamped, and the tracked account is read directly by FXBlue. Audit it yourself.
Latest research
- Overfitting in Trading Strategies: How 65,000 Backtests Produced One ModelRun enough backtests and you will find a beautiful equity curve. Why the top-ranked result is almost never a system, and the four defences that separate signal from selection luck.
Who writes this
Adrian Velai
Adrian Velai is a pen name. I keep my legal identity private, which is a deliberate choice and one I would rather declare than disguise — you should weigh it accordingly.
What I put in its place is the only thing that can actually be checked: a complete trade record independently tracked by FXBlue, the methodology written out in full, and record published openly. An anonymous author with an auditable record is a better bet than a named one without.
Questions
Common questions
Is this really free?
Yes. There is no paid tier, no private channel and no affiliate link to a broker. Running the site costs money, so there is a bitcoin address at the bottom of this page for anyone who wants to contribute. Nothing is gated behind it.
Why publish a working model instead of keeping it private?
A strategy trading a handful of positions per month in bitcoin markets is not degraded by being known. What I get in return is a public, timestamped record — which is worth more to me than secrecy.
Why is the account simulated?
It lets me publish a complete, unedited record without exposing an account I would then be tempted to present selectively. The trade-off is stated openly in the disclosure section above.
Can I follow the trades automatically?
There is no copier, no EA and no software to install, and I do not distribute any. Everything is published for reading. Any decision to act on it is yours alone.
What is the minimum account size?
That is a question about your circumstances, and I am not in a position to answer it. What I can tell you is the model’s design constraint: leverage never exceeds 2:1.
Which venues does the model trade?
Bitcoin spot and futures markets. The published signals reference the underlying instrument rather than any specific broker or exchange.
How often does it trade?
A handful of positions per month, held from hours to days. Some weeks are quieter than that. If you are looking for constant activity, this is not it.
Do you offer advice or manage accounts?
No. I do not manage money, hold client funds, give personal recommendations or accept subscriptions. This site publishes what one model does; that is the entire scope.
Where can I ask something technical?
Discord, linked below. Questions about feature construction, validation and model design are welcome. Questions about what you personally should do with your money will go unanswered — not to be unhelpful, but because answering them would be exactly the thing this site does not do.
Support
Keeping this online
Hosting, data feeds and compute are the running costs. If the record or the write-ups have been useful, a small contribution helps keep them published. It buys nothing — there is no tier, no access and no acknowledgement attached.
bc1q2et03nku2kkkqaqz20g7ymvw3wl24njm3ez4lv
Risk notice
Not investment advice. The content published on this website, including all trade records, trades published and written analysis, is provided for informational and educational purposes only. It does not constitute investment advice, a personal recommendation, an offer, or a solicitation to buy or sell any financial instrument, and it takes no account of the objectives, financial situation or needs of any individual reader.
Simulated results. All performance data published on this website is derived from a simulated trading account operating under live market conditions. No real capital is at risk. Simulated results have inherent limitations and do not fully reflect the impact of real-world execution factors including slippage, partial fills, requotes and spread variation. Past performance, whether simulated or real, is not a reliable indicator of future results.
Risk warning. Trading bitcoin and other digital assets carries a high level of risk and is not suitable for every investor. You may lose some or all of your capital. Before trading you should carefully consider your objectives, level of experience and appetite for risk, and you should not commit funds you cannot afford to lose. If you are in any doubt, seek advice from an independent and appropriately authorised financial adviser.
No liability. Any decision you take after reading this website is your own. The author accepts no responsibility or liability for any loss or damage arising directly or indirectly from the use of, or reliance on, any information published here. You acknowledge that no financial advice is being provided and that you alone are responsible for the trades you place.
Jurisdiction. This website is not directed at, and its content is not intended for, residents of the United States of America, or any person in any jurisdiction where the publication or availability of this content would be contrary to local law or regulation.
Author. Adrian Velai is a pen name. This website is an independent personal project. It is not affiliated with, endorsed by, or acting on behalf of any broker, exchange or financial institution, and receives no commission, rebate or referral fee from any such party.