Stratégie d'inversion de la ligne médiane de la fourchette dynamique de l'offre et de la demande

SMA TP SL SUPPLY ZONE DEMAND ZONE Midline Rejection
Date de création: 2025-02-24 09:54:03 Dernière modification: 2025-02-24 16:00:34
Copier: 2 Nombre de clics: 353
2
Suivre
319
Abonnés

Stratégie d’inversion de la ligne médiane de la fourchette dynamique de l’offre et de la demande Stratégie d’inversion de la ligne médiane de la fourchette dynamique de l’offre et de la demande

Aperçu

La stratégie est un système de négociation basé sur des intervalles d’offre et de demande et un renversement de la ligne médiane, fonctionnant sur un délai de 5 minutes. Elle traite en identifiant le signal de renversement de tendance lorsque la tendance est renvoyée à la position médiane et en définissant un stop-loss dans une zone d’offre et de demande prédéterminée. La stratégie combine une moyenne mobile (SMA) pour déterminer la direction de la tendance, en identifiant les intervalles d’offre et de demande avec des hauts et des bas, en utilisant le point médian de la zone comme un niveau de référence de prix important.

Principe de stratégie

La logique fondamentale de la stratégie comprend les éléments clés suivants :

  1. Détermination de la fourchette d’offre-demande: les prix maximaux et minimaux utilisant des cycles personnalisés par l’utilisateur (default 50 cycles) pour déterminer les zones d’offre (résistance) et de demande (support)
  2. Calcul de la ligne médiane: le milieu de la fourchette de l’offre et de la demande est considéré comme un point de référence important pour le renversement des prix
  3. Détermination de la tendance: déterminer la direction de la tendance actuelle à l’aide d’une moyenne mobile simple (default 20 cycles)
  4. Conditions d’entrée :
    • Plusieurs têtes: prix au-dessus de la moyenne (à la hausse) et tendance haussière au-dessous du milieu
    • Hue: prix en dessous de la moyenne (en baisse) et tendance à la baisse au-dessus du milieu
  5. Paramètres d’arrêt et de perte:
    • Plusieurs têtes: arrêt dans la zone d’offre, arrêt dans la zone de demande
    • tête vide: arrêt dans la zone de demande, arrêt dans la zone d’offre

Avantages stratégiques

  1. La logique est claire: la combinaison de tendances, de structures de prix et de diagrammes de couverture permet de construire un système de négociation complet
  2. Gestion des risques: basée sur la structure du marché, mise en place d’un point d’arrêt et d’arrêt de perte, conforme aux lois de l’évolution des prix
  3. Adaptabilité: les paramètres peuvent être ajustés pour s’adapter à différents environnements de marché
  4. Prise en charge visuelle: affichage visuel des signaux de négociation et des prix clés à l’aide de marqueurs et de lignes
  5. Automatisation élevée: conditions d’entrée et de sortie claires, permettant une transaction entièrement automatisée

Risque stratégique

  1. Risque de fausse rupture: les prix peuvent osciller dans la fourchette d’offre et de demande, générant de faux signaux
  2. Sensitivité des paramètres: différents paramètres peuvent entraîner des résultats de transaction significativement différents
  3. Dépendance à l’environnement des marchés: risque de sous-performance dans des marchés très volatils ou horizontaux
  4. Effets des points de glissement: dans les marchés moins liquides, les prix de transaction réels peuvent être plus éloignés des prix de signaux
  5. Surtransaction: des ruptures fréquentes peuvent entraîner une surtransaction

Orientation de l’optimisation de la stratégie

  1. Filtre de signaux:
    • Ajout de confirmation de livraison
    • L’introduction d’un indicateur de volatilité dans le filtrage des échanges
  2. Paramètre dynamique:
    • Paramètres d’adaptation basés sur la volatilité du marché
    • L’introduction de la moyenne mobile adaptative
  3. Optimisation de la gestion des risques :
    • Réaliser une gestion dynamique des positions
    • Ajout de filtres à perte d’encre
  4. Identifier le contexte du marché:
    • Développement d’un système de classification des états du marché
    • Utilisation de paramètres différents dans différents états de marché

