Gem Forest One Minute Scalping Strategy adalah strategi perdagangan kuantitatif untuk perdagangan jangka pendek. Ini menggabungkan beberapa indikator untuk mengidentifikasi karakteristik osilasi pasar dalam jangka waktu 1 menit dan beralih antara posisi panjang dan pendek untuk scalping ultra-pendek.
Ketika harga berada di bawah band bawah, EMA cepat dan lambat melintasi emas terjadi, RSI cepat melintasi di atas RSI lambat, sinyal beli dihasilkan; Ketika harga berada di atas band atas, EMA cepat dan lambat melintasi mati terjadi, RSI cepat melintasi di bawah RSI lambat, sinyal jual dihasilkan. Setelah masuk, stop loss dan take profit digunakan untuk keluar.
Risiko ini dapat dikelola dengan mengoptimalkan parameter, menyesuaikan stop, membatasi perdagangan harian maksimum, memilih produk yang tepat dll.
Strategi ini sepenuhnya mempertimbangkan karakteristik perdagangan kuantitatif ultra-pendek. Pengaturan indikator yang wajar, beberapa konfirmasi dan kombinasi memastikan keandalan yang tinggi. Dengan kontrol risiko yang ketat, strategi ini memiliki potensi keuntungan yang cukup besar dan cocok untuk investor dengan daya komputasi yang cukup dan kualitas psikologis.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Gem Forest 1 Dakika Scalp", overlay=true) source = close atrlen = input.int(14, "ATR Period") mult = input.float(1, "ATR Multi", step=0.1) smoothing = input.string(title="ATR Smoothing", defval="WMA", options=["RMA", "SMA", "EMA", "WMA"]) ma_function(source, atrlen) => if smoothing == "RMA" ta.rma(source, atrlen) else if smoothing == "SMA" ta.sma(source, atrlen) else if smoothing == "EMA" ta.ema(source, atrlen) else ta.wma(source, atrlen) atr_slen = ma_function(ta.tr(true), atrlen) upper_band = atr_slen * mult + close lower_band = close - atr_slen * mult ShortEMAlen = input.int(21, "Fast EMA") LongEMAlen = input.int(65, "Slow EMA") shortSMA = ta.ema(close, ShortEMAlen) longSMA = ta.ema(close, LongEMAlen) RSILen1 = input.int(25, "Fast RSI Length") RSILen2 = input.int(100, "Slow RSI Length") rsi1 = ta.rsi(close, RSILen1) rsi2 = ta.rsi(close, RSILen2) atr = ta.atr(atrlen) RSILong = rsi1 > rsi2 RSIShort = rsi1 < rsi2 longCondition = open < lower_band shortCondition = open > upper_band GoldenLong = ta.crossover(shortSMA,longSMA) Goldenshort = ta.crossover(longSMA,shortSMA) plotshape(shortCondition, title="Sell Label", text="Sell", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.red, textcolor=color.white, transp=0) plotshape(longCondition, title="Buy Label", text="Buy", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.green, textcolor=color.white, transp=0) plotshape(Goldenshort, title="Golden Sell Label", text="Golden Crossover Short", location=location.abovebar, style=shape.labeldown, size=size.tiny, color=color.blue, textcolor=color.white, transp=0) plotshape(GoldenLong, title="Golden Buy Label", text="Golden Crossover Long", location=location.belowbar, style=shape.labelup, size=size.tiny, color=color.yellow, textcolor=color.white, transp=0) if (longCondition) stopLoss = low - atr * 2 takeProfit = high + atr * 5 strategy.entry("long", strategy.long, when = RSILong) if (shortCondition) stopLoss = high + atr * 2 takeProfit = low - atr * 5 strategy.entry("short", strategy.short, when = RSIShort) plot(upper_band) plot(lower_band) plot(shortSMA, color = color.red) plot(longSMA, color = color.yellow)