
Cette stratégie est une stratégie de négociation intra-journée basée sur le graphique du matin, utilisant principalement les hauts et les bas de la ligne de crête de 11 heures du matin pour déterminer la tendance du marché. L’idée centrale de la stratégie est de faire plus lorsque le prix franchit le sommet du matin, de faire moins lorsque le prix franchit le bas, tout en définissant les conditions de stop correspondantes.
La stratégie fonctionne comme suit:
Déterminer les prix clés: la stratégie commence par identifier les hauts et les bas de l’horloge de 11h00 et utilise ces deux prix comme niveau de référence clé.
Signal d’entrée:
Paramètres de stop-loss:
Le mécanisme de retrait:
Limite de temps de transaction: la stratégie consiste à ne plus ouvrir de nouvelles transactions après 15h15 afin d’éviter des fluctuations anormales avant la clôture.
Règles de négociation claires: la stratégie est basée sur une logique de rupture et de retournement de prix claire, facile à comprendre et à exécuter.
Contrôle des risques: contrôler efficacement le risque de chaque transaction en définissant des points de stop-loss fixes.
Adaptation aux conditions du marché: la stratégie peut s’adapter aux différentes conditions du marché en fonction de la fourchette de prix formée le matin.
Automatisation de l’exécution: les stratégies peuvent être programmées pour automatiser complètement les transactions, en réduisant l’intervention humaine et l’influence émotionnelle.
Les transactions intra-journées permettent d’éviter le risque de détenir une position du jour au lendemain en la déposant avant la clôture de la journée.
Flexibilité: la stratégie peut être optimisée en fonction des paramètres de différents marchés et types de transactions.
Risque de fausse rupture: les marchés peuvent être exposés à des fausses ruptures, entraînant de fréquentes sorties à perte.
Limitation de la marge de fluctuation: pendant les périodes de faible volatilité, il peut être difficile de déclencher un signal de trading ou de générer des bénéfices efficaces.
Un seul fuseau horaire: le fait de se fier uniquement au fil de 11h00 peut faire oublier des informations importantes sur le marché pour d’autres périodes.
Le manque de suivi des tendances: la stratégie ne met pas en place de conditions d’arrêt et peut ne pas être en mesure de saisir pleinement les grandes tendances.
Stop-loss fixe: dans les marchés très volatiles, les stop-loss fixes peuvent être trop rapprochés, ce qui entraîne une sortie prématurée d’une situation avantageuse.
Coûts de transaction: les entrées et sorties fréquentes peuvent entraîner des coûts de transaction plus élevés, affectant les bénéfices globaux.
L’introduction de l’analyse à plusieurs périodes: une meilleure précision des transactions, combinée à une meilleure compréhension des tendances sur de plus longues périodes.
Stop-loss dynamique: utilisez des méthodes telles que l’indicateur ATR pour définir un stop-loss dynamique adapté aux différentes conditions de volatilité du marché.
Ajout d’un mécanisme de freinage: mise en place de conditions de freinage basées sur le rapport risque/bénéfice, amélioration du rapport profit/perte de la stratégie.
L’analyse du volume: ajout d’une analyse de la quantité de trafic pour améliorer la fiabilité du signal de rupture.
Filtrage de l’état du marché: introduction d’indicateurs de volatilité tels que l’ATR, pour réduire la fréquence des transactions en période de faible volatilité.
Optimiser le moment de l’entrée: envisagez d’utiliser des indicateurs tels que le RSI pour effectuer des transactions inverses dans les zones de survente.
Ajout d’un élément de suivi de la tendance: lors d’une forte rupture, envisagez d’utiliser un stop mobile pour suivre la tendance.
La rétroaction et l’optimisation des paramètres: la rétroaction est effectuée sur différentes combinaisons de paramètres pour trouver le paramétrage optimal.
Les stratégies de rupture et de retournement du lever du matin sont un système de négociation intraday basé sur des ruptures de prix clés. Elle utilise les hauts et les bas du lever du 11 heures du matin comme référence importante pour capturer les tendances à court terme par des ruptures de prix. L’avantage de la stratégie réside dans la clarté des règles, la maîtrise des risques et l’exécution automatisée.
/*backtest
start: 2024-06-30 00:00:00
end: 2024-07-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Custom Strategy Nifty 50", overlay=true)
// Define the time variables
var bool morningCandleFound = false
var float morningHigh = na
var float morningLow = na
var bool inTrade = false
var int tradeDirection = 0 // 0: No trade, 1: Buy Call, -1: Buy Put
var bool noNewTrades = false // To prevent new trades after 15:15
// Identify the high and low of the 11:00 morning candle
if (hour == 11 and minute == 0)
morningHigh := high
morningLow := low
morningCandleFound := true
// Plot the high and low of the 11:00 morning candle
plot(morningHigh, title="11:00 morning High", color=color.green, linewidth=2)
plot(morningLow, title="11:00 morning Low", color=color.red, linewidth=2)
// Conditions for Buy Call and Buy Put signals
var bool buyCallCondition = false
var bool buyPutCondition = false
if (morningCandleFound and (hour > 11 or (hour == 11 and minute > 0)) and not noNewTrades)
// Check for Buy Call condition
if (close[1] > morningHigh and close > morningHigh)
if (not inTrade or tradeDirection != 1)
strategy.entry("Buy Call", strategy.long, stop=morningLow)
buyCallCondition := true
inTrade := true
tradeDirection := 1
label.new(bar_index, high, "Buy Call", color=color.green)
alert("Buy Call: Price crossed morning high", alert.freq_once_per_bar_close)
else if (close[1] <= morningHigh)
buyCallCondition := false
// Check for Buy Put condition
if (close[1] < morningLow and close < morningLow)
if (not inTrade or tradeDirection != -1)
strategy.entry("Buy Put", strategy.short, stop=morningHigh)
buyPutCondition := true
inTrade := true
tradeDirection := -1
label.new(bar_index, low, "Buy Put", color=color.red)
alert("Buy Put: Price crossed morning low", alert.freq_once_per_bar_close)
else if (close[1] >= morningLow)
buyPutCondition := false
// Exit conditions
if (inTrade)
if (tradeDirection == 1 and low <= morningLow)
strategy.close("Buy Call")
label.new(bar_index, low, "Exit Call", color=color.red)
alert("Exit Call: Price fell below stop", alert.freq_once_per_bar_close)
buyCallCondition := false
inTrade := false
tradeDirection := 0
if (tradeDirection == -1 and high >= morningHigh)
strategy.close("Buy Put")
label.new(bar_index, high, "Exit Put", color=color.green)
alert("Exit Put: Price rose above stop", alert.freq_once_per_bar_close)
buyPutCondition := false
inTrade := false
tradeDirection := 0
// Close all positions at 15:15 and prevent new trades for the rest of the day
if (hour == 15 and minute == 15)
strategy.close_all()
inTrade := false
tradeDirection := 0
noNewTrades := true
alert("Close All Positions at 15:15", alert.freq_once_per_bar_close)
// Reset noNewTrades at the start of a new day
if (hour == 11 and minute == 0)
noNewTrades := false