
Cette stratégie est basée sur des indicateurs de système de dérivation de la parabole, combinée à des fenêtres de temps pour effectuer des retours, afin de réaliser l’effet d’arrêt de suivi de la dynamique. La stratégie s’applique principalement aux variétés à forte tendance, en ajustant dynamiquement les points d’arrêt, pour réaliser l’arrêt de suivi de la tendance.
La stratégie utilise le système de dérivation de la parabole comme indicateur technique principal. Le SAR parabolique peut fournir un signal de revers très précis.
La stratégie définit d’abord les trois paramètres du SAR parabolique, à savoir la valeur initiale, la valeur d’étape et la valeur maximale. Ensuite, elle calcule la valeur du SAR parabolique. La stratégie utilise le SAR parabolique comme point d’arrêt dynamique.
De cette façon, la stratégie peut suivre la tendance lorsque le prix de l’action est en tendance; quand le prix de l’action commence à se retourner, arrêter rapidement et terminer un cycle de négociation.
La stratégie exploite pleinement la fonction d’arrêt de perte efficace offerte par l’indicateur Parabolic SAR, ce qui permet d’obtenir l’effet d’un arrêt de suivi dynamique. Par rapport aux points d’arrêt fixes, la stratégie peut être ajustée de manière dynamique, en suivant automatiquement la tendance à l’arrêt, pour éviter que la position ne soit arrêtée prématurément.
/*backtest
start: 2023-09-26 00:00:00
end: 2023-10-26 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
// === by @Aldovitch ===
// PSAR Strategy
// Based on Parabolic SAR Strategy provided by TradingView
// added a Time Window for Backtests
//
strategy("Parabolic SAR Strategy w/ Time Window", shorttitle="PSAR Strategy w/ TW", overlay=true)
// === INPUT INDEXES PARAMETERS ===
start = input(0.02)
increment = input(0.02)
maximum = input(0.2)
// === INPUT BACKTEST RANGE ===
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 = 2018, title = "From Year", minval = 2016)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
ToYear = input(defval = 9999, title = "To Year", minval = 2017)
// === CONTROL & APPEARENCE ===
timeStart = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window
timeFinish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window
// === FUNCTIONS ===
window() => true // create function "within window of time"
// === COMPUTING INDEXES ===
psar = sar(start, increment, maximum)
if (psar > high)
strategy.entry("ParLE", strategy.long, stop=psar, comment="ParLE", when=window())
else
strategy.cancel("ParLE")
if (psar < low)
strategy.entry("ParSE", strategy.short, stop=psar, comment="ParSE", when=window())
else
strategy.cancel("ParSE")
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)