Strategi ini bertujuan untuk menerapkan strategi perdagangan scalper koin auto buy-in and hold berdasarkan indikator teknis Stochastic RSI dan EMA. Ini dirancang untuk lilin 5 menit, dioptimalkan untuk BTC. Tujuannya adalah untuk menahan koin sebanyak mungkin selama downtrends sampingan atau tidak signifikan.
Strategi ini menggunakan indikator RSI untuk menentukan tingkat overbought dan oversold, dikombinasikan dengan hubungan antara nilai K dan D dari Stochastic RSI untuk menghasilkan sinyal beli dan jual.
Ini akan memicu sinyal beli ketika garis Stochastic RSI K berada di bawah 20, dianggap oversold, dan K berada di atas D. Setelah itu, akan menentukan apakah akan menjual berdasarkan tiga kondisi: 1) harga naik lebih dari 1% diikuti oleh pembalikan EMA; 2) garis Stochastic RSI K di bawah D; 3) harga stop loss mencapai 98,5% dari harga masuk.
Selain itu, penurunan EMA jangka pendek setelah tren naik juga akan dianggap sebagai sinyal jual.
Strategi ini mengintegrasikan kekuatan dari Stochastic RSI, EMA dan indikator lainnya, menggunakan metode yang relatif kuat untuk menentukan waktu masuk dan keluar. Perbaikan lebih lanjut pada profitabilitas dan stabilitas dapat dicapai melalui optimasi parameter dan manajemen risiko. Secara keseluruhan logika strategi yang sehat dan layak diverifikasi dan dioptimalkan dalam perdagangan langsung.
/*backtest start: 2023-09-30 00:00:00 end: 2023-10-30 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="Stochastic RSI W Auto Buy Scalper Scirpt III ", shorttitle="Stoch RSI_III", format=format.price, precision=2) smoothK = input.int(3, "K", minval=1) smoothD = input.int(3, "D", minval=1) lengthRSI = input.int(14, "RSI Length", minval=1) lengthStoch = input.int(14, "Stochastic Length", minval=1) src = input(close, title="RSI Source") rsi1 = ta.rsi(src, lengthRSI) k = ta.sma(ta.stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK) d = ta.sma(k, smoothD) plot(k, "K", color=#2962FF) plot(d, "D", color=#FF6D00) h0 = hline(80, "Upper Band", color=#787B86) hline(50, "Middle Band", color=color.new(#787B86, 50)) h1 = hline(20, "Lower Band", color=#787B86) longStopLoss = strategy.opentrades.entry_price(0)* (.985) stochDropping = ta.falling(k,2) shortSma = ta.sma(hlc3,12) shorterSma = ta.sma(hlc3,3) plot(shortSma[3]) shortSmaFlip = (ta.change(shortSma,3)>0) and ta.falling(hlc3,1) shorterSmaFlip = (ta.change(shorterSma,2)>0) and ta.falling(hlc3,1) messageSellText ='"type": "sell", "symbol": "BTCUSD", "marketPosition": "{{strategy.market_position}}"' messageBuyText ='"type": "buy", "symbol": "BTCUSD", "marketPosition": {{strategy.market_position}}"' fill(h0, h1, color=color.rgb(33, 150, 243, 90), title="Background") strategy.entry("Tech", strategy.long, when=(strategy.position_size <= 0 and k<17 and k>d),alert_message=messageBuyText) //original: strategy.close("TL", when=(strategy.position_size >= 0 and (k>90 and k<d))) takeProfit = hlc3 > strategy.opentrades.entry_price(0)*1.01 //longStopLoss = strategy.opentrades.entry_price(0)* (.995) strategy.close("Tech", when=(strategy.position_size >= 0 and (k>90 and k<d and stochDropping)) or close<longStopLoss, comment="rsi or Stop sell",alert_message=messageSellText) //strategy.close("Tech", when=(strategy.position_size >= 0 and close<longStopLoss), comment="stopLoss sell",alert_message=messageSellText) strategy.close("Tech", when=(shortSmaFlip and k>20 and takeProfit),comment="Sma after profit",alert_message=messageSellText)