Cette stratégie est basée sur les opérations alternées de l'indicateur SAR à travers différents délais. La stratégie calcule l'indicateur SAR en délais de 15 minutes, quotidiens, hebdomadaires et mensuels, et négocie dans le délai hebdomadaire.
L'indicateur SAR parabolique (SAR) représente le SAR parabolique, qui juge la direction de la tendance en calculant la relation entre le prix actuel et les prix historiques.
Cette stratégie calcule les valeurs SAR dans des délais de 15 minutes, quotidiens, hebdomadaires et mensuels, respectivement.
SAR = Previous SAR + Acceleration Factor * (Highest Price - Previous SAR) # Uptrend
SAR = Previous SAR + Acceleration Factor * (Lowest Price - Previous SAR) # Downtrend
Le facteur d'accélération initial est fixé à 0,02, et augmentera progressivement jusqu'à un maximum de 0,2 au fur et à mesure de l'extension de la tendance.
La stratégie génère des signaux de trading dans le délai hebdomadaire. Elle est longue lorsque le SAR hebdomadaire dépasse le prix le plus élevé, avec la valeur SAR comme stop loss. Elle est courte lorsque le SAR dépasse le prix le plus bas, avec le SAR comme stop loss.
En déterminant la tendance sur une période plus longue et en fixant un niveau de stop loss plus précis, la stratégie vise à réaliser des bénéfices plus efficaces.
La stratégie a une logique claire de conduite des tendances sur des délais plus longs en utilisant l'indicateur SAR pour localiser les renversements et définir le stop loss. Les signaux d'entrée et la gestion des risques pourraient être encore améliorés. Avec des optimisations dans des domaines tels que les entrées, les arrêts et la taille des positions, il peut devenir plus stable et rentable.
/*backtest start: 2023-01-09 00:00:00 end: 2024-01-15 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy ("SAR alternating timeframe", overlay=true) //resolution res1=input("15", title="Resolution") res2=input("D", title="Resolution") res3=input("W", title="Resolution") res4=input("M", title="Resolution") //output functions out = sar(0.02,0.02,0.2) // request.security SAR1 = request.security(syminfo.tickerid, res1, out) SAR2 = request.security(syminfo.tickerid, res2, out) SAR3 = request.security(syminfo.tickerid, res3, out) SAR4 = request.security(syminfo.tickerid, res4, out) //Plots //plot(SAR1 , title="SAR 15", color = red, linewidth = 2) //plot(SAR2 , title="SAR D", color = green, linewidth = 3) plot(SAR3 , title="SAR W", color =blue, linewidth = 4) //plot(SAR4 , title="SAR W", color =purple, linewidth = 5)) ///////////////////////////////////////////////////////////////////// //trade if (SAR3 >= high) strategy.entry("ParLE", strategy.long, stop=SAR3, comment="ParLE") else strategy.cancel("ParLE") if (SAR3 <= low) strategy.entry("ParSE", strategy.short, stop=SAR3, comment="ParSE") else strategy.cancel("ParSE")