Stratégie de trading quantitatif hybride de mesure de distance d'indicateur technique et d'inversion MACD

RSI MACD EMA momentum Euclidean Distance Centroid volatility REVERSAL PATTERN TREND FOLLOWING
Date de création: 2025-04-16 15:19:46 Dernière modification: 2025-04-16 15:19:46
Copier: 1 Nombre de clics: 379
2
Suivre
319
Abonnés

Stratégie de trading quantitatif hybride de mesure de distance d’indicateur technique et d’inversion MACD Stratégie de trading quantitatif hybride de mesure de distance d’indicateur technique et d’inversion MACD

Aperçu de la stratégie

Cette stratégie est une méthode de trading quantitative hybride qui combine la mesure de la distance entre les indicateurs techniques et les signaux de retournement du MACD. En calculant la distance d’un écu de l’état actuel du marché par rapport à un point central prédéfini entre le marché haussier et le marché baissier, et en combinant les signaux croisés des indicateurs MACD, elle forme une stratégie composite capable à la fois de capturer la dynamique de la tendance et d’identifier les retournements potentiels.

Principe de stratégie

Les principes centraux de cette stratégie reposent sur deux mécanismes principaux:

  1. Mécanisme de mesure de la distanceLa stratégie construit d’abord un vecteur caractéristique composé de six indicateurs techniques, comprenant l’EMA du prix, la volatilité, la dynamique, le RSI, les lignes MACD et le diagramme en colonnes MACD. En même temps, deux vecteurs de point central sont prédéfinis pour les marchés haussiers et baissiers, représentant respectivement l’état idéal du marché lorsqu’il est en tendance à la hausse et à la baisse. En calculant la distance de quelques centimètres entre le vecteur d’état du marché actuel et ces deux vecteurs de point central, la stratégie peut déterminer quel état du marché actuel est plus proche.

  2. Le mécanisme de signaux croisés du MACD: Comme confirmation de deuxième niveau, la stratégie utilise les signaux croisés de l’indicateur MACD pour juger de la dynamique du marché. Les signaux croisés en ligne MACD sont considérés comme des signaux d’achat, tandis que les signaux croisés en ligne MACD sont considérés comme des signaux de vente.

La combinaison de ces deux mécanismes forme un système de double confirmation: d’une part, la mesure de la distance permet de juger de la tendance générale du marché, d’autre part, la mesure de la dynamique à court terme est jugée par le croisement de MACD. La stratégie peut utiliser la confirmation conjointe des deux mécanismes (la mesure de la distance et le MACD donnent le même signal en même temps) ou peut être négociée sur la base de signaux produits indépendamment par l’un ou l’autre mécanisme, augmentant la diversité des signaux et la fréquence des opportunités de capture.

Avantages stratégiques

  1. Évaluation de l’état du marché multidimensionnelEn combinant plusieurs indicateurs techniques en vecteurs caractéristiques, la stratégie permet d’évaluer l’état du marché à partir de plusieurs dimensions, plutôt que de s’appuyer sur un seul indicateur, réduisant ainsi le risque de faux signaux.

  2. Un mécanisme de génération de signaux flexibleLa stratégie utilise à la fois la mesure de la distance et le croisement des deux mécanismes de génération de signaux MACD, permettant de capturer la dynamique continue d’une tendance, mais aussi de détecter en temps opportun les points de retournement potentiels, avec une meilleure adaptabilité.

  3. Objectivité du modèle mathématiqueLe calcul de la distance en Euclide fournit une méthode objective et mathématique pour évaluer l’état du marché, réduisant l’influence des facteurs de jugement subjectifs.

  4. Mécanisme de mise en équilibre automatique: la stratégie permet d’effacer automatiquement les positions dans la direction opposée à la génération d’un nouveau signal, ce qui permet d’arrêter les pertes en temps opportun et de transformer la direction de la position pour s’adapter à un marché en évolution rapide.

  5. Fonction de surveillance des performances: La stratégie est dotée d’une fonctionnalité intégrée de suivi et d’affichage des gains et des pertes des transactions, permettant d’évaluer la performance de la stratégie en temps réel et d’effectuer les ajustements de paramètres nécessaires.

