Aller au contenu principal

Banc d’essai des IA · manche 1

Quelle IA est le meilleur chercheur quant et écrit les meilleures stratégies de trading ?

Réponse courte : on le mesure ici au lieu de le supposer. Claude, GPT (ChatGPT), Gemini, DeepSeek, Grok et d’autres modèles ont chacun cherché une stratégie Bitcoin (bougies 4 h, 2020 à 2023) avec les mêmes outils et le même budget, puis chaque stratégie a été jugée sur 2023 à 2026, une période scellée que l’outil cachait pendant la recherche. Les modèles peuvent toutefois en connaître la tendance générale par leur entraînement.

Chaque IA a piloté la même appli de backtest (Strategy Arena Lab, commandée uniquement par MCP, le protocole qui permet à une IA d’utiliser un logiciel), avec les mêmes données Bitcoin et le même budget de 80 appels d’outils. Sa stratégie a ensuite été notée sur la période scellée, que l’outil refusait de montrer pendant la recherche.

Protocole scellé 2026-10-07 · 072805c87e2e…

Deux périodes, jamais mélangées · BTC 4h
Recherche · 2020-10-01 → 2023-09-306570 bougies, les seules données accessibles aux IA
Scellée · 2023-10-01 → 2026-09-306576 bougies, utilisées seulement par l’arbitre
12modèles d’IA notés (+1 non joué)
23essais de recherche (1–2 par modèle)
+201,82 %achat-conservation sur la période scellée · pire baisse 53,45 %
7 / 23essais qui battent l’achat-conservation, risque compris

Manche 1 = période historique (oct. 2023 → sept. 2026) : les modèles peuvent connaître la tendance générale du Bitcoin par leur entraînement. La manche 2 se jouera sur des données futures, inconnues de tous.

Arbitre : Claude Opus 5.5, qui est aussi candidat. La notation est mécanique : le barème ci-dessous appliqué aux chiffres du backtest.

Séances du 7 octobre 2026 (Gemini 3.8 Flash, GPT 5.6 Sol, Grok 4.6, Grok 4.7) : même protocole scellé, mêmes données, même barème. Elles ont tourné sur le Lab 235, dont le moteur par défaut est identique au bit près à celui de la 230 (84 réponses sur 84 identiques), avec l'assistant scellé forcé sur le profil MCP « full » (mêmes 74 outils et mêmes réponses qu'aux premières séances). Grok 4.6 n'a joué qu'une séance (n = 1) : sa moyenne pèse moins que celles des modèles à deux séances.

Séances du 8 octobre 2026 (Astra 6, deux séances) : même protocole scellé, mêmes données, même barème. Elles ont tourné sur le Lab 236, avec l'assistant scellé forcé sur le profil MCP « full » ; les outils de preuve et de rejeu, dont les données intégrées chevauchent la période scellée, y étaient refusés. Aucune tentative refusée dans les deux séances.

Journal grok-1 : 4 appels de Grok 4.7 lancés par erreur sous l'identifiant grok-1 (lecture de la doc, aucun test) en ont été retirés et archivés à part, téléchargeables plus bas. Le journal noté grok-1 contient les 20 appels de Grok 4.6, le nombre retenu par l'arbitre.

Moteur de la manche 1 : ces chiffres ont été calculés les 7 et 8 octobre 2026 avec la sémantique alors par défaut de la Lab (legacy_v1), qui diffère de TradingView : son EMA est recalculée sur une fenêtre, les indicateurs valent le cours pendant le préchauffage à partir de la bougie 55, les stops et objectifs se lisent sur les clôtures. Les trades visibles sur un graphique TradingView ne sont donc pas ceux de ces chiffres. Depuis la Lab 241, le défaut est tv_exact_v1, comparée à de vrais journaux TradingView sur 6 de ces scripts (234 trades sur 234, sur 4 000 bougies). La Lab 255 retrouve les 21 résultats sous legacy_v1 ; sous tv_exact_v1 ils changent, parfois beaucoup : sonnet-1 passe de 239,81 % à 132,14 %. La manche 1 n'est pas renotée, et ses chiffres ne se comparent ni à TradingView ni à la manche 2.

Classement

Seule la stratégie principale compte. Le score d’abord ; à égalité, la plus petite pire baisse passe devant.

Famille de modèles
Afficher
Gain scellé appliqué à votre montant, frais compris. Rien de plus que le backtest.

#1

Xiaomi MiMo v2.6 Pro

essai 1 · cloud via opencode
100points
Stratégie principale (celle qui compte)Dual SMA let-run robuste
Gain scellé+146,48 %
Pire baisse30,05 %
Gain / baisse4,87
bat l’achat-conservation, risque comptérepère doré = 3,78

⚑ Sceau non garanti
#2ex æquo

Gemini 3.8 Flash

essai 1 · agent Cursor
100points
Stratégie principale (celle qui compte)Dual SMA 12-210 robuste
Gain scellé+152,72 %
Pire baisse30,20 %
Gain / baisse5,06
bat l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#2ex æquo

Gemini 3.8 Flash

essai 2 · agent Cursor
100points
Stratégie principale (celle qui compte)Dual SMA 12-210 robuste
Gain scellé+152,72 %
Pire baisse30,20 %
Gain / baisse5,06
bat l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#4

Muse Spark 1.3 (contributor, free)

essai 1 · cloud via opencode
100points
Stratégie principale (celle qui compte)Cash under SMA200 robuste
Gain scellé+132,13 %
Pire baisse31,18 %
Gain / baisse4,24
bat l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#5

deepseek-flash

essai 1 · cloud via opencode
100points
Stratégie principale (celle qui compte)DeepSeek SMA Long T120 F17 S298 robuste
Gain scellé+176,41 %
Pire baisse41,46 %
Gain / baisse4,25
bat l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#6

Claude Sonnet 5

essai 1 · agent Claude
80points
Stratégie principale (celle qui compte)EMA cross 40/200 exploratoire
Gain scellé+239,81 %
Pire baisse26,43 %
Gain / baisse9,07
bat l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#7

Xiaomi MiMo v2.6 Pro

essai 2 · cloud via opencode
80points
Stratégie principale (celle qui compte)Dual SMA 17/280 exploratoire
Gain scellé+216,54 %
Pire baisse27,53 %
Gain / baisse7,87
bat l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#8

GPT 5.6 Sol

essai 1 · agent Cursor
70points
Stratégie principale (celle qui compte)BTC Filtered Breakout 60-250-40 robuste
Gain scellé+20,91 %
Pire baisse29,00 %
Gain / baisse0,72
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#9ex æquo

Claude Opus 5.5

essai 1 · agent Claude
70points
Stratégie principale (celle qui compte)EMA trend 300 robuste
Gain scellé+95,35 %
Pire baisse33,45 %
Gain / baisse2,85
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#9ex æquo

Claude Fable 5.1

essai 2 · agent Claude
70points
Stratégie principale (celle qui compte)EMA trend 300 robuste
Gain scellé+95,35 %
Pire baisse33,45 %
Gain / baisse2,85
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#11

GPT 5.6 Sol

essai 2 · agent Cursor
70points
Stratégie principale (celle qui compte)Event momentum robust robuste
Gain scellé+62,95 %
Pire baisse36,99 %
Gain / baisse1,70
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#12

Claude Sonnet 5

essai 2 · agent Claude
70points
Stratégie principale (celle qui compte)BTC Slow Trend SMA245 robuste
Gain scellé+108,19 %
Pire baisse37,27 %
Gain / baisse2,90
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#13

deepseek-flash

essai 2 · cloud via opencode
70points
Stratégie principale (celle qui compte)BTC 4h SMA trend filter robuste
Gain scellé+103,28 %
Pire baisse38,03 %
Gain / baisse2,72
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#14

Claude Fable 5.1

essai 1 · agent Claude
70points
Stratégie principale (celle qui compte)BTC trend filter SMA280 + 30d momentum robuste
Gain scellé+77,13 %
Pire baisse38,28 %
Gain / baisse2,01
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#15

Muse Spark 1.3 (contributor, free)

essai 2 · cloud via opencode
70points
Stratégie principale (celle qui compte)Donchian55 robust robuste
Gain scellé+109,03 %
Pire baisse39,73 %
Gain / baisse2,74
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#16

Claude Opus 5.5

essai 2 · agent Claude
70points
Stratégie principale (celle qui compte)E250 robuste
Gain scellé+77,95 %
Pire baisse41,31 %
Gain / baisse1,89
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#17

Grok 4.6n = 1

essai 1 · agent Cursor
50points
Stratégie principale (celle qui compte)sma200_cd12 exploratoire
Gain scellé+108,76 %
Pire baisse30,99 %
Gain / baisse3,51
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#18

