Stratégie de stop loss suiveur en éventail SAR parabolique


Date de création: 2023-09-16 18:54:28 Dernière modification: 2023-09-16 18:54:28
Copier: 0 Nombre de clics: 992
1
Suivre
1617
Abonnés

Aperçu

La stratégie Parabolic SAR est une stratégie de trading basée sur l’indicateur Parabolic SAR. La stratégie vise à identifier les points de revers de la tendance et à se retirer de la position en cas de revers de tendance.

Principe de stratégie

L’indicateur SAR parabolique est capable d’identifier la tendance des prix et de donner un signal de revers potentiel. Le passage de la ligne K au point SAR représente le passage de la tête blanche à la tête blanche; le passage de la ligne K au point SAR au point bas représente le passage de la tête blanche à la tête blanche.

La stratégie s’appuie sur cette caractéristique de l’indicateur Parabolic SAR, qui identifie un renversement de tendance lorsque le point SAR traverse la ligne K et effectue des opérations de plus ou de moins en conséquence. Plus précisément, la logique de la stratégie est la suivante:

  1. Calculer la valeur du SAR parabolique

  2. Déterminez s’il y a un signal de renversement de tendance. Si le point SAR passe du haut vers le bas de la ligne K, représentant un signal de tête vide, faites le vide. Si le point SAR passe du bas vers le haut de la ligne K, représentant un signal de tête multiple, faites le plus.

  3. Il ouvre la position au moment de la traversée et la ferme au moment où elle traverse à nouveau la ligne K avec le point SAR inversé.

Avantages stratégiques

  • Utilisez l’indicateur Parabolic SAR pour identifier les points d’inversion de tendance et éviter les opérations inversées dans la tendance.

  • Il s’agit d’un changement de tendance qui se produit rapidement et qui est suivi d’un changement de tendance.

  • En définissant le point d’arrêt de la SAR qui traverse à nouveau la ligne K, on peut arrêter rapidement la perte et contrôler les pertes en temps opportun.

  • La stratégie est simple, claire et facile à mettre en œuvre.

Risques et réponse

  • L’indicateur Parabolic SAR peut générer de nombreux faux signaux, entraînant des transactions inutiles. Les paramètres du SAR peuvent être ajustés de manière appropriée pour réduire le taux de faux signaux.

  • Il est facile de se faire piéger dans les marchés qui changent rapidement. Il est possible d’envisager d’ajouter des conditions de filtrage pour éviter les périodes de forte volatilité.

  • Un arrêt trop proche du point de rupture peut entraîner un arrêt trop fréquent. Il est possible d’alléger la zone de rupture de manière appropriée, donnant au prix une certaine marge de manœuvre.

  • Si un seul indicateur est susceptible d’être limité par un marché particulier, il peut être envisagé d’ajouter d’autres indicateurs ou des conditions de filtrage pour améliorer l’adéquation.

Résumer

La stratégie est simple, claire et facile à maîtriser. Cependant, le fait de s’appuyer uniquement sur un seul indicateur de Parabolic SAR présente certaines limites. L’application réelle nécessite une prise en compte globale de l’environnement du marché, un ajustement approprié des paramètres et une collaboration avec d’autres indicateurs techniques.

Code source de la stratégie
/*backtest
start: 2023-08-16 00:00:00
end: 2023-09-15 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="Parabolic SAR Strategy (on close) [QuantNomad]", shorttitle="SAR Strategy [QN]", overlay=true)

start     = input(0.02)
increment = input(0.02)
maximum   = input(0.2)

psar      = 0.0 // PSAR
af        = 0.0 // Acceleration Factor
trend_dir = 0   // Current direction of PSAR
ep        = 0.0 // Extreme point

sar_long_to_short = trend_dir[1] == 1  and close <= psar[1] // PSAR switches from long to short
sar_short_to_long = trend_dir[1] == -1 and close >= psar[1] // PSAR switches from short to long

trend_change = barstate.isfirst[1] or sar_long_to_short or sar_short_to_long

// Calculate trend direction
trend_dir    := barstate.isfirst[1] and close[1] > open[1] ? 1 : 
   barstate.isfirst[1] and close[1] <= open[1] ? -1 : 
   sar_long_to_short ? -1 : 
   sar_short_to_long ?  1 : nz(trend_dir[1])

// Calculate  Acceleration Factor
af := trend_change ? start : 
   (trend_dir == 1 and high > ep[1]) or  
   (trend_dir == -1 and low < ep[1]) ? 
   min(maximum, af[1] + increment) : 
   af[1]

// Calculate extreme point
ep := trend_change and trend_dir == 1 ? high :  
   trend_change and trend_dir == -1 ? low : 
   trend_dir == 1 ? max(ep[1], high) : 
   min(ep[1], low)

// Calculate PSAR
psar := barstate.isfirst[1] and close[1] > open[1] ? low[1] : 
   barstate.isfirst[1] and close[1] <= open[1] ? high[1] : 
   trend_change ? ep[1] :    
   trend_dir == 1 ? psar[1] + af * (ep - psar[1]) : psar[1] - af * (psar[1] - ep) 

plot(psar, style=plot.style_cross, color=trend_dir == 1 ? color.green : color.red,  linewidth = 2)

// Strategy 
strategy.entry("Long",  true,  when = sar_short_to_long)
strategy.entry("Short", false, when = sar_long_to_short)