Risque stratégique

  1. Risque de sensibilité des paramètres: Les indicateurs EMA, RSI et MACD utilisés dans la stratégie dépendent de paramètres spécifiques. Si ces paramètres ne sont pas adaptés aux conditions actuelles du marché, cela peut entraîner la génération d’un faux signal. La solution consiste à trouver la combinaison optimale de paramètres en faisant des retours et en réévaluant régulièrement l’efficacité des paramètres.

  2. Risques liés à la survente: Comme la stratégie peut générer des signaux indépendamment sur la base de deux mécanismes différents, il est possible de générer trop de signaux de négociation, ce qui augmente les coûts de négociation dans les marchés plus volatils. Les transactions inutiles peuvent être réduites en ajoutant un mécanisme de filtrage de signal ou en ajustant la logique de génération de signal.

  3. Les tendances et les jugements inversés: Dans certaines conditions de marché, la mesure de la distance et le signal MACD peuvent donner des indications contradictoires, ce qui entraîne une incohérence de la stratégie. Il est recommandé d’établir des règles claires de priorité du signal ou d’introduire des mécanismes de confirmation supplémentaires.

  4. La staticité du réglage du centre: Certains paramètres du centre de la tendance haussière et baissière dans la stratégie actuelle sont statiques (par exemple, les valeurs du RSI) et peuvent ne pas s’adapter à tous les environnements de marché. Il est possible d’envisager l’introduction d’un mécanisme d’adaptation qui ajuste dynamiquement la position du centre en fonction des données historiques.

  5. Limitation d’une seule période: La stratégie fonctionne uniquement sur une seule période de temps et peut manquer des signaux importants sur des périodes de temps plus ou moins longues. Considérer l’extension à des stratégies sur plusieurs périodes de temps peut améliorer la fiabilité du signal.

Orientation de l’optimisation de la stratégie

  1. Conception adaptée au centre: Les paramètres partiels des points centraux actuels du bull et du bear sont fixes et peuvent être améliorés pour devenir des points centraux dynamiques calculés automatiquement sur la base des données historiques. Par exemple, les données des N derniers cycles peuvent être utilisées pour déterminer l’état idéal du bull et du bear, permettant aux points centraux de s’adapter automatiquement aux conditions du marché.

  2. Priorité des signaux et mécanisme de filtrage: introduire un système de priorité des signaux basé sur l’environnement du marché, par exemple prioriser les signaux inversés dans des environnements à forte oscillation, prioriser les signaux de mesure de la distance dans des environnements où la tendance à la basse oscillation est évidente. Dans le même temps, il est possible d’ajouter des filtres de signal basés sur l’oscillation ou le volume de transactions, réduire les signaux de bruit.

  3. Les mécanismes de stop-loss et de profitLes stratégies actuelles ne disposent pas d’objectifs de stop loss et de profit clairement définis, mais peuvent être complétées par des mécanismes de stop loss basés sur l’ATR ou des pourcentages fixes, ainsi que par des objectifs de profit basés sur le support/résistance ou le ratio de rendement du risque.

  4. Intégration de l’analyse de plusieurs périodesL’intégration de l’information sur les tendances à des périodes plus longues dans la stratégie actuelle, par exemple l’exécution d’un signal de négociation à l’heure uniquement si la tendance de la ligne solaire est cohérente, améliore la fiabilité du signal.

  5. Adaptation dynamique des poids de fonctionnalité: Distribuer des poids dynamiques aux différents indicateurs dans les vecteurs de caractéristiques, en ajustant automatiquement leur influence en fonction de la capacité de prévision de chaque indicateur dans différentes conditions de marché, améliorant la précision du calcul de la distance.

  6. Le renforcement de l’apprentissage automatiqueIl est possible d’envisager d’introduire des algorithmes d’apprentissage automatique simples pour optimiser l’emplacement des points centraux ou les poids de caractéristiques, ou même d’utiliser des algorithmes de regroupement pour découvrir automatiquement les points centraux de plusieurs états du marché, et pas seulement les deux états simples du taureau et de l’ours.

Résumer

La stratégie de trading quantitatif mixte entre la mesure de la distance des indicateurs techniques et l’inversion du MACD est une méthode de trading quantitatif innovante qui intègre plusieurs indicateurs techniques courants dans un système d’évaluation de l’état du marché unifié par la technique de calcul de la distance des écus, et qui, combinée à des signaux croisés du MACD, forme un mécanisme de double confirmation. Cette méthode permet à la fois de capturer la dynamique d’une tendance continue et d’identifier les points de retournement potentiels du marché, avec une forte adaptabilité et flexibilité.

