Il s'agit d'une tendance intraday à court terme suivant une stratégie basée sur l'indicateur Supertrend.
La stratégie inverse la position en utilisant une quantité double lorsque le signal change.
Calculer l'indicateur Supertrend sur la base du multiplicateur défini par l'utilisateur et de la période ATR.
Tracez la ligne de Supertrend comme support et résistance.
Déterminez les conditions longues/courtes. Fermer au-dessus de la ligne Supertrend est une condition longue. Fermer au-dessous de la ligne Supertrend est une condition courte.
Vérifiez si la barre actuelle se situe dans la session intradienne définie par l'utilisateur.
Émettre des signaux longs/courts uniquement lorsque la session intraday est active et que les conditions longues/courts sont remplies.
Reverse position en prenant le commerce opposé avec double quantité lorsque la direction de Supertrend change.
Les positions ouvertes sont compensées lorsque la direction de la Supertrend est inchangée et que la session intradienne se termine.
Supertrend identifie la tendance et réduit les faux signaux.
La combinaison de Supertrend avec le prix proche évite d'être arrêté prématurément.
Le renversement de position en temps opportun réduit les pertes.
La séance intraday évite le risque du jour au lendemain.
La sortie forcée évite le risque d'oublier de faire la case départ.
Des paramètres de Supertrend inappropriés peuvent entraîner une mauvaise performance de la stratégie.
L'inversion de position augmente la fréquence des échanges et les coûts.
Une sortie forcée à la fin de la séance peut entraîner des pertes.
Le risque 1 peut être atténué par l'optimisation des paramètres.
Le risque 2 peut être contrôlé par stop loss.
Le risque 3 peut être évité à l'aide d'un filtre stop-loss ou de filtre de tendance.
Testez différents indicateurs de tendance tels que MA, KDJ, etc.
Ajoutez une logique de stop-loss.
Ajouter un filtre de tendance pour éviter les pertes de sortie forcée.
Optimiser les paramètres du multiplicateur et de la période ATR.
Test sur différents instruments.
Cette stratégie combine Supertrend et gestion de session intraday pour capitaliser sur les ruptures de tendance à court terme.
/*backtest start: 2023-08-18 00:00:00 end: 2023-09-17 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Pritesh-StocksDeveloper //@version=4 strategy("Supertrend - Intraday", overlay=true, calc_on_every_tick = true) // ********** Strategy inputs - Start ********** // Used for intraday handling // Session value should be from market start to the time you want to square-off // your intraday strategy // Important: The end time should be at least 2 minutes before the intraday // square-off time set by your broker var i_marketSession = input(title="Market session", type=input.session, defval="0915-1455", confirm=true) var float i_multiplier = input(title = "Multiplier", type = input.float, defval = 4, confirm=true) var int i_atrPeriod = input(title = "ATR Period", type = input.integer, defval = 14, confirm=true) // ********** Strategy inputs - End ********** // ********** Supporting functions - Start ********** // A function to check whether the bar or period is in intraday session barInSession(sess) => time(timeframe.period, sess) != 0 // ********** Supporting functions - End ********** // ********** Strategy - Start ********** [superTrend, dir] = supertrend(i_multiplier, i_atrPeriod) colResistance = dir == 1 and dir == dir[1] ? color.new(color.red, 0) : color.new(color.red, 100) colSupport = dir == -1 and dir == dir[1] ? color.new(color.green, 0) : color.new(color.green, 100) plot(superTrend, color = colResistance, linewidth=2) plot(superTrend, color = colSupport, linewidth=2) // Long/short condition longCondition = close > superTrend shortCondition = close < superTrend // See if intraday session is active bool intradaySession = barInSession(i_marketSession) // Trade only if intraday session is active // Long position // When longCondition and intradaySession both are true strategy.entry(id = "Long", long = strategy.long, when = longCondition and intradaySession) // Short position // When shortCondition and intradaySession both are true strategy.entry(id = "Short", long = strategy.short, when = shortCondition and intradaySession) // Square-off position (when session is over and position is open) squareOff = (not intradaySession) and (strategy.position_size != 0) strategy.close_all(when = squareOff, comment = "Square-off") // ********** Strategy - End **********