Résumer

La stratégie d’inversion de la ligne médiane de l’intervalle de l’offre et de la demande dynamique est un système de négociation qui combine plusieurs dimensions de l’analyse technique pour saisir les opportunités du marché par la combinaison de l’intervalle de l’offre et de la demande, des tendances et des modèles de prix. Le principal avantage de cette stratégie réside dans son cadre logique clair et son système de gestion du risque bien développé, mais elle nécessite également que les traders suivent de près les changements de l’environnement du marché et ajustent les paramètres en temps opportun.

Code source de la stratégie
/*backtest
start: 2025-02-16 00:00:00
end: 2025-02-23 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © bommytarton

//@version=6
strategy("Midline Rejection Entry with TP/SL at Supply/Demand", overlay=true)

// User inputs for Swing Length and Length for Supply/Demand Zones
length = input.int(50, title="Swing Length", minval=1)
midlineLength = input.int(20, title="Midline Length for Trend", minval=1)  // Moving average length for trend

// Identify swing highs (Supply Zone) and swing lows (Demand Zone)
supplyZone = ta.highest(high, length) // Supply Zone (resistance)
demandZone = ta.lowest(low, length) // Demand Zone (support)

// Calculate the midpoint between supply and demand zones
midpoint = (supplyZone + demandZone) / 2

// Trend Detection: Use a simple moving average (SMA) for trend direction
smaTrend = ta.sma(close, midlineLength)

// Variables to store Supply/Demand Zones at the time of entry
var float entrySupplyZone = na
var float entryDemandZone = na
var float entryMidpoint = na

// Entry Conditions
// 1. Price in an uptrend (close above SMA)
longCondition = close > smaTrend and close < midpoint and close > open and open < close[1] and close[1] < open[1]

// 1. Price in a downtrend (close below SMA)
shortCondition = close < smaTrend and close > midpoint and close < open and open > close[1] and close[1] > open[1]

// Close any open trades before opening a new one
if (longCondition or shortCondition)
    strategy.close_all()

// Execute the entry logic
if (longCondition)
    entrySupplyZone := supplyZone  // Store Supply Zone for Take Profit
    entryDemandZone := demandZone  // Store Demand Zone for Stop Loss
    entryMidpoint := midpoint      // Store Midpoint
    strategy.entry("Long", strategy.long)
    label.new(bar_index, low, "Open Long", color=color.green, textcolor=color.white, style=label.style_label_up, size=size.small)

if (shortCondition)
    entrySupplyZone := supplyZone  // Store Supply Zone for Stop Loss
    entryDemandZone := demandZone  // Store Demand Zone for Take Profit
    entryMidpoint := midpoint      // Store Midpoint
    strategy.entry("Short", strategy.short)
    label.new(bar_index, high, "Open Short", color=color.red, textcolor=color.white, style=label.style_label_down, size=size.small)

// Define Take Profit and Stop Loss Levels for Long/Short Trades
if (strategy.opentrades > 0)
    // For Long trades, use Supply Zone for Take Profit and Demand Zone for Stop Loss
    if (strategy.position_size > 0)
        strategy.exit("Take Profit", "Long", limit=entrySupplyZone)  // Take Profit at Supply Zone
        strategy.exit("Stop Loss", "Long", stop=entryDemandZone)    // Stop Loss at Demand Zone


    // For Short trades, use Demand Zone for Take Profit and Supply Zone for Stop Loss
    if (strategy.position_size < 0)
        strategy.exit("Take Profit", "Short", limit=entryDemandZone)  // Take Profit at Demand Zone
        strategy.exit("Stop Loss", "Short", stop=entrySupplyZone)     // Stop Loss at Supply Zone


// Re-Plot Supply, Midpoint, and Demand Zones after Trade Closure
plot(supplyZone, title="Supply Zone", color=color.red, linewidth=2, style=plot.style_line)
plot(demandZone, title="Demand Zone", color=color.green, linewidth=2, style=plot.style_line)
plot(midpoint, title="Midpoint", color=color.blue, linewidth=1, style=plot.style_line)