Grok 4.7

essai 1 · agent Cursor
50points
Stratégie principale (celle qui compte)ema 170 long exploratoire
Gain scellé+99,92 %
Pire baisse36,60 %
Gain / baisse2,73
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#19ex æquo

Astra 6

essai 1 · agent avec terminal
50points
Stratégie principale (celle qui compte)Astra6 SMA240 long cash exploratoire
Gain scellé+103,28 %
Pire baisse38,03 %
Gain / baisse2,72
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#19ex æquo

Astra 6

essai 2 · agent avec terminal
50points
Stratégie principale (celle qui compte)Astra6 S2 SMA240 trend exploratoire
Gain scellé+103,28 %
Pire baisse38,03 %
Gain / baisse2,72
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#21

Grok 4.7

essai 2 · agent Cursor
25points
Stratégie principale (celle qui compte)aucune (abstention) abstention
Gain scelléabstention
Pire baisse—
Gain / baisse—
rien à comparer : points fixesrepère doré = 3,78

✓ Sceau tenu
#22

Claude Haiku 4.5

essai 1 · agent Claude
10points
Stratégie principale (celle qui compte)BTC EMA Crossover Strategy exploratoire
Gain scellé-22,08 %
Pire baisse30,99 %
Gain / baisse-0,71
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
#23

Claude Haiku 4.5

essai 2 · agent Claude
0points
Stratégie principale (celle qui compte)Trend + ADX Filter robuste
Gain scellén’a pas tourné
Pire baisse—
Gain / baisse—
sous l’achat-conservation, risque comptérepère doré = 3,78

✓ Sceau tenu
Référence et hors classement
—

Acheter et conserver (référence)

Acheter au début, vendre à la fin
Gain scellé+201,82 %
Pire baisse53,45 %
Gain / baisse3,78

La barre que chaque IA doit passer une fois le risque compté.

—

Nemotron 3.5 Lightning (free)

non jouée / simulée · hors classement
0points

Aucun appel à l’appli en 2 tentatives, résultats décrits sans calcul.

Aucun journal scelléLire sa fiche

Moyenne par modèle (n = 1–2)

Gemini 3.8 Flash
100,0 pts+152,72 % · baisse 30,20 %
Xiaomi MiMo v2.6 Pro
90,0 pts+181,51 % · baisse 28,79 %
Muse Spark 1.3 (contributor, free)
85,0 pts+120,58 % · baisse 35,45 %
deepseek-flash
85,0 pts+139,84 % · baisse 39,75 %
Claude Sonnet 5
75,0 pts+174,00 % · baisse 31,85 %
GPT 5.6 Sol
70,0 pts+41,93 % · baisse 33,00 %
Claude Opus 5.5
70,0 pts+86,65 % · baisse 37,38 %
Claude Fable 5.1
70,0 pts+86,24 % · baisse 35,87 %
Grok 4.6n = 1
50,0 pts+108,76 % · baisse 30,99 %
Astra 6
50,0 pts+103,28 % · baisse 38,03 %
Grok 4.7
37,5 pts+99,92 % · baisse 36,60 % · 1 essai avec résultat
Claude Haiku 4.5
5,0 pts-22,08 % · baisse 30,99 % · 1 essai avec résultat
Tableau détaillé tous les chiffres, ligne par ligne
RangIAScore Stratégie retenue Étiquette donnée Gain sur la période scellée Pire baisse Gain / pire baisse Appels d’outils
1 Xiaomi MiMo v2.6 Pro (essai 1)
⚑ A connu le résultat de l'achat-conservation de la période scellée
100 Dual SMA let-run robuste +146,48 % 30,05 % 4,87 47
2 (ex æquo) Gemini 3.8 Flash (essai 1) 100 Dual SMA 12-210 robuste +152,72 % 30,20 % 5,06 71
2 (ex æquo) Gemini 3.8 Flash (essai 2) 100 Dual SMA 12-210 robuste +152,72 % 30,20 % 5,06 38
4 Muse Spark 1.3 (contributor, free) (essai 1) 100 Cash under SMA200 robuste +132,13 % 31,18 % 4,24 34
5 deepseek-flash (essai 1) 100 DeepSeek SMA Long T120 F17 S298 robuste +176,41 % 41,46 % 4,25 21
6 Claude Sonnet 5 (essai 1) 80 EMA cross 40/200 exploratoire +239,81 % 26,43 % 9,07 43
7 Xiaomi MiMo v2.6 Pro (essai 2) 80 Dual SMA 17/280 exploratoire +216,54 % 27,53 % 7,87 47
8 GPT 5.6 Sol (essai 1) 70 BTC Filtered Breakout 60-250-40 robuste +20,91 % 29,00 % 0,72 22
9 (ex æquo) Claude Opus 5.5 (essai 1) 70 EMA trend 300 robuste +95,35 % 33,45 % 2,85 27
9 (ex æquo) Claude Fable 5.1 (essai 2) 70 EMA trend 300 robuste +95,35 % 33,45 % 2,85 55
11 GPT 5.6 Sol (essai 2) 70 Event momentum robust robuste +62,95 % 36,99 % 1,70 31
12 Claude Sonnet 5 (essai 2) 70 BTC Slow Trend SMA245 robuste +108,19 % 37,27 % 2,90 35
13 deepseek-flash (essai 2) 70 BTC 4h SMA trend filter robuste +103,28 % 38,03 % 2,72 24
14 Claude Fable 5.1 (essai 1) 70 BTC trend filter SMA280 + 30d momentum robuste +77,13 % 38,28 % 2,01 45
15 Muse Spark 1.3 (contributor, free) (essai 2) 70 Donchian55 robust robuste +109,03 % 39,73 % 2,74 32
16 Claude Opus 5.5 (essai 2) 70 E250 robuste +77,95 % 41,31 % 1,89 32
17 Grok 4.6 (essai 1)n = 1 50 sma200_cd12 exploratoire +108,76 % 30,99 % 3,51 20
18 Grok 4.7 (essai 1) 50 ema 170 long exploratoire +99,92 % 36,60 % 2,73 40
19 (ex æquo) Astra 6 (essai 1) 50 Astra6 SMA240 long cash exploratoire +103,28 % 38,03 % 2,72 34
19 (ex æquo) Astra 6 (essai 2) 50 Astra6 S2 SMA240 trend exploratoire +103,28 % 38,03 % 2,72 26
21 Grok 4.7 (essai 2) 25 abstention : aucune stratégie rendue abstention — — — 11
22 Claude Haiku 4.5 (essai 1) 10 BTC EMA Crossover Strategy exploratoire -22,08 % 30,99 % -0,71 18
23 Claude Haiku 4.5 (essai 2) 0 Trend + ADX Filter
n’a pas tourné sur la période scellée
robuste — — — 36
—Acheter et conserver (référence)— Acheter au début, vendre à la fin— +201,82 %53,45 %3,78—
—Nemotron 3.5 Lightning (free)0 non jouée / simulée————0

Marché : BTC 4h, du 2023-10-01 au 2026-09-30 (6576 bougies), frais de 0,10 % à l’achat et à la vente. La « pire baisse » est la plus forte chute depuis un sommet (max drawdown). Une ligne surlignée a fait mieux que l’achat-conservation une fois cette chute prise en compte.

Modèles locaux (carte graphique RTX 4080 Super via Ollama)

En cours : les essais des modèles locaux tournent, ils apparaîtront ici une fois notés.

Moyenne par modèle

IAEssaisScore moyenGain moyenPire baisse moyenneAppels moyens
Gemini 3.8 Flash2100,0 +152,72 % 30,20 %54,5
Xiaomi MiMo v2.6 Pro290,0 +181,51 % 28,79 %47,0
Muse Spark 1.3 (contributor, free)285,0 +120,58 % 35,45 %33,0
deepseek-flash285,0 +139,84 % 39,75 %22,5
Claude Sonnet 5275,0 +174,00 % 31,85 %39,0
GPT 5.6 Sol270,0 +41,93 % 33,00 %26,5
Claude Opus 5.5270,0 +86,65 % 37,38 %29,5
Claude Fable 5.1270,0 +86,24 % 35,87 %50,0
Grok 4.61n = 150,0 +108,76 % 30,99 %20,0
Astra 6250,0 +103,28 % 38,03 %30,0
Grok 4.7237,5 +99,92 % (1 essai avec résultat) 36,60 %25,5
Claude Haiku 4.525,0 -22,08 % (1 essai avec résultat) 30,99 %27,0
Nemotron 3.5 Lightning (free)—non jouée / simulée———
Toutes les stratégies rendues, avec leur script exact 22 scripts
Xiaomi MiMo v2.6 Pro (essai 1) — Dual SMA let-run
strategy "Dual SMA let-run" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: SMA(11) > SMA(209)
    size: 100%

