Stochastic + RSI, doppelte Strategie

Schriftsteller:ChaoZhang, Datum: 2022-05-25 16:12:14
Tags:STOCHRSI

Diese Strategie kombiniert die klassische RSI-Strategie, wenn der RSI über 70 steigt zu verkaufen (oder wenn er unter 30 fällt zu kaufen), mit der klassischen Stochastic Slow-Strategie, wenn der Stochastic-Oszillator den Wert von 80 überschreitet (und wenn dieser Wert unter 20 fällt zu kaufen).

Diese einfache Strategie wird nur ausgelöst, wenn sowohl der RSI als auch der Stochastic zusammen in einem Überkauf- oder Überverkaufszustand sind.

Diese Strategie sollte übrigens nicht mit dem Stochastischen RSI verwechselt werden, der nur den RSI misst.

Alle Geschäfte sind mit einem hohen Risiko verbunden; bisherige Ergebnisse sind nicht unbedingt ein Hinweis auf zukünftige Ergebnisse.

Zurückprüfung

img


/*backtest
start: 2022-04-24 00:00:00
end: 2022-05-23 23:59:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Stochastic + RSI, Double Strategy (by ChartArt)", shorttitle="CA_-_RSI_Stoch_Strat", overlay=true)

// ChartArt's Stochastic Slow + Relative Strength Index, Double Strategy
//
// Version 1.0
// Idea by ChartArt on October 23, 2015.
//
// This strategy combines the classic RSI
// strategy to sell when the RSI increases
// over 70 (or to buy when it falls below 30),
// with the classic Stochastic Slow strategy
// to sell when the Stochastic oscillator
// exceeds the value of 80 (and to buy when
// this value is below 20).
//
// This simple strategy only triggers when
// both the RSI and the Stochastic are together
// in overbought or oversold conditions.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/


///////////// Stochastic Slow
Stochlength = input(14, minval=1, title="lookback length of Stochastic")
StochOverBought = input(80, title="Stochastic overbought condition")
StochOverSold = input(20, title="Stochastic oversold condition")
smoothK = input(3, title="smoothing of Stochastic %K ")
smoothD = input(3, title="moving average of Stochastic %K")
k = sma(stoch(close, high, low, Stochlength), smoothK)
d = sma(k, smoothD)

 
///////////// RSI 
RSIlength = input( 14, minval=1 , title="lookback length of RSI")
RSIOverBought = input( 70  , title="RSI overbought condition")
RSIOverSold = input( 30  , title="RSI oversold condition")
RSIprice = close
vrsi = rsi(RSIprice, RSIlength)


///////////// Double strategy: RSI strategy + Stochastic strategy

if (not na(k) and not na(d))
    if (crossover(k,d) and k < StochOverSold)
        if (not na(vrsi)) and (crossover(vrsi, RSIOverSold))
            strategy.entry("LONG", strategy.long, comment="StochLE + RsiLE")
 
 
if (crossunder(k,d) and k > StochOverBought)
    if (crossunder(vrsi, RSIOverBought))
        strategy.entry("SHORT", strategy.short, comment="StochSE + RsiSE")
 
 
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Verwandt

Mehr