Ini adalah strategi perdagangan kuantitatif multi-indikator yang menggabungkan Bollinger Bands, Ichimoku Cloud, dan level Support/Resistance. Strategi ini mengidentifikasi peluang perdagangan potensial dengan menganalisis volatilitas pasar, kekuatan tren, dan tingkat harga utama.
Strategi ini menggunakan tiga komponen indikator teknis utama: Bollinger Bands untuk mengukur volatilitas pasar dan kondisi overbought / oversold; Ichimoku Cloud untuk mengevaluasi arah dan kekuatan tren; Tingkat Dukungan / Resistensi untuk mengidentifikasi tingkat harga utama. Kombinasi dari beberapa indikator memberikan perspektif pasar yang lebih komprehensif.
Sinyal perdagangan dihasilkan berdasarkan kondisi berikut: Sinyal panjang dipicu ketika harga pecah di atas Bollinger Band atas, posisi di atas Ichimoku Cloud, dan pecah di atas level tertinggi sebelumnya; Sinyal pendek dipicu ketika harga pecah di bawah Bollinger Band bawah, posisi di bawah Ichimoku Cloud, dan pecah di bawah level terendah sebelumnya. Strategi ini mencakup target keuntungan berbasis persentase dan stop loss untuk pengendalian risiko.
Ini adalah strategi perdagangan kuantitatif yang secara komprehensif memanfaatkan beberapa indikator teknis, menangkap peluang perdagangan melalui trend breakout dan beberapa konfirmasi sinyal. Kekuatan strategi terletak pada keandalan sinyal yang tinggi dan manajemen risiko yang kuat, tetapi perhatian harus diberikan pada masalah breakout palsu dan optimasi parameter. Melalui optimalisasi dan manajemen risiko yang berkelanjutan, strategi ini memiliki potensi untuk mempertahankan kinerja yang stabil di berbagai kondisi pasar.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("BB Ichimoku S/R Strategy", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // Input parameters bb_length = input.int(20, "Bollinger Bands Length") bb_mult = input.float(2.0, "Bollinger Bands Multiplier") ichimoku_tenkan = input.int(9, "Ichimoku Tenkan-sen") ichimoku_kijun = input.int(26, "Ichimoku Kijun-sen") ichimoku_senkou = input.int(52, "Ichimoku Senkou Span B") sr_lookback = input.int(14, "S/R Lookback Period") profit_target = input.float(1.5, "Profit Target (%)", minval=0.1, step=0.1) stop_loss = input.float(1.0, "Stop Loss (%)", minval=0.1, step=0.1) // Bollinger Bands [bb_middle, bb_upper, bb_lower] = ta.bb(close, bb_length, bb_mult) // Ichimoku Cloud tenkan = ta.ema(hl2, ichimoku_tenkan) kijun = ta.ema(hl2, ichimoku_kijun) spanA = (tenkan + kijun) / 2 spanB = ta.ema(hl2, ichimoku_senkou) // Support and Resistance highest_high = ta.highest(high, sr_lookback) lowest_low = ta.lowest(low, sr_lookback) // Entry conditions long_condition = close > bb_upper and close > spanA and close > spanB and close > highest_high[1] short_condition = close < bb_lower and close < spanA and close < spanB and close < lowest_low[1] // Execute trades if (long_condition) strategy.entry("Long", strategy.long) if (short_condition) strategy.entry("Short", strategy.short) // Set profit target and stop loss strategy.exit("TP/SL", "Long", profit=strategy.position_avg_price * (1 + profit_target / 100), loss=strategy.position_avg_price * (1 - stop_loss / 100)) strategy.exit("TP/SL", "Short", profit=strategy.position_avg_price * (1 - profit_target / 100), loss=strategy.position_avg_price * (1 + stop_loss / 100)) // Plot indicators plot(bb_middle, color=color.blue, title="BB Middle") plot(bb_upper, color=color.red, title="BB Upper") plot(bb_lower, color=color.red, title="BB Lower") plot(tenkan, color=color.orange, title="Tenkan-sen") plot(kijun, color=color.purple, title="Kijun-sen") spanA_plot = plot(spanA, color=color.green, title="Senkou Span A") spanB_plot = plot(spanB, color=color.red, title="Senkou Span B") plot(highest_high, color=color.green, title="Resistance") plot(lowest_low, color=color.red, title="Support") // Fill Ichimoku Cloud fill(spanA_plot, spanB_plot, color=spanA > spanB ? color.rgb(76, 175, 80, 90) : color.rgb(255, 82, 82, 90))