Stratégie de rupture à distance étroite

Auteur:ChaoZhang est là., Date: 15 septembre 2023 à 14h34
Les étiquettes:

Vue d'ensemble de la stratégie

La stratégie de rupture journalière de gamme étroite identifie les oscillations de gamme étroite et les ruptures de clôture journalière pour une tendance à long terme.

La logique de la stratégie

  1. Utilisez NR7 pour identifier le jour le plus étroit des 7 derniers jours.

  2. Utiliser le jour pour déterminer si le plus haut du jour précédent est inférieur au plus haut du jour en cours et si le plus bas du jour précédent est supérieur au plus bas du jour en cours.

  3. Lorsque NR7 et le jour d'ouverture se produisent ensemble, avec un prix de clôture supérieur au prix d'ouverture, allez long.

  4. Sortez lorsque la clôture du lendemain est supérieure à l'ouverture.

La stratégie utilise à la fois le rétrécissement des prix et les signaux journaliers pour identifier les étapes d'accumulation.

En outre, l'approche basée uniquement sur le long terme évite les pièges de la consolidation et les transactions inutiles.

Les avantages de la stratégie

  • Considère à la fois les signaux de rétrécissement et les signaux de jour

  • La direction de la SMA détermine l'existence de la tendance

  • Le filtrage à conditions multiples améliore la précision du signal

  • Éviter les pièges de consolidation

  • Paramètres de backtest optimisés, flexibles

Alertes au risque

  • Le réglage SMA est nécessaire pour optimiser les signaux

  • Une longue entrée peut être retardée, concentrez-vous sur le moment de l'évasion.

  • Incapable de tirer profit des tendances à la baisse

  • Prévenir une nouvelle expansion des plages

Conclusion

La stratégie de rupture à distance étroite examine en profondeur la structure du marché et génère des signaux à haute probabilité.


/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-14 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("NR7ID: Narrow Range + Inside Day, Long Only Strategy (by ChartArt)", shorttitle="CA_-_NR7ID_Strat", overlay=true) // max_bars_back=5000

// ChartArt's Narrow Range + Inside Day Strategy (Long Only)
//
// Version 1.0
// Idea by ChartArt on Oktober 16, 2016.
//
// This long only strategy determines when there is both
// a NR7 (narrow range 7, a trading day in which the range
// is narrower than any of the previous six days), plus a
// inside day (high of the current day is lower than the high
// of the previous day and the low of the current day is higher
// than the low of the previous day) both on the same trading day
// and enters a long trade when the close is larger than the
// open and the slope of the simple moving average is upwards, too.
//
// The strategy exits the long trade next time the close is
// larger than the open in any of the next trading days.
//
// In addition the NR7ID can be colored (if close large open
// colored in green, else in red) and the SMA can be drawn
// with a color based on the direction of the SMA slope.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 


// NR7 Identifier
show_NR7=input(true, type=bool,title="Show Narrow Range 7 (NR7) ?")
range=(high-low)
nr7=(range < range[1]) and (range < range[2]) and (range < range[3]) and (range < range[4]) and (range < range[5]) and (range < range[6])
plotchar(show_NR7?nr7:na, char="7", location=location.abovebar, color=blue)

// Inside Day Identifier
show_insidebar = input(true, type=bool,title="Show Inside Day (I) ?")
insidebar =  (high < high[1] and low > low[1])
plotchar(show_insidebar?insidebar:na, char="i", location=location.abovebar, color=blue)

// NR7 + Inside Day Identifier
show_NR7ID = input(true, type=bool,title="Show NR7ID (NR7 + Inside Day) colors ?")
NR7ID = nr7 and insidebar
NR7ID_color = NR7ID and open < close ? green : NR7ID and open > close ? red : gray
barcolor(show_NR7ID?NR7ID_color:na)

// Simple Moving Average
show_ma = input(true, type=bool,title="Show SMA ?")
ma_length = input(14,title="SMA Length")
ma = sma(close,ma_length)
ma_change = change(ma) > 0
ma_change_color = change(ma) > 0 ? green : change(ma) < 0 ? red : blue
plot(show_ma?ma:na,color=ma_change_color,linewidth=3)

// (not enabled) Short Strategy: NR7 + Inside Day + close is smaller than open + change of SMA is downwards
//strategy.entry("sell", strategy.short, when = NR7ID and open > close and ma_change == false, comment="Short")
//strategy.close("sell", when = open > close )

// Long Strategy: NR7 + Inside Day + close is larger than open + change of SMA is upwards
strategy.entry("long", strategy.long, when = NR7ID and open < close and ma_change == true, comment="Long")
strategy.close("long", when = open < close )

Plus de