Stratégie quantitative de croisement de moyenne mobile et d'inversion des ordres courts : système de trading intelligent d'ordres courts SMA20/50

SMA MA 交叉策略 趋势跟踪 空头策略 均线系统 技术分析
Date de création: 2025-04-01 13:45:34 Dernière modification: 2025-04-01 13:45:34
Copier: 2 Nombre de clics: 311
2
Suivre
319
Abonnés

Stratégie quantitative de croisement de moyenne mobile et d’inversion des ordres courts : système de trading intelligent d’ordres courts SMA20/50 Stratégie quantitative de croisement de moyenne mobile et d’inversion des ordres courts : système de trading intelligent d’ordres courts SMA20/50

Aperçu de la stratégie

Cette stratégie est un système de trading à ciel ouvert basé sur la croisée des moyennes mobiles simples (SMA) qui se concentre sur la capture des tendances baissières du marché. La stratégie utilise des moyennes mobiles simples de 20 cycles et de 50 cycles comme indicateur central.

Principe de stratégie

La stratégie est basée sur la théorie classique de la moyenne mobile croisée de l’analyse technique. Sa logique centrale est la suivante:

  1. Calculer une moyenne mobile simple à 20 cycles (SMA20) et une moyenne mobile simple à 50 cycles (SMA50)
  2. Lorsque le SMA20 dépasse le SMA50, considéré comme un mouvement de prix négatif, la tendance est déclenchée par un revirement de la courbe, déclenchant un signal de décalage
  3. Lorsque le SMA20 franchit le SMA50, il est considéré comme une tendance à la baisse qui s’atténue ou s’arrête, déclenchant un signal de péréquation.
  4. La stratégie utilise un mode de fonctionnement à pleine position avec 100% de fonds disponibles pour chaque transaction.

D’un point de vue de la mise en œuvre du code, la stratégie utilise les fonctions ta.crossunder () et ta.crossover () du langage Pine Script pour capturer avec précision les événements de croisement de ligne équivalente et exécuter les transactions via les fonctions strategy.entry () et strategy.close (). De plus, la stratégie affiche les signaux de transaction de manière intuitive sur le graphique, aidant les traders à comprendre immédiatement l’exécution de la logique des transactions.

Avantages stratégiques

  1. La simplicité et l’efficacitéLa stratégie utilise seulement deux indicateurs techniques, la logique est claire, facile à comprendre et à mettre en œuvre, ce qui réduit le risque de suradaptation.
  2. Capacité à suivre les tendancesLa combinaison des SMA20 et SMA50 est efficace pour capturer les variations de tendance à moyen terme, et une rupture de la moyenne courte au-dessous de la moyenne longue indique généralement une plus grande marge de baisse.
  3. Amélioration de la gestion des risquesLa stratégie impose des conditions d’entrée et de sortie claires, ne permet pas aux pertes de s’étendre indéfiniment, et se calme automatiquement lorsque la tendance est inversée.
  4. Les commentaires visuels: Grâce aux marqueurs de forme et aux marqueurs de texte sur le graphique, les traders peuvent voir clairement chaque signal de négociation, ce qui facilite l’analyse de retour et la surveillance en temps réel.
  5. Très adaptable: Bien que la stratégie fonctionne bien dans le cadre de 15 minutes, sa logique de base s’applique également à d’autres périodes, avec une bonne adaptabilité entre les périodes.
  6. Traite contre l’humanitéLes stratégies à vide sont souvent utilisées pour tirer profit d’une panique généralisée sur les marchés, et aident les traders à rester calmes et à tirer profit d’un marché en baisse.

Risque stratégique

  1. Risque de volatilité des marchés: Dans un marché oscillant en diagonale, des croisements fréquents de la moyenne peuvent entraîner de multiples faux signaux, générant des transactions continuellement déficitaires. La méthode d’amélioration consiste à ajouter des indicateurs de confirmation, tels qu’un indicateur de force de tendance ou un filtre de taux de fluctuation.
  2. Le problème du retard: Les moyennes mobiles sont elles-mêmes retardées, ce qui peut entraîner des opportunités d’entrée et de sortie inadéquates et la perte de points de négociation optimaux. L’utilisation d’indicateurs plus sensibles tels que l’EMA ou l’ajustement du cycle de la moyenne peut être envisagée pour atténuer ce problème.
  3. Restrictions unidirectionnellesUne solution consiste à développer une stratégie multi-tête adéquate ou à étendre la stratégie actuelle à un système de négociation bidirectionnel.
  4. Une mauvaise gestion des fondsStratégie de trading avec 100% des fonds, sans tenir compte de la gestion des positions, qui peut entraîner une diminution rapide des fonds en cas de pertes consécutives. Il est recommandé d’ajouter un module de gestion des risques pour ajuster la taille des positions en fonction des fluctuations dynamiques du marché.
  5. Manque de mécanisme de prévention: la stratégie actuelle repose sur le croisement de la ligne égale comme point de départ, il n’y a pas de stop loss, et dans des cas extrêmes, il est possible de subir un grand retrait. Un mécanisme de stop loss basé sur l’ATR ou un pourcentage fixe devrait être ajouté.

