
Cette stratégie, qui combine les moyennes mobiles, l’indicateur de largeur et l’indicateur de virage de la parallèle, permet de juger la tendance et de confirmer le point de rupture. Elle appartient à la stratégie de suivi de tendance typique.
Cette stratégie utilise les deux EMA pour juger de la tendance des prix, et les SMA pour les jugements auxiliaires. Quand l’EMA de la ligne rapide est au-dessus de l’EMA de la ligne lente, et que la SMA de la ligne rapide est au-dessus de la SMA de la ligne lente, on considère qu’elle est en hausse.
L’indicateur de déviation de la parabole PSAR est utilisé pour déterminer le point de retournement des prix. Lorsque le PSAR est en dessous du point le plus élevé du prix, il indique que le prix peut se retourner vers la baisse, à ce moment-là la position est fermée.
Lorsque le cours est jugé à la hausse et que le prix atteint son plus haut point sur le PSAR, cela indique que le prix continue d’augmenter.
La solution est simple:
Cette stratégie est une stratégie de suivi de tendance typique. L’avantage est que les règles sont plus claires et plus simples, permettant d’identifier les retournements de tendance. L’inconvénient est qu’elle est plus sensible aux paramètres et présente un certain risque de chasing.
/*backtest
start: 2023-11-27 00:00:00
end: 2023-12-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("Buy Dip MA & PSAR", overlay=true)
PSAR_start = input(0.02)
PSAR_increment = input(0.02)
PSAR_maximum = input(0.2)
EMA_fast = input(20)
EMA_slow = input(40)
SMA_fast = input(100)
SMA_slow = input(200)
emafast = ema(close, EMA_fast)
emaslow = ema(close, EMA_slow)
smafast = sma(close, SMA_fast)
smaslow = sma(close, SMA_slow)
psar = sar(PSAR_start, PSAR_increment, PSAR_maximum)
uptrend = emafast > emaslow and smafast > smaslow
breakdown = not uptrend
if (psar >= high and uptrend)
strategy.entry("Buy", strategy.long, stop=psar, comment="Buy")
else
strategy.cancel("Buy")
if (psar <= low)
strategy.exit("Close", "Buy", stop=psar, comment="Close")
else
strategy.cancel("Close")
if (breakdown)
strategy.close("Buy")
plot(emafast, color=blue)
plot(emaslow, color=red)