Le signal est une somme glissante sur 878 bars des variations de bar à bar de la taille du corps de bougie. Tel qu'il est configuré, il est contrarien : il achète quand cette somme inscrit un nouveau plus bas sous 0 et se met short quand elle inscrit un nouveau plus haut au-dessus de 41 pips. Chaque signal opposé inverse la position, donc il est toujours en position.
Meilleure exécution sur 29. S&P 500, 30 min, spread 1, d'après l'exécution pf:2026-09-24-USA500-30m.tsv:1.
| Période | Jusqu'au 2026-09-24 |
| Instrument | S&P 500, 30 minutes |
| Spread | 1 points |
| Contrats | 1 |
| Capital de départ | 1,000,000 |
| Coûts | Spread uniquement. Les commissions et le financement overnight ne sont pas inclus. |
| Barres | Jusqu'à 200,000 barres, moins lorsque l'instrument a moins d'historique |
| Dernier test | 2026-09-24 |
| positionSize Contrats par trade | 1 |
| sumPeriod Barres additionnées pour le total de variation des corps | 878 |
| invertSignal 1 trade tel qu'écrit, -1 inverse chaque signal | 1 |
| upperFilterPips Le total doit dépasser ce nombre de pips pour compter comme une lecture positive | 41 |
| lowerFilterPips Le total doit être sous moins ce nombre de pips pour compter comme une lecture négative | 0 |
Chaque exécution
| Marché | Unité de temps | PF | Trades | % de réussite | Net | Max DD |
|---|---|---|---|---|---|---|
| S&P 500Meilleure exécution | 30 min | 2.03 | 294 | 61.90 | 6,910 EUR | -1,336 |
| S&P 500 | 15 min | 1.87 | 202 | 57.43 | 5,222 EUR | -1,215 |
| USD/JPY | 30 min | n/a | 1,334 | 53.37 | 583,360 JPY | -311,340 |
| USD/JPY | 15 min | n/a | 680 | 53.68 | 390,690 JPY | -260,480 |
| USD/JPY | 10 min | n/a | 470 | 53.40 | 356,070 JPY | -299,470 |
| EUR/USD | 5 min | n/a | 124 | 50.00 | 226,540 USD | -178,822 |
| EUR/USD | 10 min | n/a | 150 | 53.33 | 206,625 USD | -82,297 |
| USD/JPY | 2 min | n/a | 48 | 50.00 | 106,210 JPY | -94,070 |
| EUR/USD | 30 min | n/a | 1,134 | 52.38 | 101,930 USD | -82,289 |
| Nikkei 225 | Journalier | n/a | 1,299 | 59.28 | 65,932 USD | -17,149 |
| Argent | Journalier | n/a | 849 | 57.83 | 36,872 USD | -16,947 |
| Dow Jones | Journalier | n/a | 2,118 | 56.94 | 21,680 EUR | -18,902 |
| DAX 40 | Journalier | n/a | 1,968 | 59.10 | 20,493 EUR | -6,430 |
| Nasdaq 100 | Journalier | n/a | 1,351 | 58.18 | 17,701 EUR | -11,124 |
| FTSE 100 | 1 heure | n/a | 2,537 | 53.72 | 7,365 EUR | -2,920 |
| Pétrole brut américain | Journalier | n/a | 1,183 | 56.97 | 6,255 EUR | -5,266 |
| S&P 500 | 4 heures | n/a | 566 | 56.89 | 6,141 EUR | -1,923 |
| S&P 500 | Journalier | n/a | 444 | 53.83 | 5,968 EUR | -2,189 |
| S&P 500 | 1 heure | n/a | 460 | 54.57 | 5,400 EUR | -1,509 |
| Or | 30 min | n/a | 150 | 60.00 | 4,171 EUR | -1,172 |
| Or | 4 heures | n/a | 180 | 55.00 | 3,655 EUR | -2,304 |
| FTSE 100 | 10 min | n/a | 182 | 60.44 | 3,625 EUR | -1,305 |
| Or | 1 heure | n/a | 176 | 53.41 | 3,384 EUR | -2,098 |
| S&P 500 | 10 min | n/a | 94 | 51.06 | 3,049 EUR | -1,455 |
| Or | 15 min | n/a | 120 | 52.50 | 2,806 EUR | -1,935 |
| Or | Journalier | n/a | 194 | 57.22 | 2,643 EUR | -1,484 |
| S&P 500 | 5 min | n/a | 44 | 56.82 | 2,266 EUR | -1,426 |
| FTSE 100 | 5 min | n/a | 72 | 56.94 | 2,035 EUR | -1,593 |
| S&P 500 | 2 min | n/a | 12 | 66.67 | 840 EUR | -833 |
Graphiques
Les 10 meilleures exécutions sur 29. La liste complète figure dans le tableau ci-dessus.
Au-dessus de 1.0, a gagné de l'argent ; en dessous de 1.0, a perdu de l'argent.
Le code
// ============================================================ // Candle Body Momentum // ProRealAlgos Strategy Library | prorealalgos.com // Type: Momentum // Direction: Long & short // Timeframe tested: 30 minutes // ============================================================ // --- Settings --- DEFPARAM CumulateOrders = false // --- Parameters --- positionSize = 1 // contracts per trade sumPeriod = 878 // bars summed for the body-change total invertSignal = 1 // 1 = trade as written, -1 = flip every signal upperFilterPips = 41 // total must exceed this many pips to count as positive lowerFilterPips = 0 // total must be below minus this many pips to count as negative ONCE lastPositiveSum = 0 ONCE lastNegativeSum = 0 ONCE tradeDirection = 0 // --- Indicators --- bodySize = close - open bodyChange = bodySize - bodySize[1] bodyChangeSum = Summation[sumPeriod](bodyChange) // Remember the latest positive and negative readings; each holds until replaced. IF bodyChangeSum > upperFilterPips * PipSize THEN lastPositiveSum = bodyChangeSum ENDIF IF bodyChangeSum < (0 - lowerFilterPips) * PipSize THEN lastNegativeSum = bodyChangeSum ENDIF negativeSumFalling = lastNegativeSum < lastNegativeSum[1] positiveSumRising = lastPositiveSum > lastPositiveSum[1]
20 lignes de plus : les règles d'entrée et de sortie.
Configuration
La nouvelle exécution S&P 500 15 minutes a porté sur 456,000 bars et a réalisé EUR 6,660.97 contre EUR 5,222.27 dans l'exécution standard, donc les seules données plus anciennes ont ajouté EUR 1,438.70.
| Barres disponibles | 456,000 |
| Net, exécution standard de 200,000 barres | 5,222.27 EUR |
| Net, exécution longue | 6,660.97 EUR |
| Net sur les seules données plus anciennes | 1,438.70 EUR |
Questions
Oui, mais assurez-vous que suffisamment d'historique se charge pour la somme sur 878 bars. Le code réécrit n'a pas été vérifié à la compilation, testez-le donc d'abord dans ProBacktest.
Indices, paires de devises, métaux et pétrole, et toutes les exécutions listées étaient positives. S&P 500 15 minutes a enregistré un profit factor de 1.87 sur 202 trades.
La meilleure exécution S&P 500 30 minutes a eu un max drawdown de EUR 1,335.84 contre EUR 6,909.96 de gain net.
Elle a donné la meilleure exécution enregistrée, et elle maintient la fenêtre de 878 bars sur une profondeur d'historique gérable.
Voir aussi
Le copy trading sur les indices américains est disponible pour les membres ProRealAlgos à mesure que des places se libèrent.