L'idée principale de cette stratégie est d'utiliser à la fois les indicateurs SAR parabolique et EMA pour identifier la direction de la tendance et le moment de l'entrée sur le marché. SAR parabolique est utilisé pour déterminer la direction de la tendance actuelle, et EMA est utilisé pour aider à déterminer le moment spécifique de l'entrée sur le marché. Lorsque SAR est au-dessus du prix, c'est un marché baissier. Lorsque SAR est en dessous du prix, c'est un marché haussier. Lors de l'entrée sur le marché, il nécessite également que le prix franchisse l'EMA avant que la tendance soit considérée comme se formant.
L'indicateur principal de cette stratégie est le SAR parabolique, qui est un outil d'analyse technique qui peut suivre les prix et juger des renversements de tendance. Sa formule de calcul est plus compliquée, mais le principe est simple et intuitif. L'indicateur SAR ajuste constamment sa position pour toujours rester derrière le prix. Lorsque le prix inverse, il ajustera immédiatement sa position de l'autre côté du prix. Par conséquent, il suffit d'observer la position de l'indicateur SAR par rapport au prix pour juger de la tendance de la direction actuelle.
Un autre indicateur qui aide cette stratégie est l'EMA. Contrairement au SAR, l'EMA est plus approprié pour juger de la durabilité des tendances. En exigeant que le prix traverse l'EMA avant d'entrer sur le marché, un certain bruit peut être filtré efficacement. Et l'EMA peut également être utilisé pour confirmer les signaux d'inversion. Par exemple, lorsque le prix traverse l'EMA de tendance haussière, il est probable que ce soit un signal d'inversion de tendance.
En résumé, les règles de négociation spécifiques de cette stratégie sont les suivantes:
En déterminant la tendance majeure par le biais du SAR parabolique et en filtrant les signaux trompeurs avec l'EMA, il est possible de bloquer la tendance tout en contrôlant le risque et en réalisant un suivi efficace de la tendance.
Cette stratégie présente les principaux avantages suivants:
En général, cette stratégie intègre les avantages de plusieurs indicateurs, tout en capturant la tendance, elle permet également un contrôle efficace des risques, et c'est une stratégie de suivi de tendance stable et facile à maîtriser.
Bien que cette stratégie présente de nombreux avantages, certains risques restent à prévoir lors de l'exploitation.
Pour réduire les risques susmentionnés, l'optimisation peut être effectuée dans les aspects suivants:
Pour optimiser davantage cette stratégie, considérez les aspects suivants:
Optimiser les paramètres. Des méthodes telles que les algorithmes génétiques peuvent être utilisées pour tester et optimiser les paramètres d'EMA et SAR afin de trouver la combinaison optimale de paramètres.
Ajouter des outils de jugement de tendance. D'autres indicateurs tels que le MACD et les bandes de Bollinger peuvent être ajoutés pour confirmer la tendance et améliorer la précision.
Définir des points d'arrêt dynamiques basés sur des indicateurs tels que ATR pour des arrêts plus flexibles.
Considérez les coûts de négociation. Introduisez des paramètres de glissement et de commission pour optimiser les bénéfices nets plutôt que les rendements absolus.
Entrée et sortie à plusieurs niveaux. Des mécanismes d'entrée et de sortie à plusieurs niveaux plus complexes peuvent être configurés pour construire des positions ou arrêter les pertes par étapes à différents stades de tendance.
Avec les optimisations susmentionnées, tout en suivant la tendance, on peut s'attendre à ce que la stratégie obtienne une plus grande stabilité, un jugement plus précis et des capacités de contrôle des risques plus solides, obtenant ainsi de meilleures performances.
La stratégie de suivi des tendances SAR et EMA intègre les avantages de plusieurs indicateurs pour juger de la direction de la tendance et du moment de l'entrée. Avec SAR défini comme point de stop-loss, le risque est sous contrôle. C'est une stratégie quantitative relativement stable. Cette stratégie présente des avantages tels qu'une haute précision de jugement et une maîtrise facile. Mais il y a aussi certains risques. Une optimisation supplémentaire des paramètres et des méthodes de stop-loss est nécessaire pour obtenir de meilleures performances.
/*backtest start: 2022-12-15 00:00:00 end: 2023-12-21 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Parabolic SAR Strategy w/ EMA", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) emalength = input(100 , "EMA Length") emaoffset = input(0.00, "EMA Offset %") start = input(0.015) increment = input(0.005) maximum = input(0.2) //////////////////////////////////////////////////////////////////////////////// // BACKTESTING RANGE // From Date Inputs 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 = 2019, title = "From Year", minval = 1970) // To Date Inputs toDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) toMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12) toYear = input(defval = 2020, title = "To Year", minval = 1970) // Calculate start/end date and time condition startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00) finishDate = timestamp(toYear, toMonth, toDay, 00, 00) time_cond = true //////////////////////////////////////////////////////////////////////////////// psar = sar(start, increment, maximum) ema = ema(close, emalength) offset = (emaoffset / 100) * ema // Signals psar_long = high[1] < psar[2] and high > psar[1] psar_short = low[1] > psar[2] and low < psar[1] // Plot PSAR plotshape(psar, location = location.absolute, style = shape.cross, size = size.tiny, color = low < psar[1] and not psar_long ? green : red) //Plot EMA plot(ema) if(psar_long) strategy.close("Short") if(psar_short) strategy.close("Long") if (psar < low and time_cond and close > ema + offset) strategy.entry("Long", strategy.long, comment="Long", stop = psar) if (psar > high and time_cond and close < ema - offset) strategy.entry("Short", strategy.short, comment="Short", stop = psar) if (not time_cond) strategy.close_all()