
Feature list — what the framework can do
What the home-grown engine (btengine) and its tools can do, by category: from data conversion to forward testing, M1 intraday checks, Monte Carlo and prop-firm evaluation.
Here’s what the home-grown engine btengine and its tools can do. In one line: “prepare data → run strategies → reject fake edges → analyze → publish,” all wired together in-house.
The cards below are the main features. If something catches your eye, check out the related research articles too.
Data
Turn raw data into a fast, safe, clean form.
Data conversion
Convert raw CSV/ZIP into fast Parquet. Fast to load and safe for concurrent access.
btengine/data/converter.pyLoader (by period & timeframe)
Fetch OHLCV for any period and timeframe. Read-only shared cache, usable from many tests at once.
btengine/data/loader.pyData-quality checks
Detect and remove abnormal bars (jumps, absurd ranges). Tests assume clean data.
btengine/dataquality.pyEngine
The heart that actually runs strategies and computes P&L.
Event-driven engine
Steps bar by bar to model fills, with no peeking at the future (look-ahead prevention).
btengine/core/engine.pyBroker model
Realistic spread, commission, slippage and SL/TP fills.
btengine/core/broker.pyPortfolio engine
All symbols on one shared account; account-level drawdown and risk management.
btengine/portfolio_engine.pyGPU acceleration
Vectorize heavy parameter sweeps on the GPU to screen many candidates fast.
btengine/optimize.pyVetting (reject fake edges)
The gates that filter out good-looking-only strategies.
Walk-forward
Optimize on the past, test on the unseen future. Prevents hindsight.
scripts/tools/walk_forward.pyM1 intraday risk
Zoom into 1-minute bars during positions to catch intraday daily-loss breaches.
btengine/intraday.pyMonte Carlo pass rate
Resample returns to estimate the probability of passing. Luck vs. skill.
btengine/montecarlo.pyProp-rule evaluation
Judge pass/fail against daily loss, max DD, consistency and minimum hold time.
btengine/prop.pyAnalysis & metrics
Read the results and see where an edge actually works.
Performance metrics
PF, Sharpe, max DD, equity curve — computed and plotted.
btengine/metrics/Market-regime analysis
Label regimes (trend / range / volatility) and break down results by regime.
btengine/regime.pyIndicators & level engine
SMA/EMA/RSI/ATR/ADX plus horizontal levels, channels, pivots, Fibonacci.
btengine/indicators.pyTools & automation
The supporting tools that keep testing and publishing flowing.
YouTube strategy extraction & test
Extract trading rules from a video with AI and run them through the framework.
scripts/tools/youtube_extract.pySite auto-generation
Generate and update this 'FX Backtest Diary' from the verification log.
scripts/tools/make_site.pyMT5 EA implementation
Implement confirmed strategies as MetaTrader 5 EAs and forward-test on demo.
mt5/CoreSystemV14.mq5