Cette stratégie identifie des tendances fortes et un moment favorable pour le trading à court terme avec contrôle des pertes. Elle suit les écarts de prix des moyennes mobiles simples comme signaux de tendance et définit un stop loss/take profit basé sur les divergences du RSI pour capturer les mouvements de prix à court terme.
Calcul des moyennes mobiles simples sur plusieurs périodes
Définition des SMA de 9 jours, 50 jours et 100 jours
La courte SMA traversant la longue SMA indique la direction de la tendance
Évaluation des niveaux de surachat/survente à l'aide de l'indice de volatilité
La longueur du RSI est de 14 périodes.
Le RSI supérieur à 70 est suracheté, inférieur à 30 est survendu
Entrer dans des transactions lorsque le prix dépasse la SMA de 9 jours
Passez long lorsque le prix dépasse la SMA à 9 jours
Passer court lorsque le prix tombe en dessous de la SMA à 9 jours
Définition du stop loss/take profit basé sur les divergences du RSI
Différence de l'indice de rentabilité pour le stop loss
Profitez lorsque le RSI atteint des niveaux prédéfinis
Capture les tendances à court terme, adaptées au trading à haute fréquence
Les combinaisons SMA filtrent les signaux de tendance, évitant les mauvais échanges
L'indicateur de risque d'urgence aide à déterminer le moment opportun, à contrôler efficacement les risques
Résultats de l'analyse de risque
La combinaison des indicateurs améliore la stabilité
Un jugement erroné de la tendance à court terme provoque la poursuite
Les faux signaux RSI augmentent les pertes
Les paramètres d'arrêt des pertes/d'obtention des bénéfices incorrects réduisent les bénéfices ou amplifient les pertes
Une fréquence de négociation élevée augmente les coûts et les dérapages
Paramètres inefficaces et stratégie d'impact anormal sur les marchés
Optimiser les paramètres, un stop loss strict, gérer les coûts
Tester différentes combinaisons de SMA pour améliorer le jugement de tendance
Considérez des indicateurs supplémentaires tels que STOCH pour vérifier les signaux RSI
Utiliser l'apprentissage automatique pour déterminer les événements valides
Ajustez les paramètres pour différents produits et sessions
Optimiser la logique stop-loss/take profit pour le suivi dynamique
Explorez les mécanismes de réglage des paramètres automatiques
Cette stratégie combine SMA et RSI pour une approche de négociation à court terme conservatrice. Les paramètres de réglage fin, la validation des signaux, le contrôle des risques le rendent plus robuste et adaptable. Il y a place à l'amélioration en explorant plus de combinaisons SMA, en ajoutant des modèles d'apprentissage automatique, etc. L'optimisation continue conduira à une plus grande maturité.
/*backtest start: 2023-08-27 00:00:00 end: 2023-09-26 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Coinrule //@version=4 strategy(shorttitle='Maximized Scalping On Trend',title='Maximized Scalping On Trend (by Coinrule)', overlay=true, initial_capital = 1000, process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1) //Backtest dates fromMonth = input(defval = 1, title = "From Month", type = input.integer, minval = 1, maxval = 12) fromDay = input(defval = 10, title = "From Day", type = input.integer, minval = 1, maxval = 31) fromYear = input(defval = 2019, title = "From Year", type = input.integer, minval = 1970) thruMonth = input(defval = 1, title = "Thru Month", type = input.integer, minval = 1, maxval = 12) thruDay = input(defval = 1, title = "Thru Day", type = input.integer, minval = 1, maxval = 31) thruYear = input(defval = 2112, title = "Thru Year", type = input.integer, minval = 1970) showDate = input(defval = true, title = "Show Date Range", type = input.bool) start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window window() => true // create function "within window of time" //MA inputs and calculations movingaverage_fast = sma(close, input(9)) movingaverage_mid= sma(close, input(50)) movingaverage_slow = sma(close, input (100)) //Trend situation Bullish= cross(close, movingaverage_fast) Momentum = movingaverage_mid > movingaverage_slow // RSI inputs and calculations lengthRSI = 14 RSI = rsi(close, lengthRSI) //Entry strategy.entry(id="long", long = true, when = Bullish and Momentum and RSI > 50) //Exit TP = input(70) SL =input(30) longTakeProfit = RSI > TP longStopPrice = RSI < SL strategy.close("long", when = longStopPrice or longTakeProfit and window()) plot(movingaverage_fast, color=color.black, linewidth=2 ) plot(movingaverage_mid, color=color.orange, linewidth=2) plot(movingaverage_slow, color=color.purple, linewidth=2)