Strategi ini menggabungkan crossover purata bergerak berganda dan penunjuk RSI untuk mengenal pasti arah trend dan situasi overbought / oversold. Ia pergi lama apabila syarat membeli dipenuhi dan menutup kedudukan apabila syarat jual dicetuskan. Matlamatnya adalah untuk menggunakan crossover purata bergerak untuk menentukan arah trend sambil menggunakan penunjuk RSI untuk mengelakkan membeli secara salah di puncak dan menjual di bawah, dengan itu menjana keuntungan yang lebih baik.
Apabila purata bergerak 9 tempoh yang cepat melintasi di atas purata bergerak 50 tempoh yang perlahan, ia menandakan trend menaik dalam jangka masa yang lebih pendek bertindih dengan trend menaik dalam jangka masa yang lebih lama, yang merupakan isyarat bullish biasa. Sementara itu, jika RSI lebih besar daripada tempoh sebelumnya sebanyak 5 mata dan kurang dari 70, ia bermakna aset itu mendekati tetapi belum berada di wilayah yang terlalu banyak dibeli, menjadikannya waktu yang baik untuk pergi lama.
Apabila purata bergerak 9 tempoh yang cepat melintasi di bawah purata bergerak 50 tempoh yang perlahan, ia menandakan permulaan pasaran menurun dan kedudukan panjang yang sedia ada harus ditutup.
Strategi ini menggunakan crossover purata bergerak berganda untuk menentukan arah dan RSI untuk mengelakkan mengejar atas dan bawah. Ia boleh dengan berkesan menunggang trend jangka menengah hingga panjang untuk keuntungan yang mantap. Tetapi sifat yang tertinggal dari isyarat crossover dan penyesuaian parameter RSI harus diperhatikan. Juga perlu menghubungkan harga dengan jumlah. Dengan ujian dan pengoptimuman berterusan, strategi ini menunjukkan janji untuk hasil yang lebih baik.
/*backtest start: 2022-11-14 00:00:00 end: 2023-11-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/ // © joshuajcoop01 //@version=5 strategy("Bitpanda Coinrule Template", 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, 2020, 1, 1, 0, 0) notInTrade = strategy.position_size <= 0 // RSI length = input(14) vrsi = ta.rsi(close, length) // Moving Averages for Buy Condition buyFastEMA = ta.ema(close, 9) buySlowEMA = ta.ema(close, 50) buyCondition1 = ta.crossover(buyFastEMA, buySlowEMA) increase = 5 if ((vrsi > vrsi[1]+increase) and buyCondition1 and vrsi < 70 and timePeriod) strategy.entry("Long", strategy.long) // Moving Averages for Sell Condition sellFastEMA = ta.ema(close, 9) sellSlowEMA = ta.ema(close, 50) plot(request.security(syminfo.tickerid, "60", sellFastEMA), color = color.blue) plot(request.security(syminfo.tickerid, "60", sellSlowEMA), color = color.green) condition = ta.crossover(sellSlowEMA, sellFastEMA) //sellCondition1 = request.security(syminfo.tickerid, "60", condition) strategy.close('Long', when = condition and timePeriod)