Strategi ini menggabungkan penggunaan neraca terdepan dan indikator relatif kuat (RSI) untuk menilai arah tren, dan masuk saat tren dimulai. Ketika tiga segmen garis neraca terdepan membentuk kombinasi yang sesuai dan menggabungkan sinyal RSI, sinyal perdagangan dihasilkan.
Secara khusus, strategi ini menggabungkan penilaian tren dari tabel keseimbangan pertama dan penilaian overbought dan oversold dari RSI. Ketika tabel keseimbangan pertama menunjukkan pola tiga baris yang menunjukkan tren dimulai, dan RSI juga menunjukkan tidak ada overbought dan oversold, sinyal masuk dihasilkan.
Risiko dapat dikelola dengan cara optimalisasi parameter, optimalisasi strategi stop loss, dan pemendekan periode kepemilikan yang tepat.
Strategi ini menggabungkan tabel keseimbangan pertama dan indikator RSI untuk penilaian tren dan perdagangan. Keuntungan adalah sinyal sederhana dan intuitif, ROI tinggi; Kelemahannya adalah adanya risiko keterlambatan dan penarikan.
/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
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=5
strategy("Ichimoku Cloud with RSI (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)
showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2022, 6, 1, 0, 0)
// RSI inputs and calculations
lengthRSI = 14
RSI = ta.rsi(close, lengthRSI)
//Inputs
ts_bars = input.int(9, minval=1, title="Tenkan-Sen Bars")
ks_bars = input.int(26, minval=1, title="Kijun-Sen Bars")
ssb_bars = input.int(52, minval=1, title="Senkou-Span B Bars")
cs_offset = input.int(26, minval=1, title="Chikou-Span Offset")
ss_offset = input.int(26, minval=1, title="Senkou-Span Offset")
long_entry = input(true, title="Long Entry")
short_entry = input(true, title="Short Entry")
middle(len) => math.avg(ta.lowest(len), ta.highest(len))
// Components of Ichimoku Cloud
tenkan = middle(ts_bars)
kijun = middle(ks_bars)
senkouA = math.avg(tenkan, kijun)
senkouB = middle(ssb_bars)
// Plot Ichimoku Cloud
plot(tenkan, color=#0496ff, title="Tenkan-Sen")
plot(kijun, color=#991515, title="Kijun-Sen")
plot(close, offset=-cs_offset+1, color=#459915, title="Chikou-Span")
sa=plot(senkouA, offset=ss_offset-1, color=color.green, title="Senkou-Span A")
sb=plot(senkouB, offset=ss_offset-1, color=color.red, title="Senkou-Span B")
fill(sa, sb, color = senkouA > senkouB ? color.green : color.red, title="Cloud color")
ss_high = math.max(senkouA[ss_offset-1], senkouB[ss_offset-1])
ss_low = math.min(senkouA[ss_offset-1], senkouB[ss_offset-1])
// Entry/Exit Conditions
tk_cross_bull = tenkan > kijun
tk_cross_bear = tenkan < kijun
cs_cross_bull = ta.mom(close, cs_offset-1) > 0
cs_cross_bear = ta.mom(close, cs_offset-1) < 0
price_above_kumo = close > ss_high
price_below_kumo = close < ss_low
bullish = tk_cross_bull and cs_cross_bull and price_above_kumo
bearish = tk_cross_bear and cs_cross_bear and price_below_kumo
strategy.entry("Long", strategy.long, when=bullish and long_entry and RSI < 50 and timePeriod)
strategy.close("Long", when=bearish and not short_entry)
strategy.entry("Short", strategy.short, when=bearish and short_entry and RSI > 50 and timePeriod)
strategy.close("Short", when=bullish and not long_entry)