Orientation de l’optimisation de la stratégie

  1. Ajouter un filtre de tendanceL’introduction d’indicateurs de force de tendance tels que l’ADX (indice de direction moyenne) et l’exécution des transactions uniquement lorsque l’ADX est supérieur à une certaine baisse, afin d’éviter les faux signaux de choc sur le marché. Cette optimisation améliore considérablement les taux de victoire et de perte.
  2. Optimiser la périodicité moyenne: Le cycle 2050 utilisé actuellement est un réglage classique, mais il est possible d’améliorer l’adaptabilité de la stratégie en relançant différentes combinaisons de paramètres pour trouver les paramètres optimaux pour une variété de transactions particulière.
  3. Introduction à l’analyse de plusieurs périodes: ajouter des jugements de tendance à des périodes plus élevées, exécuter les signaux blancs sur le graphique de 15 minutes uniquement lorsque la ligne solaire ou le graphique de 4 heures tend vers le bas, pour éviter de négocier contre la grande tendance.
  4. Ajouter une gestion de positionModification dynamique de la taille de la position en fonction de l’ATR, réduction de la position dans les marchés à forte volatilité, augmentation modérée de la position en cas de faible volatilité, optimisation de la fluidité de la courbe des capitaux.
  5. Augmentation du mécanisme de stop-loss: mettre en place des arrêts basés sur l’ATR ou les supports clés, et des arrêts basés sur le rapport de rendement au risque ou les points bas de la période précédente, améliorer la capacité de protection des fonds.
  6. Augmenter le filtrage des heures de transaction: analysez la performance des différentes périodes de négociation et évitez les périodes inefficaces ou à haut risque, telles que les heures de transaction sur les marchés asiatiques, européens et américains qui peuvent fluctuer.
  7. Prendre en compte les coûtsLes frais de transaction et les facteurs de dérapage sont intégrés dans l’évaluation stratégique, ce qui permet d’évaluer plus précisément l’efficacité réelle des transactions.

Résumer

Le système de trading de billets d’avion intelligents SMA20/50 est une stratégie de trading quantitative simple et efficace pour effectuer des transactions en l’air en capturant les signaux croisés des moyennes mobiles simples. La stratégie est excellente dans les tendances baissières, la logique d’exploitation est claire et facile à comprendre et à mettre en œuvre. Malgré les risques inhérents tels que les faux signaux et le retard de la ligne de la fluctuation du marché, les performances de la stratégie peuvent être considérablement améliorées par l’ajout de filtres de tendance, l’optimisation des paramètres, l’amélioration de la gestion des fonds et des mécanismes d’arrêt des pertes.

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

//@version=6
strategy("SMA20/50 Short-Only Strategy", overlay=true, initial_capital=5000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

// Input sources and calculations
src = close
sma20 = ta.sma(src, 20)
sma50 = ta.sma(src, 50)

// Generate sell signal when sma20 crosses below sma50
sellSignal = ta.crossunder(sma20, sma50)

// Generate exit signal when sma20 crosses above sma50
exitSignal = ta.crossover(sma20, sma50)

// Plot SMAs
plot(sma20, color = color.blue, title = "SMA 20")
plot(sma50, color = color.black, title = "SMA 50")

// Plot sell signal
plotshape(sellSignal, style = shape.triangledown, location = location.abovebar, color = color.red, size = size.tiny, title = "Sell Signal")

// Plot exit signal
plotshape(exitSignal, style = shape.xcross, location = location.belowbar, color = color.green, size = size.tiny, title = "Exit Signal")

// Add label for sell signals
if sellSignal
    label.new(bar_index, high, text="SELL", color = color.red, style = label.style_label_down, textcolor = color.white, size = size.small)

// Add label for exit signals
if exitSignal
    label.new(bar_index, low, text="EXIT", color = color.green, style = label.style_label_up, textcolor = color.white, size = size.small)

// Strategy entry and exit - SHORT ONLY
if sellSignal
    strategy.entry("Short", strategy.short)

if exitSignal
    strategy.close("Short")

// Strategy performance stats
var cumPnL = 0.0
if strategy.closedtrades > 0
    cumPnL := strategy.netprofit