Cette stratégie utilise l'opération de croisement entre la valeur glissante du SAR parabolique et le chandelier pour atteindre le suivi de l'élan et le stop loss pour le swing trading.
Le noyau de cette stratégie repose sur l'indicateur Parabolic SAR pour déterminer si le prix actuel est dans une tendance à la hausse ou à la baisse. Lorsque l'indicateur Parabolic SAR est en dessous du chandelier, cela signifie que le prix est actuellement en hausse. Dans ce cas, la stratégie vérifiera à la clôture de chaque chandelier si la valeur de Parabolic SAR dépasse le plus bas du chandelier. Sinon, cela signifie que la tendance à la hausse se poursuit et la stratégie établira une position longue. Si Parabolic SAR dépasse le plus bas, cela signifie que la tendance à la hausse inverse la tendance à la baisse, et la stratégie fermera la position longue pour arrêter la perte.
Au contraire, lorsque le SAR Parabolique est au-dessus du chandelier, cela signifie que le prix est actuellement en baisse. Dans ce cas, la stratégie vérifiera à la clôture de chaque chandelier si le SAR Parabolique traverse en dessous du sommet du chandelier. Si ce n'est pas le cas, elle établira une position courte. Si le SAR Parabolique traverse le sommet, cela signifie que la tendance à la baisse s'inverse à la hausse et la stratégie fermera la position courte pour arrêter la perte.
Grâce à cette logique, la stratégie peut établir des positions le long de la tendance des prix et réaliser un stop loss la première fois que la tendance s'inverse, ce qui garantit des profits.
Les méthodes permettant d'améliorer la robustesse comprennent: l'optimisation des points d'arrêt des pertes pour les rendre suffisamment stricts; la combinaison d'autres indicateurs pour la confirmation; l'ajustement des paramètres pour s'adapter à des environnements changeants; la sélection d'ensembles de paramètres optimaux pour différents produits, etc.
En général, cette stratégie de swing Parabolic SAR est une stratégie de trading à court terme assez efficace. Elle tire parti de la stratégie Parabolic SAR pour déterminer la direction de la tendance et les changements de momentum, ainsi que des méthodes de swing trading, pour établir à plusieurs reprises des positions longues et courtes pendant les tendances haussières et baissières. Le mécanisme strict de stop loss donne également à cette stratégie une capacité de contrôle des risques décente. Mais en tant que stratégie à indicateur unique, l'invalidité de la stratégie Parabolic SAR aura un impact significatif. Il s'agit donc d'une stratégie avec une certaine force et un certain potentiel, mais présente également des risques.
/*backtest start: 2023-12-14 00:00:00 end: 2023-12-21 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Parabolic SAR Strategy", overlay=true) start = input(0.05) increment = input(0.075) maximum = input(1) fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) fromYear = input(defval = 2000, title = "From Year", minval = 1970) //monday and session // To Date Inputs toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31) toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) toYear = input(defval = 2020, title = "To Year", minval = 1970) startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00) finishDate = timestamp(toYear, toMonth, toDay, 00, 00) time_cond = true var bool uptrend = na var float EP = na var float SAR = na var float AF = start var float nextBarSAR = na if bar_index > 0 firstTrendBar = false SAR := nextBarSAR if bar_index == 1 float prevSAR = na float prevEP = na lowPrev = low[1] highPrev = high[1] closeCur = close closePrev = close[1] if closeCur > closePrev uptrend := true EP := high prevSAR := lowPrev prevEP := high else uptrend := false EP := low prevSAR := highPrev prevEP := low firstTrendBar := true SAR := prevSAR + start * (prevEP - prevSAR) if uptrend if SAR > low firstTrendBar := true uptrend := false SAR := max(EP, high) EP := low AF := start else if SAR < high firstTrendBar := true uptrend := true SAR := min(EP, low) EP := high AF := start if not firstTrendBar if uptrend if high > EP EP := high AF := min(AF + increment, maximum) else if low < EP EP := low AF := min(AF + increment, maximum) if uptrend SAR := min(SAR, low[1]) if bar_index > 1 SAR := min(SAR, low[2]) else SAR := max(SAR, high[1]) if bar_index > 1 SAR := max(SAR, high[2]) nextBarSAR := SAR + AF * (EP - SAR) if barstate.isconfirmed and time_cond if uptrend strategy.entry("ParSE", strategy.short, stop=nextBarSAR, comment="ParSE") strategy.cancel("ParLE") else strategy.entry("ParLE", strategy.long, stop=nextBarSAR, comment="ParLE") strategy.cancel("ParSE") plot(SAR, style=plot.style_cross, linewidth=3, color=color.orange) plot(nextBarSAR, style=plot.style_cross, linewidth=3, color=color.aqua) //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)