Feature list — what the framework can do

Guides

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.py
Loader (by period & timeframe)
Fetch OHLCV for any period and timeframe. Read-only shared cache, usable from many tests at once.
btengine/data/loader.py
Data-quality checks
Detect and remove abnormal bars (jumps, absurd ranges). Tests assume clean data.
btengine/dataquality.py

Engine

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.py
Broker model
Realistic spread, commission, slippage and SL/TP fills.
btengine/core/broker.py
Portfolio engine
All symbols on one shared account; account-level drawdown and risk management.
btengine/portfolio_engine.py
GPU acceleration
Vectorize heavy parameter sweeps on the GPU to screen many candidates fast.
btengine/optimize.py

Vetting (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.py
M1 intraday risk
Zoom into 1-minute bars during positions to catch intraday daily-loss breaches.
btengine/intraday.py
Monte Carlo pass rate
Resample returns to estimate the probability of passing. Luck vs. skill.
btengine/montecarlo.py
Prop-rule evaluation
Judge pass/fail against daily loss, max DD, consistency and minimum hold time.
btengine/prop.py

Analysis & 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.py
Indicators & level engine
SMA/EMA/RSI/ATR/ADX plus horizontal levels, channels, pivots, Fibonacci.
btengine/indicators.py

Tools & 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.py
Site auto-generation
Generate and update this 'FX Backtest Diary' from the verification log.
scripts/tools/make_site.py
MT5 EA implementation
Implement confirmed strategies as MetaTrader 5 EAs and forward-test on demo.
mt5/CoreSystemV14.mq5