Add backtesting engine with SMA cross strategy

Reads features from Supabase, simulates SMA(3)/SMA(20) crossover signals,
and outputs P&L, drawdown, and trade logs per instrument/granularity.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Brent Neale
2026-02-16 15:58:00 +10:00
co-authored by Claude Opus 4.6
parent 31c74d4e5f
commit 187ebe9a9e
5 changed files with 412 additions and 0 deletions
+19
View File
@@ -0,0 +1,19 @@
time,instrument,granularity,side,price,position_size,equity,drawdown
2026-02-16 02:52:00+00:00,EUR_USD,M1,BUY,1.18646,100.0,10000.0,0.0
2026-02-16 03:03:00+00:00,EUR_USD,M1,FLAT,1.18654,0.0,10000.01,2e-06
2026-02-16 03:13:00+00:00,EUR_USD,M1,BUY,1.18672,100.0,10000.01,2e-06
2026-02-16 03:30:00+00:00,EUR_USD,M1,FLAT,1.18659,0.0,10000.0,3e-06
2026-02-16 03:44:00+00:00,EUR_USD,M1,BUY,1.18676,100.0,10000.0,3e-06
2026-02-16 03:47:00+00:00,EUR_USD,M1,FLAT,1.18666,0.0,9999.99,3e-06
2026-02-16 03:55:00+00:00,EUR_USD,M1,BUY,1.18672,100.0,9999.99,3e-06
2026-02-16 04:07:00+00:00,EUR_USD,M1,FLAT,1.18664,0.0,9999.98,4e-06
2026-02-16 04:10:00+00:00,EUR_USD,M1,BUY,1.18674,100.0,9999.98,4e-06
2026-02-16 04:15:00+00:00,EUR_USD,M1,FLAT,1.18666,0.0,9999.97,5e-06
2026-02-16 04:27:00+00:00,EUR_USD,M1,BUY,1.18672,100.0,9999.97,5e-06
2026-02-16 04:31:00+00:00,EUR_USD,M1,FLAT,1.18661,0.0,9999.96,6e-06
2026-02-16 05:01:00+00:00,EUR_USD,M1,BUY,1.18627,100.0,9999.96,6e-06
2026-02-16 05:02:00+00:00,EUR_USD,M1,FLAT,1.18619,0.0,9999.96,6e-06
2026-02-16 05:09:00+00:00,EUR_USD,M1,BUY,1.18628,100.0,9999.96,6e-06
2026-02-16 05:19:00+00:00,EUR_USD,M1,FLAT,1.1862,0.0,9999.95,7e-06
2026-02-16 05:25:00+00:00,EUR_USD,M1,BUY,1.18635,100.0,9999.95,7e-06
2026-02-16 05:32:00+00:00,EUR_USD,M1,FLAT,1.18623,0.0,9999.94,8e-06
1 time instrument granularity side price position_size equity drawdown
2 2026-02-16 02:52:00+00:00 EUR_USD M1 BUY 1.18646 100.0 10000.0 0.0
3 2026-02-16 03:03:00+00:00 EUR_USD M1 FLAT 1.18654 0.0 10000.01 2e-06
4 2026-02-16 03:13:00+00:00 EUR_USD M1 BUY 1.18672 100.0 10000.01 2e-06
5 2026-02-16 03:30:00+00:00 EUR_USD M1 FLAT 1.18659 0.0 10000.0 3e-06
6 2026-02-16 03:44:00+00:00 EUR_USD M1 BUY 1.18676 100.0 10000.0 3e-06
7 2026-02-16 03:47:00+00:00 EUR_USD M1 FLAT 1.18666 0.0 9999.99 3e-06
8 2026-02-16 03:55:00+00:00 EUR_USD M1 BUY 1.18672 100.0 9999.99 3e-06
9 2026-02-16 04:07:00+00:00 EUR_USD M1 FLAT 1.18664 0.0 9999.98 4e-06
10 2026-02-16 04:10:00+00:00 EUR_USD M1 BUY 1.18674 100.0 9999.98 4e-06
11 2026-02-16 04:15:00+00:00 EUR_USD M1 FLAT 1.18666 0.0 9999.97 5e-06
12 2026-02-16 04:27:00+00:00 EUR_USD M1 BUY 1.18672 100.0 9999.97 5e-06
13 2026-02-16 04:31:00+00:00 EUR_USD M1 FLAT 1.18661 0.0 9999.96 6e-06
14 2026-02-16 05:01:00+00:00 EUR_USD M1 BUY 1.18627 100.0 9999.96 6e-06
15 2026-02-16 05:02:00+00:00 EUR_USD M1 FLAT 1.18619 0.0 9999.96 6e-06
16 2026-02-16 05:09:00+00:00 EUR_USD M1 BUY 1.18628 100.0 9999.96 6e-06
17 2026-02-16 05:19:00+00:00 EUR_USD M1 FLAT 1.1862 0.0 9999.95 7e-06
18 2026-02-16 05:25:00+00:00 EUR_USD M1 BUY 1.18635 100.0 9999.95 7e-06
19 2026-02-16 05:32:00+00:00 EUR_USD M1 FLAT 1.18623 0.0 9999.94 8e-06