
La stratégie utilise des ordres d’accompagnement de super-indicateurs de tendance et des filtres associés aux nuages et aux couleurs de la ligne K pour augmenter la probabilité de gagner. L’objectif est de capturer la tendance rapidement après le début de la tendance et de réduire le risque de perte dans la zone de compensation.
Calculer la moyenne des prix les plus élevés et les plus bas d’un cycle ATR comme référence.
Les trains de haut et les trains de bas sont calculés en fonction des multiples de Factor.
Quand le prix de clôture est supérieur à la ligne de départ, il est marqué comme 1, quand il est inférieur à la ligne de départ, il est marqué comme -1, le reste du temps, la position actuelle est maintenue.
Adaptation en temps réel de la ligne de stop en fonction de la relation entre le prix de clôture et la position de la trajectoire ascendante et descendante.
La portée des nuages est calculée en fonction d’un certain pourcentage de la distance entre les orbites.
Lorsque la tendance est supérieure à 1, le cours de clôture doit être inférieur au cours d’ouverture et le cours de clôture doit être supérieur au cours d’ouverture.
Lorsqu’il y a un gain, il y a un ordre de placement au prix de clôture de la ligne K précédente. Lorsqu’il y a un vide, il y a un ordre de vente au prix de clôture de la ligne K précédente.
Le filtrage des délais permet de fermer toutes les positions.
La stratégie, combinant les indicateurs de super-tendance et le concept de nuage, permet de capturer rapidement la direction de la tendance une fois que la tendance est lancée. La ligne d’arrêt de super-tendance permet de suivre plus rapidement les variations de prix par rapport aux arrêts mobiles ordinaires. Le filtrage du nuage permet d’éviter les pertes causées par les fausses ruptures.
L’indicateur de super-tendance est très sensible et a une grande capacité à suivre les tendances.
Le filtrage de la notion de nuage réduit les pertes dues aux fausses percées.
La ligne K est une couleur auxiliaire de jugement, pour éviter le renversement.
Le prix limite réduit l’impact des points de glissement et augmente la probabilité d’obtenir un profit.
La gestion des périodes et des positions peut être personnalisée en fonction des besoins de chaque transaction.
Cette stratégie comporte également des risques à prendre en compte:
Une mauvaise configuration des paramètres de l’indicateur de super-tendance peut rendre la courbe trop sensible et produire plus de faux signaux.
Les nuages trop larges peuvent filtrer les signaux de rupture normaux et affecter les profits.
Les options limitées peuvent être difficiles à négocier en cas de forte volatilité et risquent de manquer des opportunités de trading.
Aucun arrêt de suivi ne peut éviter complètement le risque systémique de pertes massives.
Il est important de maîtriser les risques.
Cette stratégie peut être optimisée dans les domaines suivants:
Test de différents marchés et variétés pour trouver la meilleure combinaison de paramètres de tendance.
La marge de stop loss est ajustée en fonction de la volatilité du marché.
Optimisation de la portée des nuages, équilibre entre le filtrage du bruit et la conservation du signal.
Ajout d’un module d’optimisation des positions pour que la taille des positions suive les changements du marché.
Il utilise des combinaisons de paramètres différentes pour s’adapter au rythme du marché à différentes périodes.
L’efficacité du test en combinaison avec d’autres indicateurs.
Dans l’ensemble, la stratégie est bien pensée et présente des avantages évidents pour la capture des tendances. Cependant, aucune stratégie ne peut éviter complètement le risque systémique. Il est nécessaire de contrôler les positions et d’optimiser en permanence pour réduire les risques pouvant survenir dans les transactions réelles et tirer le meilleur parti de la stratégie.
/*backtest
start: 2023-10-03 00:00:00
end: 2023-11-02 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Noro
//2018
//@version=2
strategy("Noro's SuperTrend Strategy v2.0 Limit", shorttitle = "STL str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)
//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %")
cloud = input(25, defval = 25, minval = 5, maxval = 50, title = "cloud, % of ATR")
Factor = input(title = "Super Trend", defval = 3, minval = 1, maxval = 100)
ATR = input(title = "ATR", defval = 7, minval = 1,maxval = 100)
centr = input(true, defval = true, title = "need center of ATR?")
border = input(false, defval = false, title = "need border?")
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")
//Super Trend ATR 1
src = close
Up=hl2-(Factor*atr(ATR))
Dn=hl2+(Factor*atr(ATR))
TUp=close[1]>TUp[1]? max(Up,TUp[1]) : Up
TDown=close[1]<TDown[1]? min(Dn,TDown[1]) : Dn
Trend = close > TDown[1] ? 1: close< TUp[1]? -1: nz(Trend[1],1)
Tsl1 = Trend==1? TUp: TDown
Tsl2 = Trend==1? TDown: TUp
limit = (Tsl1 - Tsl2) / 100 * cloud
upcloud = Tsl1 - limit
dncloud = Tsl2 + limit
//Cloud
linecolor = Trend == 1 ? green : red
centercolor = centr == true ? blue : na
cloudcolor = Trend == 1 ? green : red
cline = (Tsl1 + Tsl2) / 2
P1 = plot(Tsl1, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-1")
P2 = plot(Tsl2, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend ATR-2")
P3 = plot(cline, color = centercolor , style = line , linewidth = 1,title = "SuperTrend Center")
P4 = plot(upcloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center+1")
P5 = plot(dncloud, color = border == false ? na : linecolor , style = line , linewidth = 1,title = "SuperTrend Center-1")
fill(P1, P4, color = linecolor == red ? red : lime, transp = 50)
fill(P2, P5, color = linecolor == red ? red : lime, transp = 50)
//Signals
up = 0.0
dn = 0.0
up := Trend != 1 ? 0 : Trend == 1 and close < open ? close : up[1]
dn := Trend != -1 ? close * 1000 : Trend == -1 and close > open ? close : dn[1]
//Trading
size = strategy.position_size
lot = 0.0
lot := size != size[1] ? strategy.equity / close * capital / 100 : lot[1]
if true
strategy.entry("Long", strategy.long, needlong ? lot : 0, limit = up, when = (Trend == 1 and time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
strategy.entry("Short", strategy.short, needshort ? lot : 0, limit = dn, when = (Trend == -1 and time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if time > timestamp(toyear, tomonth, today, 23, 59)
strategy.close_all()