Une analyse de la stratégie de Supertrend
La stratégie de Supertrend est une stratégie de suivi de la tendance qui détermine la direction de la tendance en calculant l’amplitude réelle moyenne (ATR) et en traçant des lignes de Supertrend. La stratégie utilise trois ensembles de paramètres différents pour tracer trois lignes de Supertrend et générer un signal de transaction lorsque le prix franchit la ligne de Supertrend.
La stratégie commence par calculer trois ensembles d’ATR et de facteurs, qui sont utilisés pour tracer trois lignes de Supertrend. L’ATR reflète la volatilité des prix, tandis que les facteurs déterminent la sensibilité des lignes de Supertrend aux prix. La stratégie utilise des combinaisons de paramètres à court, moyen et long terme, respectivement, pour capturer les variations de tendance au cours des différentes périodes.
La stratégie prend une position plus élevée lorsque le prix est en hausse et prend une position plus basse lorsque le prix est en baisse. Les trois lignes de Supertrend génèrent plus d’opportunités de négociation, et leur mutuelle vérification contribue à réduire les signaux erronés.
En outre, la stratégie utilise également la fonction change pour déterminer si la direction de la ligne de Supertrend a changé. Un nouveau signal est généré uniquement lorsque la direction de la ligne de Supertrend change, évitant ainsi la possibilité d’ouvrir une nouvelle position immédiatement après la position de clôture.
Dans l’ensemble, la stratégie de Supertrend tire parti des avantages de l’indicateur de suivi des tendances, la ligne de Supertrend, en utilisant plusieurs ensembles de paramètres pour capturer les différentes tendances cycliques, tout en concevant des mécanismes d’entrée et de sortie raisonnables qui peuvent servir de référence à la stratégie de suivi des tendances.
Les avantages de la stratégie de Supertrend
La stratégie de Supertrend présente les avantages suivants:
En calculant l’ATR et en traçant des lignes de Supertrend dynamiques, il est possible de capturer les changements de tendance du marché de manière flexible et d’éviter d’être induit en erreur par les chocs du marché.
Les trois lignes de Supertrend sont calculées avec trois groupes de paramètres différents, permettant de capturer les tendances à la fois sur des périodes courtes, moyennes et longues.
Les nouveaux signaux ne sont générés que lorsque la ligne de Supertrend change de direction, ce qui évite les transactions inutiles et la vérification de la fiabilité du signal.
La fonction d’élimination complète du stockage est configurée en un seul clic. La fonction de retrait peut répondre à des incidents soudains et améliorer la capacité d’utilisation du disque dur.
Sur la base de Supertrend, les règles de signal sont simples, claires, faciles à utiliser et à vérifier, et conviennent aux débutants en trading quantitatif.
Les risques liés à la stratégie de Supertrend
Les stratégies de Supertrend présentent également les risques suivants:
En cas de choc, les lignes de Supertrend peuvent se croiser fréquemment, générant de faux signaux et entraînant des pertes.
Il est plus difficile d’optimiser plusieurs ensembles de paramètres et des paramètres inappropriés peuvent réduire l’efficacité de la stratégie.
Les stratégies de Supertrend ne s’appuient que sur le jugement de la tendance et ne permettent pas de déterminer les points de revers potentiels de la tendance. D’autres indicateurs sont nécessaires pour aider.
Dans des situations extrêmes, il est impossible de contrôler efficacement le risque et il est nécessaire de le gérer avec une stratégie d’arrêt des pertes.
Les paramètres d’optimisation permettent d’améliorer les résultats des tests de retour par rapport aux données historiques, mais ne garantissent pas l’efficacité future, ce qui nécessite une évaluation prudente.
Résumé de la stratégie de Supertrend
La stratégie de Supertrend est une stratégie de suivi de tendance simple et pratique. Elle utilise les caractéristiques dynamiques de la ligne de Supertrend pour déterminer la direction de la tendance et utilise une conception de paramètres multicouches pour améliorer l’efficacité.
/*backtest
start: 2023-08-15 00:00:00
end: 2023-09-14 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © MarketShree
//@version=4
// strategy("Supertrend Strategy", overlay=true, default_qty_value=15)
closs_all=input(title="Close_all_Position", type=input.bool, defval=false)
cancel=input(title="Check To Cancel", type=input.bool, defval=false)
atrPeriod1 = input(7, "ATR Length-1")
factor1 = input(1.5,"Factor-1",type=input.float)
atrPeriod2 = input(10, "ATR Length-2")
factor2 = input(2, "Factor-2")
atrPeriod3 = input(20, "ATR Length-3")
factor3 = input(3, "Factor-3")
[superTrend1, direction1] = supertrend(factor1, atrPeriod1)
[superTrend2, direction2] = supertrend(factor2, atrPeriod2)
[superTrend3, direction3] = supertrend(factor3, atrPeriod3)
if change(direction1) < 0
strategy.entry("LONG", strategy.long)
if change(direction1) > 0
strategy.entry("SHORT", strategy.short)
strategy.close_all(when=closs_all,comment ="All postion are closed")
strategy.cancel_all(when=cancel)
if change(direction2) < 0
strategy.entry("LONG", strategy.long)
if change(direction2) > 0
strategy.entry("SHORT", strategy.short)
strategy.close_all(when=closs_all,comment ="All postion are closed")
strategy.cancel_all(when=cancel)
if change(direction3) < 0
strategy.entry("LONG", strategy.long)
if change(direction3) > 0
strategy.entry("SHORT", strategy.short)
strategy.close_all(when=closs_all,comment ="All postion are closed")
strategy.cancel_all(when=cancel)
colResistance = direction1 == 1 and direction1 == direction1[1] ? color.new(color.red, 0) : color.new(color.red, 100)
colSupport = direction1 == -1 and direction1 == direction1[1] ? color.new(color.green, 0) : color.new(color.green, 100)
plot(superTrend1, color = colResistance, linewidth=2)
plot(superTrend1, color = colSupport, linewidth=2)
colResistance1 = direction2 == 1 and direction2 == direction2[1] ? color.new(color.red, 0) : color.new(color.red, 100)
colSupport1 = direction2 == -1 and direction2 == direction2[1] ? color.new(color.green, 0) : color.new(color.green, 100)
plot(superTrend2, color = colResistance, linewidth=2)
plot(superTrend2, color = colSupport, linewidth=2)
colResistance2 = direction3 == 1 and direction3 == direction3[1] ? color.new(color.red, 0) : color.new(color.red, 100)
colSupport2 = direction3 == -1 and direction3 == direction3[1] ? color.new(color.green, 0) : color.new(color.green, 100)
plot(superTrend3, color = colResistance1, linewidth=2)
plot(superTrend3, color = colSupport1, linewidth=2)