Stratégie de combinaison d'indicateur de croisement de moyenne mobile et d'indicateur d'inversion


Date de création: 2023-12-13 15:20:20 Dernière modification: 2023-12-13 15:20:20
Copier: 0 Nombre de clics: 682
1
Suivre
1621
Abonnés

Stratégie de combinaison d’indicateur de croisement de moyenne mobile et d’indicateur d’inversion

Aperçu

Cette stratégie combine trois indicateurs: les moyennes mobiles, l’indice de force relative et l’indice des canaux de marchandises, pour former une stratégie de suivi de tendance et de combinaison d’indicateurs plus complète. Son idée de base est d’utiliser les indicateurs de signaux de retournement pour une entrée plus précise après la formation d’une tendance confirmée par les indicateurs de tendance.

Principe de stratégie

  1. Le prix moyen est calculé en utilisant hl2.

  2. Calculer l’indicateur CCI sur 14 cycles pour déterminer la tendance à grande échelle. Lorsque le CCI est supérieur à 0, il est tendance à la hausse, et inférieur à 0, il est tendance à la baisse.

  3. Calculer la ligne rapide de l’indicateur RSI à 14 cycles et la ligne lente de l’indicateur RSI à 50 cycles. Un signal d’achat est généré lorsque la ligne rapide traverse la ligne lente et un signal de vente lorsque la ligne rapide traverse la ligne lente.

  4. Un signal de transaction réel est généré uniquement lorsque l’indicateur CCI correspond simultanément à la direction du signal de l’indicateur RSI. C’est-à-dire que vous achetez uniquement lorsque le CCI est supérieur à 0 et que le RSI traverse la ligne lente sur la ligne rapide et que vous vendez uniquement lorsque le CCI est inférieur à 0 et que le RSI traverse la ligne lente sur la ligne rapide.

  5. Le calcul de la moyenne mobile à 14 cycles de hl2 pour aider à juger de la tendance des détails, afin d’éviter les fausses ruptures. Un signal d’achat ne se produit que lorsque le prix est supérieur à la moyenne à 14 cycles de hl2 et au RSI, et un signal de vente ne se produit que lorsque le prix est inférieur à la moyenne à 14 cycles de hl2 et au RSI.

Analyse des avantages

  1. Cette stratégie combine le jugement de la tendance et les signaux de renversement, permettant une entrée en jeu en temps opportun après le début de la tendance et un meilleur rendement en déterminant le point de sortie à partir de l’indicateur de signal de renversement.

  2. L’indice des chaînes de marchandises est très précis dans le jugement des tendances à grande échelle et évite de choisir la mauvaise direction de la transaction.

  3. Le croisement des lignes rapides et lentes de l’indice d’intensité relative est un signal révélateur plus stable et plus fiable, évitant ainsi les problèmes de retard des moyennes mobiles et permettant de saisir en temps opportun le retournement des prix.

  4. La comparaison de la taille du prix et de la moyenne permet de filtrer davantage les signaux erronés causés par les fausses percées.

  5. Dans l’ensemble, la stratégie est relativement stable et se distingue par une forte tendance.

Analyse des risques

  1. La stratégie est sensible aux variétés commerciales et nécessite des paramètres d’optimisation pour des variétés spécifiques. Si le blindé est appliqué à toutes les variétés, il peut entraîner une performance instable.

  2. Les paramètres stratégiques, tels que la moyenne à 14 cycles et la moyenne à 50 cycles, doivent être ajustés en fonction des différents marchés. Si les paramètres sont mal définis, cela peut également entraîner une mauvaise performance.

  3. Le seul recours à la CCI pour déterminer la direction de la tendance à grande échelle n’est pas suffisant, et il y a un certain retard.

  4. Il existe de nombreuses combinaisons d’indicateurs de signaux de retournement, et il est possible qu’il y ait un certain degré d’optimisation excessive. Cela nécessite également des tests de rétroaction rigoureux.

Direction d’optimisation

  1. Il est possible d’envisager d’ajouter d’autres indicateurs de tendance à grande échelle, tels que le DMI, l’ADX, etc., afin de rendre les tendances plus précises.

  2. Augmentation de la logique de stop-loss. Par exemple, après l’apparition d’un signal de revers, si le prix revient à nouveau d’une certaine amplitude, il est possible d’envisager une sortie de stop-loss pour réduire les pertes.

  3. Optimiser les paramètres pour les adapter à des variétés de transactions spécifiques. Par exemple, augmenter les paramètres de cycle de la ligne lente ou ajuster la méthode de calcul du prix moyen.

  4. Construire une combinaison d’optimisation de paramètres pour choisir les paramètres optimaux pour les différentes variétés, ce qui peut considérablement améliorer l’applicabilité de la stratégie.

  5. Ajout d’indicateurs d’énergie afin d’éviter les signaux trompeurs lorsque l’énergie est insuffisante.

Résumer

Le cadre global de la stratégie est intact, la combinaison de jugement de tendance et d’indicateurs de retournement permet d’obtenir de meilleures performances en théorie. Cependant, dans la pratique, il est nécessaire d’optimiser les paramètres et les modèles pour les variétés de transactions, ce qui réduit le risque de suradaptation.

Code source de la stratégie
/*backtest
start: 2022-12-06 00:00:00
end: 2023-12-12 00:00:00
period: 1d
basePeriod: 1h
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/
// © SuchitRaju

//@version=4
strategy("MA RSI CCI")

price_up = if(close > open and close > sma(hl2,14))
    1
else
    0

price_down = if(open > close and close < sma(hl2,14))
    1
else
    0
// 

cci_indicator = cci(hl2, 14)
// plot(cci_indicator, color=color.blue)

rsi_slow = sma(rsi(close, 14), 50)
// plot(rsi_slow, color=color.red)

rsi_fast = rsi(close, 14)
// plot(rsi_fast, color=color.green)

isCrossover = if(rsi_fast > rsi_slow and cci_indicator > 0)
    1
else
    0
// plotshape(isCrossover, style = shape.arrowup, color = color.green, size = size.huge)

isCrossunder = if(rsi_fast < rsi_slow and cci_indicator < 0)
    1
else
    0
// plotshape(isCrossunder, style = shape.arrowup, color = color.red, size = size.huge)

// start = timestamp("GMT-5", 2016,9,1,0,0)
// end = timestamp("GMT-5", 2017,9,1,0,0)

// strategy.entry("Long", strategy.long, 1, when = isCrossover and price_up)
// strategy.entry("Short", strategy.short, 1, when = isCrossunder and price_down)
// strategy.close("Long", when = isCrossunder and price_down)
// strategy.close("Short", when = isCrossover and price_up)

strategy.entry("Long", strategy.long, 1, when = isCrossover)
strategy.entry("Short", strategy.short, 1, when = isCrossunder)
strategy.close("Long", when = isCrossunder)
strategy.close("Short", when = isCrossover)