
Cette stratégie est basée sur le StochRSI. Cette stratégie utilise principalement le StochRSI pour juger de la situation de survente et de survente, en combinaison avec le RSI pour filtrer certains faux signaux, faire court lorsque le StochRSI affiche une zone de survente et faire plus lorsque la zone de survente est affichée, réaliser un profit.
Cette stratégie utilise principalement l’indicateur StochRSI pour déterminer les zones de survente du marché. L’indicateur StochRSI est composé de lignes K et D, où la ligne K reflète la position du RSI actuel dans la gamme de prix du RSI au cours de la période la plus récente. La ligne D est la moyenne mobile de la ligne K.
Plus précisément, la stratégie commence par calculer la valeur de l’indicateur RSI de longueur 14, puis applique l’indicateur StochRSI à l’indicateur RSI. La longueur de paramètre de l’indicateur StochRSI est de 14, la ligne de cycle de lissage K est de 3, et la ligne D est de 3. Lorsque la ligne K traverse la zone de survente définie par l’utilisateur (par défaut 1), faites plus; lorsque la ligne K traverse la zone de survente définie par l’utilisateur (par défaut 99), faites moins.
En outre, la stratégie a également des paramètres de stop loss et de stop. Le paramètre de stop loss est défini par défaut comme 10000; le stop est défini en fonction des paramètres comme un arrêt de trailing de la courbe, le nombre de points de trail par défaut est de 300 et le décalage est de 0.
Pour les risques ci-dessus, il est possible de définir des cycles de paramètres plus longs ou d’envisager de les utiliser en combinaison avec d’autres indicateurs pour filtrer les signaux, d’ajuster les paramètres d’achat et de vente excessive aux différents marchés et de tester différents paramètres de stop-loss.
Cette stratégie est basée sur le StochRSI pour déterminer les zones de survente et de survente. Comparé au seul RSI, le StochRSI, combiné à l’idée de KDJ, permet de déterminer plus précisément le point de basculement.
/*backtest
start: 2023-11-06 00:00:00
end: 2023-12-06 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version= 2
strategy("STOCHRSI JURE", overlay=false)
lengthrsi = input(10)
overSold = input( 1 )
overBought = input(99)
call_trail_stop = input(300)
call_trail_offset = input(0)
call_sl = input(10000)
price = ohlc4
vrsi = rsi(price, lengthrsi)
smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
src = input(close, title="RSI Source")
rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
plot( k, color=blue, linewidth=1, title="K")
plot( d, color=red, linewidth=1, title="D")
if (crossover(k, overSold) )
strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY")
strategy.exit("BUY EXIT", "BUY", trail_points=call_trail_stop, trail_offset=call_trail_offset, loss = call_sl)
if (crossunder(k, overBought) )
strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND", comment="SELL")
strategy.exit("SELL EXIT", "SELL", trail_points=call_trail_stop, trail_offset=call_trail_offset, loss = call_sl)
//if ( ( crossover(k,d)) and ( (vrsi<overSold) or crossover(vrsi,overSold) ) and year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil)
// strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", oca_type=strategy.oca.cancel, comment="BUY")
//else
// strategy.cancel(id="BUY")
//if ( ( crossunder(k,d) ) and ( (vrsi >overBought) or crossunder(vrsi,overBought) ) and year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil )
// strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND", oca_type=strategy.oca.cancel, comment="SELL")
//else
// strategy.cancel(id="SELL")