Les entrées exigent trois choses sur la même bar : l'EMA 5 croisant l'EMA 10, le RSI(8) du prix médian croisant 50, et une bougie dont le corps est plus grand que les deux mèches. Elle n'a pas encore été backtestée, donc il n'y a aucun résultat à montrer.
| positionSize Contrats par trade | 1 |
| fastPeriod Longueur de l'EMA rapide | 5 |
| slowPeriod Longueur de l'EMA lente | 10 |
| maType Type de moyenne, 1 = exponentielle | 1 |
| rsiPeriod Longueur du RSI sur le prix médian | 8 |
| rsiMidLevel Ligne médiane que le RSI doit croiser | 50 |
| takeProfitLongPoints Objectif de gain long en points | 262 |
| stopLossLongPoints Stop long en points | 39 |
| takeProfitShortPoints Objectif de gain short en points | 26 |
| stopLossShortPoints Stop short en points | 50 |
| useHighLowTrail 0 suit la clôture, 1 les plus hauts / plus bas | 0 |
| trailStartPips Gain latent en pips avant le démarrage du trailing | 12 |
| trailBaseShare Part du gain latent verrouillée au démarrage du trailing | 0.094 |
| trailStepPips Gain supplémentaire en pips par palier de la part verrouillée | 6 |
| trailShareIncrement Augmentation relative de la part verrouillée par palier | 0.102 |
| trailRoundOffset Décalage d'arrondi pour le nombre de paliers | -0.5 |
| trailMinDistancePips Si le prix est plus proche que cela du niveau de trail, sortie au marché | 7 |
Le code
// ============================================================ // HLHB Trend Catcher // ProRealAlgos Strategy Library | prorealalgos.com // Type: Trend // Direction: Long & short // Timeframe tested: Not yet tested // ============================================================ // --- Settings --- DEFPARAM CumulateOrders = false DEFPARAM PreloadBars = 50000 // --- Parameters --- positionSize = 1 // contracts per trade fastPeriod = 5 // fast average length slowPeriod = 10 // slow average length maType = 1 // 1 = exponential average rsiPeriod = 8 // RSI length, on median price rsiMidLevel = 50 // RSI must cross this line to confirm takeProfitLongPoints = 262 // long target stopLossLongPoints = 39 // long stop takeProfitShortPoints = 26 // short target stopLossShortPoints = 50 // short stop useHighLowTrail = 0 // 0 = trail on close, 1 = trail on high / low trailStartPips = 12 // open profit needed before the trail starts trailBaseShare = 0.094 // share of open profit locked at the start trailStepPips = 6 // each step of extra profit raises the locked share trailShareIncrement = 0.102 // relative increase of the locked share per step trailRoundOffset = -0.5 // rounding offset for the step count trailMinDistancePips = 7 // closer than this to the level, exit at market ONCE tradeAllowed = 1 // trading allowed from the first bar // --- Indicators --- fastMA = Average[fastPeriod, maType](close) slowMA = Average[slowPeriod, maType](close) rsiValue = RSI[rsiPeriod](MedianPrice) minExitDistance = trailMinDistancePips * PipSize // A "long candle" has a body wider than both wicks together. candleBody = abs(close - open) upperWick = high - max(close, open) lowerWick = min(close, open) - low longCandle = candleBody > upperWick + lowerWick longBullish = longCandle AND open < close longBearish = longCandle AND open > close
95 lignes de plus : les règles d'entrée et de sortie.
Configuration
Questions
Le code est écrit comme un système automatisé avec 1 contrat par trade. Il n'a pas encore été vérifié à la compilation ni backtesté.
Aucun pour l'instant. Aucun backtest n'a été exécuté, donc il n'y a pas de résultats par instrument.
Sans backtest, il n'y a pas de chiffre de drawdown pour dimensionner. Le stop long de 39 points et le stop short de 50 points donnent le risque par trade à 1 contrat.
Les signaux s'exécutent sur le graphique sur lequel le système est chargé. Une unité de temps de signal 1 heure et un filtre horaire plus anciens ne font pas partie de cette version.
Voir aussi
La communauté ProRealAlgos obtient les règles complètes, le code complet et le portefeuille automatisé.