Les principaux avantages de cette stratégie résident dans sa capacité à évaluer le marché en plusieurs dimensions et l’objectivité des modèles mathématiques, mais elle est également confrontée à des risques tels que la sensibilité aux paramètres, les sur-transactions et les conflits de signaux. Il y a beaucoup de place pour l’optimisation et l’amélioration de la stratégie en introduisant une conception centricitée sur l’adaptation, en optimisant le système de priorité des signaux, en ajoutant des mécanismes de stop-loss, en intégrant l’analyse multi-cadres et en appliquant des techniques d’apprentissage automatique.

Cette stratégie qui combine les méthodes traditionnelles d’analyse technique avec des modèles mathématiques offre une nouvelle direction à explorer pour les traders quantifiés, en particulier pour ceux qui souhaitent améliorer l’objectivité de leurs décisions de négociation tout en conservant l’interprétabilité de la stratégie.

Code source de la stratégie
/*backtest
start: 2024-04-15 00:00:00
end: 2024-12-31 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=6
strategy("Bysq-Distance Reversal Entry - BTCUSDT (v6)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10, margin_long=0, margin_short=0)

// ========== FEATURE ENGINEERING ==========
price = close
priceNorm = ta.ema(price, 5)
volatility = ta.stdev(price, 20)
momentum = ta.ema(close - close[5], 5)
rsi = ta.rsi(close, 14)
macdLine = ta.ema(close, 12) - ta.ema(close, 26)
signalLine = ta.ema(macdLine, 9)
macdHist = macdLine - signalLine

// Fitur sebagai vector
featureVector = array.new_float(6)
array.set(featureVector, 0, priceNorm)
array.set(featureVector, 1, volatility)
array.set(featureVector, 2, momentum)
array.set(featureVector, 3, rsi)
array.set(featureVector, 4, macdLine)
array.set(featureVector, 5, macdHist)

// Centroid bullish
bullishCentroid = array.new_float(6)
array.set(bullishCentroid, 0, price)
array.set(bullishCentroid, 1, volatility)
array.set(bullishCentroid, 2, momentum)
array.set(bullishCentroid, 3, 60.0)
array.set(bullishCentroid, 4, macdLine)
array.set(bullishCentroid, 5, macdHist)

// Centroid bearish
bearishCentroid = array.new_float(6)
array.set(bearishCentroid, 0, price)
array.set(bearishCentroid, 1, volatility)
array.set(bearishCentroid, 2, momentum)
array.set(bearishCentroid, 3, 40.0)
array.set(bearishCentroid, 4, macdLine)
array.set(bearishCentroid, 5, macdHist)

// Fungsi Euclidean Distance
euclideanDistance(arr1, arr2) =>
    dist = 0.0
    for i = 0 to array.size(arr1) - 1
        a = array.get(arr1, i)
        b = array.get(arr2, i)
        dist += math.pow((a - b), 2)
    math.sqrt(dist)

// Hitung jarak ke centroid
distToBullish = euclideanDistance(featureVector, bullishCentroid)
distToBearish = euclideanDistance(featureVector, bearishCentroid)

// ========== SINYAL ==========
// Original distance strategy signals
isDistanceBuySignal = distToBullish < distToBearish and ta.crossover(macdLine, signalLine)
isDistanceSellSignal = distToBearish < distToBullish and ta.crossunder(macdLine, signalLine)

// Reversal strategy signals
isReversalBuySignal = ta.crossover(macdLine, signalLine)
isReversalSellSignal = ta.crossunder(macdLine, signalLine)

// Combined signals - using both strategies
isBuySignal = isDistanceBuySignal or isReversalBuySignal
isSellSignal = isDistanceSellSignal or isReversalSellSignal

// ========== EKSEKUSI ==========
if isBuySignal
    strategy.close("Sell")         // Close any sell position first (from reversal strategy)
    strategy.entry("Buy", strategy.long)
    
if isSellSignal
    strategy.close("Buy")          // Close any buy position first (from reversal strategy)
    strategy.entry("Sell", strategy.short)

// ========== METRIK KINERJA ==========
float lastOpenTradeProfit = na
if strategy.opentrades > 0
    lastOpenTradeProfit := strategy.opentrades.profit(strategy.opentrades - 1)

float lastClosedTradeProfit = na
if strategy.closedtrades > 0
    lastClosedTradeProfit := strategy.closedtrades.profit(strategy.closedtrades - 1)

// Plot info
plot(lastOpenTradeProfit, title="Last Open Trade Profit", color=color.blue)
plot(lastClosedTradeProfit, title="Last Closed Trade Profit", color=color.orange)