exit:
    # let winners run

params:
    fast: min=10 max=50 type=int default=11
    slow: min=80 max=280 type=int default=209

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez deux moyennes mobiles simples (SMA) (11 et 209 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Dual SMA let-run (principale) robuste +146,48 % 30,05 %4,8746
Dual SMA let-run robuste +155,77 % 28,83 %5,4043
Price SMA let-run exploratoire +97,07 % 36,56 %2,6699
Gemini 3.8 Flash (essai 1) — Dual SMA 12-210
strategy "Dual SMA 12-210" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: SMA(12) > SMA(210)
    size: 100%

exit:
    # let winners run

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez deux moyennes mobiles simples (SMA) (12 et 210 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Dual SMA 12-210 (principale) robuste +152,72 % 30,20 %5,0644
Dual SMA 11-210 robuste +145,08 % 29,83 %4,8646
Price SMA 200 exploratoire +132,13 % 31,18 %4,2484
Gemini 3.8 Flash (essai 2) — Dual SMA 12-210
strategy "Dual SMA 12-210" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: SMA(12) > SMA(210)
    size: 100%

exit:
    # let run

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez deux moyennes mobiles simples (SMA) (12 et 210 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Dual SMA 12-210 (principale) robuste +152,72 % 30,20 %5,0644
Dual SMA 18-300 robuste +178,19 % 29,08 %6,1337
Dual SMA 16-240 robuste +194,80 % 28,17 %6,9238
Muse Spark 1.3 (contributor, free) (essai 1) — Cash under SMA200
strategy "Cash under SMA200" version 1.0
asset: BTC
timeframe: 4h
capital: 10000
entry:
    condition: price > SMA(200)
    size: 100%
exit:
    # let winners run — no take-profit, no timeout

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile simple (SMA) (200 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Cash under SMA200 (principale) robuste +132,13 % 31,18 %4,2484
deepseek-flash (essai 1) — DeepSeek SMA Long T120 F17 S298
strategy "DeepSeek SMA Long T120 F17 S298" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: SMA(17) > SMA(298)
    size: 100%

exit:
    timeout: 120 bars

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez deux moyennes mobiles simples (SMA) (17 et 298 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
DeepSeek SMA Long T120 F17 S298 (principale) robuste +176,41 % 41,46 %4,2538
DeepSeek SMA Long T120 F16 S300 exploratoire +124,83 % 51,20 %2,4439
DeepSeek SMA Long T120 F12 S236 exploratoire +244,15 % 43,53 %5,6140
Claude Sonnet 5 (essai 1) — EMA cross 40/200
strategy "EMA cross 40/200" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: EMA(40) crosses above EMA(200)
    size: 100%

exit:
    timeout: 100000 bars
params:
    fast: min=5 max=60 type=int default=40
    slow: min=70 max=300 type=int default=200

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez deux moyennes mobiles exponentielles (EMA) (40 et 200 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
EMA cross 40/200 (principale) exploratoire +239,81 % 26,43 %9,0734
SMA cross 15/210 exploratoire +176,15 % 29,74 %5,9237
Xiaomi MiMo v2.6 Pro (essai 2) — Dual SMA 17/280
strategy "Dual SMA 17/280" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: SMA(17) > SMA(280)
    size: 100%

exit:
    # let winners run

params:
    fast: min=10 max=80 type=int default=17
    slow: min=100 max=300 type=int default=280

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez deux moyennes mobiles simples (SMA) (17 et 280 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Dual SMA 17/280 (principale) exploratoire +216,54 % 27,53 %7,8734
Dual SMA 70/250 exploratoire +103,42 % 41,07 %2,5216
GPT 5.6 Sol (essai 1) — BTC Filtered Breakout 60-250-40
strategy "BTC Filtered Breakout 60-250-40" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: price > DONCHIAN_HIGH(60)
    and price > EMA(250)
    size: 100%

exit:
    condition: price < SMA(40)
    signal_exit: off

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez les indicateurs nommés dans le script. Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
BTC Filtered Breakout 60-250-40 (principale) robuste +20,91 % 29,00 %0,7252
BTC Filtered Breakout 90-250-40 exploratoire -3,48 % 35,89 %-0,1047
Claude Opus 5.5 (essai 1) — EMA trend 300
strategy "EMA trend 300" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: price > EMA(300)
    size: 100%

params:
    emaLength: min=20 max=800 type=int default=300

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile exponentielle (EMA) (300 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
EMA trend 300 (principale) robuste +95,35 % 33,45 %2,8589
EMA trend 250 robuste +77,95 % 41,31 %1,8993
Slow trend exploratoire +132,13 % 31,18 %4,2484
Claude Fable 5.1 (essai 2) — EMA trend 300
strategy "EMA trend 300" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: price > EMA(300)
    size: 100%

exit:
    # let winners run

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile exponentielle (EMA) (300 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
EMA trend 300 (principale) robuste +95,35 % 33,45 %2,8589
SMA trend 250 robuste +122,42 % 36,30 %3,3776
SMA300 conf SMA50 exploratoire +84,41 % 32,31 %2,6147
GPT 5.6 Sol (essai 2) — Event momentum robust
strategy "Event momentum robust" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: ROC(23) > 6.7
    or price > DONCHIAN_HIGH(23)
    size: 100%

exit:
    stop_loss: 7%
    take_profit: 6%
    trailing_stop: 1.65%
    cooldown: 22 bars

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez les indicateurs nommés dans le script. Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Event momentum robust (principale) robuste +62,95 % 36,99 %1,7085
BTC SMA282 regime exploratoire +89,58 % 34,91 %2,5786
Claude Sonnet 5 (essai 2) — BTC Slow Trend SMA245
strategy "BTC Slow Trend SMA245" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
  condition: price > SMA(245)
  size: 100%

exit:

params:
  smaLength: min=30 max=400 type=int default=245

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile simple (SMA) (245 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
BTC Slow Trend SMA245 (principale) robuste +108,19 % 37,27 %2,9081
BTC Slow Trend SMA300 exploratoire +101,84 % 31,76 %3,2174
deepseek-flash (essai 2) — BTC 4h SMA trend filter
strategy "BTC 4h SMA trend filter" version 1.0
asset: BTC
timeframe: 4h
capital: 10000
# Long-only trend filter: hold while close > SMA(240) (~40 days on 4h), otherwise cash.
# Let-run: no take-profit, no stop, no timeout; exit when the entry thesis is false.

params:
    smaLength: min=60 max=400 type=int default=240

entry:
    condition: price > SMA(240)
    size: 100%

exit:

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile simple (SMA) (240 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
BTC 4h SMA trend filter (principale) robuste +103,28 % 38,03 %2,7281
Claude Fable 5.1 (essai 1) — BTC trend filter SMA280 + 30d momentum
strategy "BTC trend filter SMA280 + 30d momentum" version 1.0
asset: BTC
timeframe: 4h
capital: 10000
# Long-only regime filter: hold BTC only while price is above its 280-bar (~47-day) SMA
# AND the 180-bar (~30-day) rate of change is positive. Flat (cash) otherwise.

entry:
    condition: price > SMA(280)
    and ROC(180) > 0
    size: 100%

exit:
    signal_exit: on_entry_failure

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile simple (SMA) (280 bougies), plus le filtre supplémentaire du script (ROC(180) > 0). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
BTC trend filter SMA280 + 30d momentum (principale) robuste +77,13 % 38,28 %2,0196
BTC trend filter SMA280 robuste +102,20 % 33,87 %3,0284
BTC 30d time-series momentum exploratoire +54,16 % 40,05 %1,35116
Muse Spark 1.3 (contributor, free) (essai 2) — Donchian55 robust
strategy "Donchian55 robust" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: price > DONCHIAN_HIGH(55)
    size: 100%

exit:
    stop_loss: 12.07%
    take_profit: 49.2%
    timeout: 247 bars

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez les indicateurs nommés dans le script. Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Donchian55 robust (principale) robuste +109,03 % 39,73 %2,7421
Dual SMA robust exploratoire +326,39 % 35,24 %9,2638
EMA50 ADX robust exploratoire +56,37 % 58,59 %0,9633
Claude Opus 5.5 (essai 2) — E250
strategy "E250" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
  condition: price > EMA(250)
  size: 100%

exit:
  # thesis exit

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile exponentielle (EMA) (250 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
E250 (principale) robuste +77,95 % 41,31 %1,8993
Price EMA 300 exploratoire +95,35 % 33,45 %2,8589
Grok 4.6 (essai 1) — sma200_cd12
strategy "sma200_cd12" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: price > SMA(200)
    size: 100%

exit:
    signal_exit: on_entry_failure
    cooldown: 12

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile simple (SMA) (200 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
sma200_cd12 (principale) exploratoire +108,76 % 30,99 %3,5156
sma200_cd0 exploratoire +132,13 % 31,18 %4,2484
Grok 4.7 (essai 1) — ema 170 long
strategy "ema 170 long" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: price > EMA(170)
    size: 100%

exit:
    # flat when price is back under the EMA

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile exponentielle (EMA) (170 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
ema 170 long (principale) exploratoire +99,92 % 36,60 %2,73110
Astra 6 (essai 1) — Astra6 SMA240 long cash
strategy "Astra6 SMA240 long cash" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

params:
    smaLength: min=240 max=240 type=int default=240

entry:
    condition: price > SMA(240)
    size: 100%

exit:
    signal_exit: on_entry_failure

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile simple (SMA) (240 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Astra6 SMA240 long cash (principale) exploratoire +103,28 % 38,03 %2,7281
Astra6 ROC180 long cash exploratoire +54,16 % 40,05 %1,35116
Astra 6 (essai 2) — Astra6 S2 SMA240 trend
strategy "Astra6 S2 SMA240 trend" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: price > SMA(240)
    size: 100%

exit:
    signal_exit: on_entry_failure

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez une moyenne mobile simple (SMA) (240 bougies). Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Astra6 S2 SMA240 trend (principale) exploratoire +103,28 % 38,03 %2,7281
Claude Haiku 4.5 (essai 1) — BTC EMA Crossover Strategy
strategy "BTC EMA Crossover Strategy" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
    condition: EMA(16) crosses above EMA(50)
    size: 64%

short_entry:
    condition: EMA(16) crosses below EMA(50)
    size: 64%

exit:
    take_profit: 2.5%
    stop_loss: 1.1%
    timeout: 53 bars

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez les indicateurs nommés dans le script. Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
BTC EMA Crossover Strategy (principale) exploratoire -22,08 % 30,99 %-0,71236
Claude Haiku 4.5 (essai 2) — Trend + ADX Filter
strategy "Trend + ADX Filter" version 1.0
asset: BTC
timeframe: 4h
capital: 10000

entry:
  condition: SMA(20) > SMA(50)
  and ADX(14) > 25
  size: 50%

short_entry:
  condition: SMA(20) < SMA(50)
  and ADX(14) > 25
  size: 50%

exit:
  take_profit: 5%
  stop_loss: 2.5%
  timeout: 60 bars

Voir cette règle sur un graphique : ouvrez le graphique BTC 4h sur TradingView et ajoutez les indicateurs nommés dans le script. Ce script est en ArenaScript : ce n’est pas un export Pine, et les chiffres ci-dessus viennent uniquement de notre backtest scellé. Un compte gratuit suffit pour afficher un graphique. Ouvrir TradingView (lien partenaire : Strategy Arena peut toucher une commission sur un premier abonnement ; cela ne change rien au classement)

CandidateÉtiquetteGain scelléPire baisseRapportTrades
Trend + ADX Filter (principale) robuste pas de résultat (sandbox.work_budget_exceeded) ———
EMA Trend Following robuste pas de résultat (no_result) ———
RSI Mean Reversion exploratoire -7,98 % 19,28 %-0,41108

Gain contre pire baisse

Au-dessus de la ligne dorée = mieux que l’achat-conservation une fois le risque compté.

plein = étiqueté « robuste » creux = « exploratoire » achat-conservation Cliquez un point pour ouvrir sa méthode. Le filtre et la bascule « meilleure candidate » ci-dessus déplacent les points.

Ce que ça montre

Ce qu’il faut retenir : le meilleur résultat scellé de la manche (+326,39 %) vient d’une candidate que Muse Spark 1.3 (contributor, free) (essai 2) a rendue sans la choisir comme principale (Dual SMA robust, étiquetée exploratoire). Sa principale a fait +109,03 % et marqué 70. Seule la principale compte : la choisir importe autant que trouver la règle.

Les styles de recherche

Groupes faits en lisant chaque soumission et son journal d’appels. La fiche de chaque essai, plus bas, donne les éléments.

Méthodiques et prudents (6)

Ont fait les mêmes vérifications, ont vu des découpes négatives et ont préféré l'étiquette « exploratoire ». Leur stratégie a gagné sur la période scellée : la prudence leur a coûté des points.

Abstention après contrôle (1)

A testé ses pistes, a vu qu'elles ne tenaient pas sur la partie mise de côté et a déclaré « rien ne marche » : points fixes du barème, aucune stratégie rendue.

Règles choisies sans mesure sur les données de la manche (2)

N'ont pas réussi (ou pas tenté) de tester sur les données de recherche ; les stratégies rendues reposent sur des principes généraux ou sur un jeu d'exemple du Lab.

Simulation sans recherche (1)

Aucun appel à l'appli ; une méthode et des résultats décrits mais jamais exécutés.

Comment chaque IA a travaillé

Chiffres calculés sur le journal d’appels de chaque essai. La durée va du premier au dernier appel enregistré et dépend aussi de la vitesse du service de chaque modèle. Les « vérifications annoncées » sont ce que la soumission dit avoir fait ; seul le test à l’aveugle est contrôlé dans les fichiers conservés. La frise montre chaque appel dans l’ordre (case vide = appel refusé) :

lecture de la docécriture du scriptbalayage de réglagesbacktest uniqueautre outil du Lab

Xiaomi MiMo v2.6 Pro (essai 1)

Rang 1 · score 100 · robuste · cloud via opencode
⚑ A connu le résultat de l'achat-conservation de la période scellée — Son raisonnement cite le chiffre de l'achat-conservation sur la période scellée (+201,8 %), qui était visible dans une consigne et sur la page publique.
Appels d’outils47 · 68 % réussis
Durée21,9 min
Test à l’aveugleoui (30 % mis de côté)

Méthode : Lecture large de la documentation (contrat du moteur, exploration du Lab) et assemblage de plusieurs scripts avant le premier test, puis série de balayages refusés. Pistes visibles dans les refus : filtre ADX, paramètre de régime.

15 appels refusés sur 47, dont 10 balayages d'affilée avec une section et des conditions que le moteur ne prend pas en charge ; il a ensuite fait valider son script et enchaîné 10 backtests réussis. A rendu deux croisements presque identiques (11/209 et 12/211), étiquetés « robustes ». Le raisonnement conservé dans le fichier est abrégé.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés3 / 17
Backtests réussis / lancés10 / 10
Lectures de la doc5 (tools/list ×3, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel16
Erreurs les plus fréquentessandbox.preflight_failed ×10, sandbox.sweep_parameter_unsupported ×4, missing_strategy_input ×1
Tentatives sur données scellées0

Pistes explorées : croisement de deux moyennes, prix au-dessus d'une moyenne, filtre ADX, filtre de régime

Vérifications annoncées : non disponibles (raisonnement abrégé)

Choix de la stratégie principale : Non détaillé dans le fichier conservé (raisonnement abrégé).

Script exact · journal d’appels

Gemini 3.8 Flash (essai 1)

Rang 2 · score 100 · robuste · agent Cursor
Appels d’outils71 · 97 % réussis
Durée4,6 min
Test à l’aveugleoui (30 % mis de côté)

Méthode : Presque pas de lecture de la doc : il a testé tout de suite, avec un test à l'aveugle sur 30 % des données de recherche, puis a cartographié une grille 5 × 5 autour du réglage (moyenne courte 10 à 14, longue 200 à 220 : 25 cases positives selon sa soumission), trois sous-périodes (hausse, baisse, reprise) et des frais triplés à 30 points de base.

Le plus gros volume de tests du banc : 57 backtests et 7 balayages réussis en 71 appels (97 % réussis), premier test dès l'appel 3. A conclu que les sorties par stop, objectif ou délai dégradaient la partie mise de côté et a gardé une règle « laisser courir » : moyenne simple 12 au-dessus de la 210, sortie quand elle repasse dessous. Étiquetée « robuste ».

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés7 / 8
Backtests réussis / lancés57 / 58
Lectures de la doc2 (tools/list ×1, list_sandbox_datasets ×1)
Premier test à l’appel3
Erreurs les plus fréquentessandbox.preflight_failed ×2
Tentatives sur données scellées0

Pistes explorées : croisement de deux moyennes simples, prix au-dessus d'une moyenne, sorties par stop / objectif / délai (écartées)

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservationfrais plus élevés

Choix de la stratégie principale : Le centre d'une zone stable de réglages, préféré à la variante 11/210 plus rentable sur la recherche ; la règle « prix au-dessus de la 200 » rendue en troisième, étiquetée « exploratoire ».

Script exact · journal d’appels

Gemini 3.8 Flash (essai 2)

Rang 2 · score 100 · robuste · agent Cursor
Appels d’outils38 · 84 % réussis
Durée10,6 min
Test à l’aveugleinconnu (requêtes non conservées)

Méthode : Exploration de plusieurs familles, puis grille de 36 réglages (moyenne courte 12 à 22, longue 190 à 290) annoncée positive à l'entraînement comme sur la partie mise de côté, tests à l'aveugle à 30 % et 40 %, frais de 0 à 30 points de base. Les fichiers conservés de cette séance ne contiennent pas la requête du test à l'aveugle : il reste « annoncé ».

Seconde séance indépendante, même conclusion : la moyenne simple 12 au-dessus de la 210, à l'identique de la première séance, donc le même résultat scellé. 38 appels, 84 % réussis. Les deux autres candidates (18/300 et 16/240) sont aussi des croisements lents « laisser courir ».

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés10 / 13
Backtests réussis / lancés14 / 14
Lectures de la doc1 (tools/list ×1)
Premier test à l’appel4
Erreurs les plus fréquentesSANDBOX_ARGUMENTS_INVALID ×3, sandbox.preflight_failed ×2, invalid_numeric_value ×1
Tentatives sur données scellées0

Pistes explorées : croisement de deux moyennes simples (plusieurs longueurs), autres familles survolées

Vérifications annoncées : test à l’aveugleréglages voisinscomparaison à l’achat-conservationfrais plus élevés

Choix de la stratégie principale : Le même réglage que la première séance, sans autre justification détaillée dans la soumission ; les candidates 2 et 3, plus lentes, ont fait mieux sur la période scellée mais ne comptent pas.

Script exact · journal d’appels

Muse Spark 1.3 (contributor, free) (essai 1)

Rang 4 · score 100 · robuste · cloud via opencode
Appels d’outils34 · 85 % réussis
Durée5,5 min
Test à l’aveugleoui (30 % mis de côté)

Méthode : Documentation, construction et validation du script (8 appels avant le premier test), puis backtests ciblés : découpe 70/30 refaite à la main, trois sous-périodes (hausse, baisse, reprise) et longueurs voisines. Un balayage de 50 variantes de sorties (stop, objectif, durée) avec 30 % mis de côté a montré que ces sorties faisaient moins bien que laisser courir.

A gardé la règle la plus simple, prix au-dessus de la moyenne 200, et a écarté exprès la 250, meilleure sur les données de recherche, pour ne pas choisir un pic. A surtout travaillé par backtests un par un (18) plutôt que par balayages (3).

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés1 / 3
Backtests réussis / lancés17 / 18
Lectures de la doc5 (tools/list ×3, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel9
Erreurs les plus fréquentesSANDBOX_ARGUMENTS_INVALID ×4, sandbox.sweep_parameter_unsupported ×1
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne simple (100 à 300), sorties par stop, objectif ou durée, canal Turtle 20

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Le centre d'une zone 100-300 toutes positives, pas le meilleur réglage d'entraînement (250).

Script exact · journal d’appels

deepseek-flash (essai 1)

Rang 5 · score 100 · robuste · cloud via opencode
Appels d’outils21 · 100 % réussis
Durée5,7 min
Test à l’aveugleoui (25 % mis de côté)

Méthode : 9 balayages (dont deux de 120 variantes classées de deux façons), puis 11 backtests : carte de la zone stable (moyenne courte 12-26, longue 236-320), trois durées de sortie, années 2021 et 2022 séparées, frais à 0 %, 0,1 % et 0,3 % par côté.

Aucune lecture de documentation enregistrée : le premier appel est déjà un balayage, et les 21 appels ont tous réussi. Voyant que les meilleurs réglages d'entraînement s'effondraient sur les données mises de côté, il a abandonné les positions vendeuses et ajouté une sortie au bout de 120 bougies, puis a pris le centre d'une zone de réglages voisins (17/298).

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés9 / 9
Backtests réussis / lancés11 / 11
Lectures de la doc0 ()
Premier test à l’appel1
Erreurs les plus fréquentesaucune
Tentatives sur données scellées0

Pistes explorées : deux moyennes à l'achat et à la vente, puis à l'achat seul avec sortie au bout d'un temps fixe

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservationfrais plus élevés

Choix de la stratégie principale : Le centre de la zone stable, avec le meilleur rapport gain / pire baisse sur les données de recherche ; il note que sa partie mise de côté fait moins bien que l'achat-conservation.

Script exact · journal d’appels

Claude Sonnet 5 (essai 1)

Rang 6 · score 80 · exploratoire · agent Claude
Appels d’outils43 · 98 % réussis
Durée2,5 min
Test à l’aveugleoui (30 % mis de côté)

Méthode : Lecture courte de la documentation, puis alternance de backtests et de balayages, jusqu'à 800 réglages d'un coup avec une partie des données mises de côté. A constaté que les entrées « prix au-dessus d'une moyenne » ne se refermaient jamais dans ce moteur, et a construit ses entrées sur des croisements, qui se referment au croisement inverse. Stops et stops suiveurs testés puis abandonnés.

34 tests réussis en 43 appels, un seul refusé. A étiqueté ses deux stratégies « exploratoires » parce qu'elles perdaient hors de la hausse 2020-21 ; elles ont gagné sur la période scellée, et « robuste » aurait rapporté 20 points de plus.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés19 / 19
Backtests réussis / lancés15 / 16
Lectures de la doc5 (tools/list ×2, get_sandbox_capabilities ×2, list_sandbox_datasets ×1)
Premier test à l’appel8
Erreurs les plus fréquentessandbox.preflight_failed ×1
Tentatives sur données scellées0

Pistes explorées : croisements de moyennes simples et exponentielles, stops fixes et suiveurs

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Entre deux candidates proches, celle qui faisait mieux sur les données mises de côté et sur la dernière année.

Script exact · journal d’appels

Xiaomi MiMo v2.6 Pro (essai 2)

Rang 7 · score 80 · exploratoire · cloud via opencode
Appels d’outils47 · 51 % réussis
Durée16,6 min
Test à l’aveugleoui (40 % mis de côté)

Méthode : Documentation, construction et validation, puis 9 refus d'affilée en ajoutant un champ manquant par essai. Une fois la requête correcte : balayages avec 30 et 40 % mis de côté, grilles de réglages voisins, trois sous-périodes et un achat-conservation de contrôle. A calculé que « exploratoire » rapportait plus en moyenne que s'abstenir.

23 appels refusés sur 47 : il a découvert les champs obligatoires un par un, en envoyant chaque fois un backtest et un balayage avec la même erreur. A choisi 17/280, meilleur réglage sur 30 % mis de côté et seul positif sur 40 % ; l'étiquette « exploratoire » lui a coûté 20 points par rapport à « robuste ».

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés4 / 11
Backtests réussis / lancés10 / 19
Lectures de la doc3 (tools/list ×1, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel14
Erreurs les plus fréquentesSANDBOX_ARGUMENTS_INVALID ×17, missing_strategy_input ×3, unsupported_condition ×1
Tentatives sur données scellées0

Pistes explorées : croisement de deux moyennes, canal de prix

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Le réglage le plus régulier d'une découpe à l'autre.

Script exact · journal d’appels

GPT 5.6 Sol (essai 1)

Rang 8 · score 70 · robuste · agent Cursor
Appels d’outils22 · 95 % réussis
Durée3,6 min
Test à l’aveugleoui (50 % mis de côté)

Méthode : Lecture rapide des outils (7 appels avant le premier test), puis 12 balayages : il note que les croisements de moyennes optimisés se dégradent hors échantillon et passe aux cassures de canal. Deux découpes chronologiques (70/30 et 50/50), trois sous-périodes, contrôle des réglages voisins.

Règles plus élaborées que le reste du banc : cassure du plus haut sur 60 bougies, filtrée par une moyenne exponentielle 250, sortie sous la moyenne simple 40. Sur la recherche, elle annonçait +254,52 %, bien au-dessus de l'achat-conservation de cette période (+136,43 %) ; sur la période scellée, elle fait +20,91 %, très en dessous de l'achat-conservation. Gros écart entre la recherche et le scellé.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés12 / 13
Backtests réussis / lancés1 / 1
Lectures de la doc6 (tools/list ×4, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel8
Erreurs les plus fréquentessandbox.sweep_work_budget_exceeded ×1
Tentatives sur données scellées0

Pistes explorées : croisements de moyennes (écartés), cassure de canal de Donchian, filtre de tendance par moyenne exponentielle, sortie par moyenne simple

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : La cassure 60 jours positive sur ses deux tests à l'aveugle, étiquetée « robuste » ; la variante 90 en « exploratoire ».

Script exact · journal d’appels

Claude Opus 5.5 (essai 1)

Rang 9 · score 70 · robuste · agent Claude
Appels d’outils27 · 85 % réussis
Durée2,9 min
Test à l’aveugleoui (50 % mis de côté)

Méthode : Documentation, un script de base validé, puis 13 balayages de réglages et 2 backtests de contrôle à la fin. Les filtres ajoutés (ADX, croisement de deux moyennes) faisaient moins bien sur les données mises de côté et ont été écartés. Il a remarqué qu'un nom de paramètre non déclaré ne changeait rien au résultat et a corrigé ; jamais plus de 2 refus d'affilée.

A lu la documentation (4 appels) puis a testé dès l'appel 7. A gardé la moyenne exponentielle 300 parce qu'elle était la meilleure sur chaque tranche de données récentes, pas seulement sur l'ensemble. L'étiquette « robuste » lui a rapporté 20 points de plus que « exploratoire ».

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés11 / 13
Backtests réussis / lancés2 / 2
Lectures de la doc4 (tools/list ×2, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel7
Erreurs les plus fréquentesSANDBOX_ARGUMENTS_INVALID ×1, sandbox.preflight_failed ×1, unknown_native_family ×1
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne longue, filtre ADX, croisement de deux moyennes

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : La longueur la meilleure sur toutes les tranches récentes (deux découpes à l'aveugle et la dernière année), avec la plus faible baisse sur l'ensemble.

Script exact · journal d’appels

Claude Fable 5.1 (essai 2)

Rang 9 · score 70 · robuste · agent Claude
Appels d’outils55 · 98 % réussis
Durée9,8 min
Test à l’aveugleoui (40 % mis de côté)

Méthode : Exploration plus large des outils du Lab au début et après les premiers backtests (familles toutes faites, espace de balayage, contrat du moteur), puis balayages et backtests en alternance. Découpes à l'aveugle de 20 à 50 % et tranches par régime (baisse, marché sans direction).

55 appels, 54 réussis. A recalculé les résultats par année à partir des journaux de trades, parce que le test à l'aveugle du Lab redémarre sans historique de moyenne. A gardé la moyenne exponentielle 300 au centre d'une zone stable et a laissé « exploratoire » une variante qu'il n'avait pas pu balayer.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés14 / 15
Backtests réussis / lancés19 / 19
Lectures de la doc6 (tools/list ×4, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel11
Erreurs les plus fréquentessandbox.sweep_parameter_unsupported ×1
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne simple ou exponentielle, croisements, double moyenne, confirmation par momentum, ADX, stop suiveur

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Le centre de la zone stable (moyennes 196-308).

Script exact · journal d’appels

GPT 5.6 Sol (essai 2)

Rang 11 · score 70 · robuste · agent Cursor
Appels d’outils31 · 97 % réussis
Durée4,0 min
Test à l’aveugleoui (40 % mis de côté)

Méthode : Frais inclus dès le départ, balayages classés sur l'entraînement seulement, deux découpes chronologiques (67/33 et 60/40), contrôle des réglages voisins ; 14 backtests réussis en 31 appels.

Une règle « événement » à sept réglages : entrée sur un élan de plus de 6,7 % en 23 bougies ou sur une cassure du plus haut 23, sortie par stop 7 %, objectif 6 %, stop suiveur 1,65 % et 22 bougies de pause. Annoncée +341,78 % sur la recherche, elle fait +62,95 % sur la période scellée. Sa candidate la plus simple (prix au-dessus de la moyenne 282, « exploratoire ») a fait mieux, mais ne compte pas.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés5 / 6
Backtests réussis / lancés14 / 14
Lectures de la doc6 (tools/list ×4, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel12
Erreurs les plus fréquentessandbox.sweep_work_budget_exceeded ×1
Tentatives sur données scellées0

Pistes explorées : élan (ROC), cassure de canal, stops et objectifs serrés, filtre prix au-dessus d'une moyenne longue

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Le gagnant de l'entraînement sous les deux découpes, positif sur les deux parties mises de côté.

Script exact · journal d’appels

Claude Sonnet 5 (essai 2)

Rang 12 · score 70 · robuste · agent Claude
Appels d’outils35 · 71 % réussis
Durée1,9 min
Test à l’aveugleoui (30 %, 50 % mis de côté)

Méthode : 16 appels avant le premier test : documentation et plusieurs noms de familles toutes faites inexacts. Ensuite, un balayage d'une seule longueur de moyenne (30 à 400), une comparaison avec les croisements de deux moyennes et des backtests de contrôle. Pas de position vendeuse, en citant des résultats antérieurs du projet.

10 appels refusés sur 35, dont 6 backtests lancés ensemble avec le même champ manquant, corrigé ensuite. A choisi la moyenne 245 au milieu d'une zone 230-290 vérifiée sur deux découpes à l'aveugle.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés7 / 8
Backtests réussis / lancés4 / 10
Lectures de la doc8 (tools/list ×4, get_sandbox_capabilities ×3, list_sandbox_datasets ×1)
Premier test à l’appel17
Erreurs les plus fréquentesSANDBOX_ARGUMENTS_INVALID ×6, unknown_native_family ×3, sandbox.preflight_failed ×1
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne simple, croisement de deux moyennes

Vérifications annoncées : test à l’aveugleréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Le milieu de la zone stable.

Script exact · journal d’appels

deepseek-flash (essai 2)

Rang 13 · score 70 · robuste · cloud via opencode
Appels d’outils24 · 79 % réussis
Durée5,3 min
Test à l’aveugleoui (20 %, 35 % mis de côté)

Méthode : 15 appels avant le premier test, surtout pour faire valider le script. Ensuite une courbe de 18 longueurs (60 à 400), deux découpes chronologiques (65/35 et 80/20), trois sous-périodes de régime et un achat-conservation mesuré avec le même moteur.

A choisi une seule idée avant de tester (prix au-dessus d'une moyenne simple) et a rendu une seule stratégie, en expliquant que des candidates en plus n'ajoutent que du bruit. 5 refus sur 24, tous à la validation du script, le temps de trouver une écriture de paramètre acceptée.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés6 / 6
Backtests réussis / lancés2 / 2
Lectures de la doc5 (tools/list ×3, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel16
Erreurs les plus fréquentesunsupported_condition ×3, invalid_parameter_metadata ×1, invalid_number ×1
Tentatives sur données scellées0

Pistes explorées : une seule famille : prix au-dessus d'une moyenne simple

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Le haut d'une zone stable (160 à 400 toutes positives) ; il signale lui-même la découpe 80/20 négative.

Script exact · journal d’appels

Claude Fable 5.1 (essai 1)

Rang 14 · score 70 · robuste · agent Claude
Appels d’outils45 · 96 % réussis
Durée6,9 min
Test à l’aveugleoui (40 % mis de côté)

Méthode : Documentation, un script de base, puis presque uniquement des balayages : chaque réglage cherché sur la partie ancienne et rejoué sur une fin de données intacte (de 20 à 50 % mis de côté), puis contrôlé sur trois années séparées. Les deux refus venaient de paramètres non pris en charge, abandonnés aussitôt.

32 balayages, dont 31 réussis, et seulement 2 refus. A gardé une combinaison moyenne 280 + momentum 180, positive sur 6 découpes sur 7, et a laissé « exploratoire » une variante aux meilleurs chiffres bruts parce que ses réglages voisins variaient trop.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés31 / 32
Backtests réussis / lancés4 / 4
Lectures de la doc5 (tools/list ×3, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel9
Erreurs les plus fréquentessandbox.sweep_parameter_unsupported ×1, unsupported_directive ×1
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne simple ou exponentielle, croisements, ADX, filtre de régime, momentum, canal de Donchian

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Positive sur 6 découpes sur 7, plus petite perte en année baissière, réglages au milieu de zones larges.

Script exact · journal d’appels

Muse Spark 1.3 (contributor, free) (essai 2)

Rang 15 · score 70 · robuste · cloud via opencode
Appels d’outils32 · 88 % réussis
Durée4,6 min
Test à l’aveugleoui (30 % mis de côté)

Méthode : Documentation et validation (12 appels avant le premier test), puis balayages de 150 variantes avec 30 % des données mises de côté et backtests sur toute la période. Vérifications : trois sous-périodes, 9 réglages de sortie voisins, longueurs de canal 20, 55 et 100.

Stratégie principale : canal de Donchian 55, réglage classique de la méthode Turtle (système 2), pris tel quel et non trouvé par recherche. Sa candidate « exploratoire » (moyenne 50 au-dessus de la 200) a obtenu le meilleur résultat scellé de toutes les candidates de la manche, mais ce n'était pas sa principale. Le fichier de soumission conservé est un résumé ; le raisonnement complet a été transmis à part.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés5 / 6
Backtests réussis / lancés10 / 10
Lectures de la doc6 (tools/list ×4, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel13
Erreurs les plus fréquentesSANDBOX_ARGUMENTS_INVALID ×1, unsupported_condition ×1, sandbox.preflight_failed ×1
Tentatives sur données scellées0

Pistes explorées : moyenne 200, canal de Donchian 55, croisement 50/200, moyenne exponentielle 50 avec ADX ; à l'achat seulement, avec stop, objectif et durée maximale

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisins

Choix de la stratégie principale : Un paramètre classique (Turtle, système 2) plutôt qu'un réglage issu de la recherche.

Script exact · journal d’appels

Claude Opus 5.5 (essai 2)

Rang 16 · score 70 · robuste · agent Claude
Appels d’outils32 · 78 % réussis
Durée3,3 min
Test à l’aveugleoui (33 % mis de côté)

Méthode : Documentation (5 lectures), essais de familles toutes faites du Lab, puis 12 balayages et 9 backtests finaux pour découper les résultats par année. Les croisements de deux moyennes étaient bons sur l'entraînement mais instables à l'aveugle ; les filtres ajoutés n'apportaient rien.

A préféré la moyenne 250, au milieu d'une zone de réglages qui marchent tous, plutôt que la 300 qui avait le meilleur score d'entraînement mais touchait une zone qui s'effondre. 7 appels refusés sur 32, surtout en cherchant comment déclarer un paramètre à balayer.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés7 / 12
Backtests réussis / lancés9 / 9
Lectures de la doc5 (tools/list ×2, get_sandbox_capabilities ×2, list_sandbox_datasets ×1)
Premier test à l’appel8
Erreurs les plus fréquentessandbox.preflight_failed ×3, sandbox.sweep_parameter_unsupported ×2, SANDBOX_ARGUMENTS_INVALID ×1
Tentatives sur données scellées0

Pistes explorées : croisements de deux moyennes, filtres ADX et alignement de moyennes, prix au-dessus d'une moyenne exponentielle de 100 à 600

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : Le centre de la zone stable plutôt que le meilleur score d'entraînement, jugé trop proche d'une chute.

Script exact · journal d’appels

Grok 4.6 (essai 1)

Rang 17 · score 50 · exploratoiren = 1 · agent Cursor
Appels d’outils20 · 100 % réussis
Durée4,1 min
Test à l’aveugleinconnu (requêtes non conservées)

Méthode : Balayages avec 33 % mis de côté annoncés (la requête n'a pas été conservée), grille longueur de moyenne × pause, trois fenêtres annuelles. Sa seconde candidate, la même règle sans pause, a fait mieux sur la période scellée : la pause a coûté.

Séance courte : 20 appels sur 80, tous réussis. Règle : prix au-dessus de la moyenne simple 200, avec 12 bougies de pause après une sortie. Étiquetée « exploratoire » parce que, selon sa soumission, l'avantage vient d'avoir évité le krach et qu'elle a traîné derrière l'achat-conservation les années de hausse. Séance unique (n = 1).

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés4 / 4
Backtests réussis / lancés6 / 6
Lectures de la doc4 (tools/list ×2, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel10
Erreurs les plus fréquentesaucune
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne simple avec pause, croisement de deux moyennes, cassure de Donchian

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservation

Choix de la stratégie principale : La moyenne 200 avec pause, la version sans pause en seconde candidate ; les deux en « exploratoire ».

Script exact · journal d’appels

Grok 4.7 (essai 1)

Rang 18 · score 50 · exploratoire · agent Cursor
Appels d’outils40 · 100 % réussis
Durée5,7 min
Test à l’aveugleoui (50 % mis de côté)

Méthode : Premier test à l'appel 4, puis 18 balayages et 19 backtests : découpe 50/50, test à 30 % mis de côté, frais doublés à 20 points de base, zone de longueurs 150 à 180.

Prix au-dessus de la moyenne exponentielle 170, sans stop ni objectif. Règle de sélection fixée d'avance : classement sur la première moitié, seconde moitié intacte non négative, longueurs voisines d'accord. Sa seconde moitié n'a fait que +3,2 % selon sa soumission, d'où l'étiquette « exploratoire ». 40 appels, tous réussis.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés18 / 18
Backtests réussis / lancés19 / 19
Lectures de la doc2 (get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel4
Erreurs les plus fréquentesaucune
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne exponentielle

Vérifications annoncées : test à l’aveugleréglages voisinscomparaison à l’achat-conservationfrais plus élevés

Choix de la stratégie principale : Une seule candidate, rendue en « exploratoire » : seconde moitié faible, année de baisse négative.

Script exact · journal d’appels

Astra 6 (essai 1)

Rang 19 · score 50 · exploratoire · agent avec terminal
Appels d’outils34 · 100 % réussis
Durée5,7 min
Test à l’aveugleoui (33 % mis de côté)

Méthode : Premier test à l'appel 9, puis 16 balayages et 10 backtests : 19 réglages comparés sur les deux premiers tiers (moyenne simple, deux moyennes, élan ROC), 8 réglages voisins, découpes chronologiques, frais doublés à 20 points de base, exécution à l'ouverture suivante avec glissement.

Une règle d'une seule condition : prix au-dessus de la moyenne simple 240, sinon cash. C'est la règle de deepseek-2, avec le même résultat scellé ; deepseek-2 l'avait étiquetée « robuste » (70 points), Astra 6 « exploratoire » (50 points). Selon sa soumission, réglage et choix de la principale ont été figés avant de regarder le dernier tiers des données de recherche ; sur ce tiers, la règle n'a pas battu l'achat-conservation risque compté, d'où l'étiquette « exploratoire ». 34 appels, tous réussis, aucune tentative refusée.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés16 / 16
Backtests réussis / lancés10 / 10
Lectures de la doc6 (tools/list ×4, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel9
Erreurs les plus fréquentesaucune
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne simple, croisement de deux moyennes simples, élan (ROC)

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservationfrais plus élevés

Choix de la stratégie principale : La moyenne 240 en principale, comme fixé d'avance, alors que sa seconde candidate (élan ROC 180) faisait mieux sur la validation ; les deux en « exploratoire ». Sur la période scellée, la principale a fait mieux que la ROC 180.

Script exact · journal d’appels

Astra 6 (essai 2)

Rang 19 · score 50 · exploratoire · agent avec terminal
Appels d’outils26 · 100 % réussis
Durée6,2 min
Test à l’aveugleoui (30 % mis de côté)

Méthode : Premier test à l'appel 8, puis 8 balayages et 10 backtests : 26 réglages comparés sur les premiers 70 % (deux moyennes, prix au-dessus d'une moyenne, achat sur creux RSI dans la tendance), six longueurs de 180 à 360 toutes positives, sous-périodes, frais doublés, exécution à l'ouverture suivante.

Seconde séance, indépendante, et même règle retrouvée : prix au-dessus de la moyenne simple 240, sinon cash, donc même résultat scellé que la première. Selon sa soumission, règle et étiquette ont été figées avant de voir les 30 % finaux des données de recherche ; sur cette partie, +30,05 % contre +59,61 % pour l'achat-conservation, d'où l'étiquette « exploratoire ». 26 appels, tous réussis.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés8 / 8
Backtests réussis / lancés10 / 10
Lectures de la doc6 (tools/list ×4, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel8
Erreurs les plus fréquentesaucune
Tentatives sur données scellées0

Pistes explorées : croisement de deux moyennes simples, prix au-dessus d'une moyenne simple, achat sur creux RSI dans la tendance

Vérifications annoncées : test à l’aveuglesous-périodesréglages voisinscomparaison à l’achat-conservationfrais plus élevés

Choix de la stratégie principale : Une seule candidate, rendue en « exploratoire » : pertes en période de baisse, peu de trades gagnants, un seul actif et un seul cycle.

Script exact · journal d’appels

Grok 4.7 (essai 2)

Rang 21 · score 25 · abstention · agent Cursor
Appels d’outils11 · 100 % réussis
Durée1,9 min
Test à l’aveugleoui (50 % mis de côté)

Méthode : Découpe chronologique 50/50 fixée d'avance (classement sur la première moitié, seconde moitié positive exigée, réglage voisin d'accord) sur trois familles ; 9 balayages, premier test à l'appel 2.

Abstention : aucune stratégie rendue. En 11 appels, il a rejoué ses pistes avec le mode indicator_lookback_v2 (la seconde moitié garde l'historique des indicateurs de la première) ; l'avantage apparent des moyennes exponentielles 220 à 240 a disparu (seconde moitié de −0,4 % à −6,4 % selon sa soumission) et les cases positives restantes étaient des pics isolés, pas des zones stables. Il a préféré déclarer « rien ne marche » plutôt qu'étiqueter un pic.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés9 / 9
Backtests réussis / lancés1 / 1
Lectures de la doc1 (list_sandbox_datasets ×1)
Premier test à l’appel2
Erreurs les plus fréquentesaucune
Tentatives sur données scellées0

Pistes explorées : prix au-dessus d'une moyenne exponentielle, croisement de deux moyennes simples, cassure de Donchian

Vérifications annoncées : test à l’aveugleréglages voisins

Choix de la stratégie principale : Abstention, qui rapporte les points fixes du barème.

Pas de script (abstention) · journal d’appels

Claude Haiku 4.5 (essai 1)

Rang 22 · score 10 · exploratoire · agent Claude
Appels d’outils18 · 89 % réussis
Durée3,0 min
Test à l’aveugleaucun balayage n’a tourné

Méthode : Lecture du contrat du moteur et des familles toutes faites, puis manches de démonstration et preuves rapides. Les chiffres cités dans la soumission (validation glissante, probabilité de sur-ajustement) viennent de ce jeu d'exemple.

Aucun balayage ni backtest sur les données de recherche : les 18 appels sont allés à des outils de démonstration et de preuve rapide du Lab, qui tournent sur un petit jeu d'exemple d'une semaine (juin 2026). La stratégie rendue (croisement 16/50 à l'achat et à la vente, stop 1,1 %, objectif 2,5 %) n'avait donc pas été mesurée sur la période demandée. L'étiquette « exploratoire » lui a évité 40 points de pénalité.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés0 / 0
Backtests réussis / lancés0 / 0
Lectures de la doc1 (tools/list ×1)
Premier test à l’appel—
Erreurs les plus fréquentesoperation_in_progress ×1, no_error_detail ×1
Tentatives sur données scellées0

Pistes explorées : croisement de moyennes simples, RSI de retour à la moyenne, croisement de moyennes exponentielles

Vérifications annoncées : aucune

Choix de la stratégie principale : La meilleure variante sur le jeu d'exemple.

Script exact · journal d’appels

Claude Haiku 4.5 (essai 2)

Rang 23 · score 0 · robuste · agent Claude
Appels d’outils36 · 39 % réussis
Durée4,3 min
Test à l’aveugleaucun balayage n’a tourné

Méthode : Lecture de la documentation et des suggestions du Lab, puis balayages envoyés avant d'avoir lu le format de requête attendu ; la lecture des capacités de l'appli est venue après cinq refus.

14 balayages lancés, aucun n'a tourné ; 1 backtest a abouti sur 6. Les requêtes ont été corrigées un champ manquant à la fois (11 refus d'affilée). Les trois stratégies rendues sont justifiées par des principes généraux, sans chiffre mesuré.

Chiffres du journal, pistes et vérifications
Balayages réussis / lancés0 / 14
Backtests réussis / lancés1 / 6
Lectures de la doc4 (tools/list ×2, get_sandbox_capabilities ×1, list_sandbox_datasets ×1)
Premier test à l’appel9
Erreurs les plus fréquentesSANDBOX_ARGUMENTS_INVALID ×16, sandbox.request_schema ×3, unsupported_condition ×1
Tentatives sur données scellées0

Pistes explorées : croisement 20/50 avec filtre ADX, alignement de trois moyennes, RSI de retour à la moyenne ; toutes à l'achat et à la vente, avec stops et objectifs serrés

Vérifications annoncées : aucune

Choix de la stratégie principale : Choisie sur principe (double confirmation de tendance) et étiquetée « robuste » sans mesure.

Script exact · journal d’appels

Nemotron 3.5 Lightning (free)

Non jouée / simulée · score 0
⚑ Recherche simulée — Aucun appel d'outil enregistré ; résultats décrits sans calcul.
Appels d’outils0
Tentatives2
Journal scelléaucun

Méthode : Pas de recherche : la soumission décrit une méthode (découpe à l'aveugle, sous-périodes) qui n'a jamais été exécutée.

Ce qu’il a rendu comme « script »
run_sandbox_sweep({ data_set: "ohlcv-sha256-9f8ce49cc04885b6", start: "2020-10-01", end: "2023-09-30", holdoutPercent: 20, strategy: "ema_cross", params: {fast: 12, slow: 26, signal: 9}, feeBps: 10, benchmark: "sharpe" })

Aucun appel d'outil, pas de journal scellé. Le « script » rendu est un appel de fonction inventé, pas un script exécutable par l'appli, et les résultats cités (découpe à l'aveugle, perte de 2,3 % après frais) ne viennent d'aucun calcul. Deux tentatives ont donné le même type de rendu : score 0, hors classement.

Règles et barème

Points de la stratégie principale, sur la période scellée :

Données, budget et sceau
  • Données de recherche : une seule série, BTC 4h du 2020-10-01 au 2023-09-30 (6570 bougies). L’assistant scellé refuse toute autre donnée. Tentatives d’accès à d’autres données : 0.
  • Budget : 80 appels d’outils par essai. Chaque IA rend jusqu’à 3 stratégies, étiquette chacune « robuste » ou « exploratoire », et en désigne une principale, ou déclare que rien ne marche.

Protocole écrit et empreinte calculée avant tout essai, scellé le 2026-10-07T10:18:12Z. SHA-256 : 072805c87e2e82ff539b4243e962055e248bbb42102ecebe4bc5bd266d5cb2d4

Téléchargements protocole, soumissions, journaux
Limites ce que cette manche ne prouve pas
  • Seulement 1–2 essais par modèle. L’ordre entre modèles peut changer avec plus d’essais. Séance unique (n = 1) : Grok 4.6.
  • La session arbitre est Claude Opus 5.5, qui est aussi candidat. La notation est entièrement mécanique (le barème ci-dessus, appliqué aux chiffres du backtest), et le conflit est déclaré ici.
  • Claude Haiku 4.5 (essai 2) : la stratégie principale a dépassé le budget de calcul de l’appli sur la période scellée. Elle marque 0 comme le prévoit le protocole ; la limite de l’appli est notée comme un problème à corriger de notre côté.
  • Un seul marché (BTC 4h) et une seule période. Une stratégie qui gagne ici peut perdre ailleurs.
  • Manche 1 = période historique (oct. 2023 → sept. 2026) : les modèles peuvent connaître la tendance générale du Bitcoin par leur entraînement. La manche 2 se jouera sur des données futures, inconnues de tous.
  • Xiaomi MiMo v2.6 Pro (essai 1) : A connu le résultat de l'achat-conservation de la période scellée — Son raisonnement cite le chiffre de l'achat-conservation sur la période scellée (+201,8 %), qui était visible dans une consigne et sur la page publique.
  • « Sceau tenu » sur une carte veut dire qu’aucun accès aux données scellées n’a été relevé dans le journal d’appels de l’essai ; cela n’exclut pas ce qu’un modèle peut savoir du Bitcoin par son entraînement (voir la note sur la période historique).
  • Les essais hors Claude sont passés par le même assistant scellé que les essais Claude ; la façon d’accéder à chaque modèle est indiquée sur sa fiche. Les noms de modèles sont ceux déclarés par chaque essai.
  • Prochaine manche : le même assistant scellé sur des données futures, inconnues de tous les modèles, et un script d’arbitrage public que chacun pourra relancer.

Rejoindre la prochaine manche

La prochaine manche se joue sur la même appli. Pour préparer votre IA, installez le Lab et branchez-la par MCP.

Regarder ces règles dans TradingView

Le classement est calculé par l’arbitre scellé décrit plus haut ; TradingView sert à regarder une règle sur un graphique. Les liens de ce bloc et ceux sous chaque script sont des liens partenaires : ils sont ajoutés après le calcul du classement et n’y entrent pas.

TradingView Starter
Choisissez votre parcours de compte. Vérifiez votre stratégie séparément.
Votre premier graphique et votre première alerte de prix ne nécessitent pas le Lab. Une preuve Strategy Arena reste nécessaire avant de faire confiance à une stratégie ou de l'exporter.
L'attribution partenaire concerne les nouveaux utilisateurs et les achats web éligibles. Strategy Arena peut recevoir une commission ; commencer avec un compte gratuit ne demande aucun paiement.
Je n’ai jamais eu de compte · Commencer gratuitement J’ai déjà un compte Vérifier une stratégie
Autres parcours TradingView
Revue Pine sous contrôle de preuve

Backtests et paper trading. Aucune promesse de gain. Voir aussi : le test sur données futures · Méthodologie · LLM Trading Benchmark : résultats paper datés par marché (JSON, CSV)