Stratégie Renko de croisement de moyenne mobile de durée


Date de création: 2024-01-24 10:55:57 Dernière modification: 2024-01-24 10:55:57
Copier: 0 Nombre de clics: 717
1
Suivre
1617
Abonnés

Stratégie Renko de croisement de moyenne mobile de durée

Aperçu

Cette stratégie est basée sur la stratégie de croisement des moyennes mobiles sur le graphique de Renko. Elle utilise l’indicateur TEMA pour construire des signaux de croisement et les filtre en combinaison avec la moyenne à long terme afin d’identifier les tendances sur le graphique de Renko et d’émettre des signaux d’achat et de vente.

Principe de stratégie

La principale source de signaux de cette stratégie est l’indicateur TEMA à court terme et la fourche dorée de l’indicateur SMA. La logique spécifique est la suivante:

Lorsque le TEMA à court terme est en cours de passage au SMA à court terme, faites plus; lorsque le TEMA à court terme est en cours de passage au SMA à court terme, faites un plafond.

En outre, la stratégie définit deux paramètres optionnels, avg_protection et gain_protection, pour régler la logique d’entrée et de sortie:

  • Lorsque avg_protection > 0, l’acheteur n’achète que lorsque le prix de clôture est inférieur au prix moyen de la position actuelle, ce qui réduit le coût de la position;

  • Lorsque gain_protection > 0, le stop est vendu uniquement si le prix de clôture dépasse un certain pourcentage du prix d’entrée, ce qui permet de verrouiller les bénéfices.

Enfin, la stratégie utilise également un indicateur SMMA à long terme comme filtre de tendance. Un signal de multiplication n’est émis que lorsque le prix de clôture est inférieur au SMMA.

Analyse des avantages

Les principaux avantages de cette stratégie sont les suivants:

  1. Le filtrage du bruit et l’identification des tendances sont basés sur le filtrage Renko.
  2. Les indicateurs TEMA sont utilisés pour construire des signaux de haute sensibilité et de bonne réactivité.
  3. Il est possible de modifier les paramètres pour contrôler les stratégies d’entrée.
  4. La combinaison de la moyenne à court terme et à long terme permet de saisir les opportunités dans la tendance.

Analyse des risques

Cette stratégie comporte aussi des risques:

  1. Renko est une plate-forme de télécommunications qui utilise le réseau de télécommunications sans fil.
  2. La sensibilité élevée de TEMA est aussi plus susceptible de produire des signaux erronés.
  3. Une mauvaise configuration des paramètres peut entraîner des fuites.

Ces risques peuvent être évités en ajustant les paramètres de manière appropriée, en définissant des positions de stop loss, etc.

Direction d’optimisation

Cette stratégie peut être optimisée principalement dans les domaines suivants:

  1. Test de différentes combinaisons de paramètres pour trouver le meilleur;
  2. l’ajout de stratégies de stop-loss, telles que le stop-move, le stop-loss intermédiaire, etc., pour réduire la DD;
  3. Le filtrage des signaux en combinaison avec d’autres indicateurs réduit les faux signaux.
  4. Tester l’efficacité des paramètres de différentes variétés.

Résumer

La stratégie est globalement une stratégie de croisement de ligne mobile simple mais très pratique. Elle s’appuie principalement sur l’excellent effet de désencombrement de la ligne Renko K et sur la haute sensibilité de l’indicateur TEMA pour générer des signaux.

Code source de la stratégie
/*backtest
start: 2023-01-17 00:00:00
end: 2024-01-23 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("TEMA Cross", overlay = true)

tema(src, len) =>
    3*ema(src, len) - 3*ema(ema(src, len), len) + ema(ema(ema(src, len),len),len)

smma(src, len) =>
    sa = 0.0
    sa := na(sa[1]) ? sma(src, len) : (sa[1] * (len - 1) + src) / len
    sa

temaLength = input(5)
smaLength = input(3)
smmaLength = input(30)
tema1 = tema(close, temaLength)
sma1 = sma(tema1, smaLength)
smma1 = smma(close,smmaLength)


plot(tema1, color = green, title = "TEMA")
plot(sma1, color = orange, title = "SMA")
plot(smma1, color = red, title = "SMMA")
minGainPercent = input(2)
gainMultiplier = minGainPercent * 0.01 + 1

avg_protection = input(1)
gain_protection = input(1)

longCondition = crossover(tema1, sma1) and tema1 < smma1
shortCondition = crossunder(tema1, sma1)

strategy.entry("Buy", strategy.long, when = longCondition and (avg_protection >= 1 ? (na(strategy.position_avg_price) ? true : close <= strategy.position_avg_price) : true))
strategy.close_all(when = shortCondition and (gain_protection >=1 ? (close >= gainMultiplier * strategy.position_avg_price) : true))