Cette stratégie intègre l'indicateur double SSL et l'indicateur de moyenne mobile, en utilisant l'indicateur double SSL pour déterminer la direction de la tendance du marché et les moyennes mobiles pour la confirmation de la tendance.
Calculer le rail supérieur en prenant la SMA du prix le plus élevé sur une période spécifique par rapport à la clôture d'hier. Calculer le rail inférieur en prenant la SMA du prix le plus bas sur une période spécifique par rapport à la clôture d'hier.
Comparez le prix de clôture actuel avec les rails supérieur et inférieur pour déterminer la direction de la tendance actuelle. Si le prix de clôture est au-dessus du rail supérieur, la tendance est déterminée comme haussière. Si le prix de clôture est en dessous du rail inférieur, la tendance est déterminée comme baissière.
Calculer la SMA de 200 périodes des prix de clôture comme référence pour les tendances à moyen et à long terme.
Lors d'une tendance haussière, si le prix de clôture dépasse la SMA depuis le bas, un signal d'achat est généré.
Après l'entrée d'une position longue, si le prix de clôture dépasse la barre supérieure, il s'agit d'un signal de clôture.
Si le prix de clôture dépasse le point de stop loss, l'ordre stop loss est déclenché.
L'utilisation de l'indicateur Double SSL pour déterminer la direction de la tendance peut identifier efficacement les tendances et augmenter la probabilité d'entrer dans la bonne direction.
L'ajout de moyennes mobiles peut filtrer certains signaux bruyants et éviter de mauvaises transactions sur des marchés instables.
L'utilisation d'un stop loss pour contrôler le risque de transaction unique peut éviter efficacement des pertes excessives.
La logique de la stratégie est relativement simple et facile à comprendre, adaptée aux débutants.
L'indicateur double SSL est sensible au réglage des paramètres, différentes combinaisons de périodes peuvent conduire à des résultats très différents.
Un MA trop long élimine trop d'opportunités de négociation, tandis qu'un MA trop court ne peut pas dénoncer efficacement.
Une plage de stop loss trop large ne permet pas de contrôler efficacement le risque, tandis qu'une plage trop étroite peut être déclenchée par des fluctuations normales de prix.
La stratégie repose fortement sur l'optimisation des paramètres. Des paramètres incorrects peuvent ne pas identifier correctement les tendances, conduisant à de mauvaises décisions de trading.
Testez différentes combinaisons de périodes pour trouver des paramètres qui peuvent améliorer la précision de la détermination de la tendance pour l'indicateur Double SSL.
Tester différentes MAs de période pour trouver l'équilibre optimal entre les signaux de dénouement et de conservation.
L'examen des stops-loss adaptatifs qui s'ajustent en fonction de la volatilité du marché afin de rendre le stop-loss plus réactif.
Incorporer d'autres indicateurs de confirmation, tels que le volume, la confluence de plusieurs délais, pour améliorer la robustesse.
L'analyse de l'évolution devrait être effectuée sur la stratégie optimisée afin d'assurer sa robustesse.
Cette stratégie combine les atouts de l'indicateur double SSL et des moyennes mobiles. Avec un potentiel important d'optimisation des paramètres, c'est une stratégie de suivi de tendance. Avec un réglage et une optimisation raisonnables des paramètres, de bons résultats peuvent être obtenus. Cependant, le risque de surajustement doit être contrôlé pour assurer la robustesse. Dans l'ensemble, cette stratégie sert de bon exemple pour l'exploration et l'apprentissage.
/*backtest start: 2022-10-30 00:00:00 end: 2023-11-05 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 //@Isaac //Estrategia vista en ▼▼ //YT: Trading Zone strategy('SSL Strategy + EMA 200 AND Stop Loss', overlay=true) ema = ta.ema(close, 200) stop_loss = input.float(2.00, title='Stop Loss', step=0.10) period = input(title='Period', defval=10) len = input(title='Period', defval=10) smaHigh = ta.sma(high, len) smaLow = ta.sma(low, len) Hlv = int(na) Hlv := close > smaHigh ? 1 : close < smaLow ? -1 : Hlv[1] sslDown = Hlv < 0 ? smaHigh : smaLow sslUp = Hlv < 0 ? smaLow : smaHigh cruceArriba = ta.crossover(sslUp, sslDown) cruceAbajo = ta.crossunder(sslUp, sslDown) alcista = (close > ema ) and (cruceArriba) bajista = (close < ema) and (cruceAbajo) var SL = 0.0 //Cerrar compra por cruce por_cruce = ta.crossunder(sslUp, sslDown) //Cerrar venta por cruce por_cruceAB = ta.crossunder(sslDown, sslUp) //Cerrar compra y venta por stop loss Stop = SL comprado = strategy.position_size > 0 vendido = strategy.position_size < 0 UTmpconvertL = strategy.position_avg_price * (1 + 0.1) UTmpdefineL = (UTmpconvertL > close and strategy.openprofit > 0.1) UTSPL = UTmpdefineL SPL = UTSPL /////////////////////////////////////////////////////////////////////// UTmpconvertLS = strategy.position_avg_price * (1 + 0.1) UTmpdefineLS = (UTmpconvertLS > close and strategy.openprofit > 0.1) UTSPLS = UTmpdefineLS SPLS = UTSPLS //////////////////////////////////////////////////////////////////////// if not comprado and not vendido and alcista cantidad = (strategy.equity / close) strategy.entry('Compra', strategy.long, qty=cantidad, comment="Long") SL := sslDown if comprado and not vendido and por_cruce and SPL strategy.close("Compra", comment="Exit Long") SL := 0 if comprado and not vendido and Stop strategy.exit('Compra', stop=Stop, comment="SL") SL := 0 /////////////////////////////////////////////////////////////////// if not comprado and not vendido and bajista cantidad = (strategy.equity / close) strategy.entry('Venta', strategy.short, qty=cantidad, comment="Short") SL := sslDown if not comprado and vendido and por_cruceAB and SPLS strategy.close("Venta", comment="Exit Short") SL := 0 if not comprado and vendido and Stop strategy.exit('Venta', stop=Stop, comment="SLS") SL := 0 plot(Stop > 0 ? Stop : na, style=plot.style_circles, color=color.new(color.yellow,0)) plot(ema) plot(sslDown, linewidth=2, color=color.new(color.red, 0)) plot(sslUp, linewidth=2, color=color.new(color.lime, 0))