Cette stratégie calcule d'abord l'ADX et la SMA sur des délais plus longs pour identifier la direction et les changements de tendance.
L'ADX sur des délais plus longs évalue la force de la tendance.
L'AEM sur des délais plus longs juge la direction de la tendance.
L'indicateur de volatilité sur les délais inférieurs juge les conditions de surachat et de survente.
Lorsque l'ADX augmente, que la SMA augmente et que le RSI est suracheté sur une période plus courte, il est considéré que la tendance haussière se renforce.
Lorsque l'ADX augmente, que la SMA diminue et que le RSI est survendu sur une période plus courte, il est considéré que la tendance à la baisse se renforce.
Combine le jugement de tendance et le trading de renversement, peut saisir les opportunités de renversement dans les grandes tendances.
Utilise des indicateurs à travers les délais, améliore la fiabilité des signaux.
La stratégie RSI est simple à comprendre et à mettre en œuvre.
Le potentiel de faux signaux RSI, causant des pertes de transactions.
Le jugement de la tendance du cycle majeur peut être erroné, ce qui rend la stratégie inappropriée pour les conditions du marché.
Une fréquence de négociation potentiellement élevée, affectant la rentabilité en raison des coûts de transaction.
Testez plus de combinaisons de paramètres pour trouver la correspondance optimale entre les paramètres RSI et ADX, SMA.
Ajouter un mécanisme de stop loss pour contrôler les pertes d'une seule transaction.
Considérez l'indicateur de volatilité pour réduire la taille de la position lorsque la volatilité est faible.
Optimiser les prix d'entrée et de sortie spécifiques, par exemple en entrant à découvert après avoir franchi les barres précédentes.
Cette stratégie combine le jugement de tendance et les signaux d'inversion pour trouver des renversements locaux dans les principales tendances. Par rapport à l'utilisation uniquement du RSI, elle est plus fiable et évite d'être piégée.
/*backtest start: 2022-12-27 00:00:00 end: 2024-01-02 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("RSI scalping", overlay=true) CustSession = input(defval=true,title= "Custom Resolution / TF ? ",type=bool) SessionTF0 = input(title="Custom Resolution / TF", defval="180") adxlen = input(14, title="ADX Smoothing") dilen = input(14, title="DI Length") length = input(7, title= "RSI length") overSold = input( 28, title= "RSI oversold" ) overBought = input( 68, title= "RSI overbought" ) RSI = rsi(close, 7) res = CustSession ? SessionTF0 : period o = request.security(syminfo.tickerid, res, open) c = request.security(syminfo.tickerid, res, close) l = request.security(syminfo.tickerid, res, low) h = request.security(syminfo.tickerid, res, high) // ADX higher time frame dirmov(len) => up = change(h) down = -change(l) plusDM = na(up) ? na : (up > down and up > 0 ? up : 0) minusDM = na(down) ? na : (down > up and down > 0 ? down : 0) truer = request.security(syminfo.tickerid, res, tr) truerange = rma(truer, len) plus = fixnan(100 * rma(plusDM, len) / truerange) minus = fixnan(100 * rma(minusDM, len) / truerange) [plus, minus] adx(dilen, adxlen) => [plus, minus] = dirmov(dilen) sum = plus + minus adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen) sig = adx(dilen, adxlen) // SMA higher time frame len = input(20, minval=1, title="SMA HTF Length") smma = 0.0 smma := na(smma[1]) ? sma(c, len) : (smma[1] * (len - 1) + c) / len ADXrising = (sig > sig[1]) and (sig[1] > sig[2]) and (sig[2] > sig[3]) and (sig > 15) SMAdrop= (smma < smma[1]) and (smma[1] < smma[2]) and (smma[2] < smma[3]) SMArising = (smma > smma[1]) and (smma[1] > smma[2]) and (smma[2] > smma[3]) longCondition = crossover(RSI, overBought) and ADXrising and SMArising shortCondition = crossunder(RSI, overSold) and SMAdrop and ADXrising if (longCondition) strategy.entry("Long entry", strategy.long) if (shortCondition) strategy.entry("Short Entry", strategy.short)