Strategi ini menggunakan sistem purata bergerak berganda dan indeks kekuatan relatif, digabungkan dengan turun naik sejarah saham, untuk mengotomatiskan isyarat beli dan jual untuk perdagangan saham. Kelebihannya adalah bahawa ia menggabungkan kedua-dua teknik jangka panjang dan jangka pendek untuk mengawal risiko dengan berkesan.
Strategi ini memanfaatkan purata bergerak 150 minggu dan purata bergerak pantas 50 hari untuk membentuk sistem MA berganda. Ia juga menggunakan MA ultra pantas 20 hari. Apabila harga melintasi di atas MA 150 minggu, ia menandakan permulaan trend menaik. Apabila harga melintasi di bawah MA 50 hari, ia menandakan trend menurun. Ini membolehkan kita membeli di jalan ke atas dan menjual di jalan ke bawah.
Di samping itu, strategi ini juga menggunakan harga tertinggi tahunan berdasarkan indeks turun naik dan kekuatan relatif untuk menentukan titik masuk tertentu.
Sistem MA berganda dapat dengan berkesan mengenal pasti perubahan trend untuk mengejar naik dan berhenti ke bawah.
Pengukuran turun naik dan RSI memastikan kita tidak mendapat whipsawed di pasaran sampingan.
MA cepat 20 hari membolehkan stop loss yang lebih cepat.
Terdapat beberapa kelewatan, tidak dapat merealisasikan stop loss dengan cepat.
Tiada stop loss ditetapkan, boleh membawa kepada kerugian besar.
Kekurangan pengoptimuman parameter, parameter ditetapkan agak sewenang-wenang.
Untuk mengurangkan risiko, stop loss boleh ditambahkan, atau menggunakan kelipatan ATR sebagai peratusan stop loss.
Ringkasnya, ini adalah strategi pelaburan saham yang agak konservatif. Menggunakan sistem MA berganda untuk mengukur trend keseluruhan, digabungkan dengan langkah-langkah turun naik dan kekuatan untuk kemasukan masa, ia dapat menyaring pecah palsu dengan berkesan. MA pantas juga membolehkan keluar dengan cepat. Walau bagaimanapun, strategi ini boleh ditingkatkan lagi dengan menambah stop loss, pengoptimuman parameter dll. Secara keseluruhan ia sesuai untuk pelabur saham jangka panjang.
/*backtest start: 2023-12-12 00:00:00 end: 2023-12-20 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //Relative Strength strategy("Stan my man", overlay=true) comparativeTickerId = input("BTC_USDT:swap", title="Comparative Symbol") l = input(50, type=input.integer, minval=1, title="Period") baseSymbol = security(syminfo.tickerid, timeframe.period, close) comparativeSymbol = security(comparativeTickerId, timeframe.period, close) hline(0, color=color.black, linestyle=hline.style_dotted) res = baseSymbol / baseSymbol[l] /(comparativeSymbol / comparativeSymbol[l]) - 1 plot(res, title="RS", color=#1155CC) //volume ma vol1 = sma(volume,20) // 30 week ma ema1 = ema(close, 150) //consolidation h1 = highest(high[1],365) fastPeriod = input(title="Fast MA", type=input.integer, defval=50) slowPeriod = input(title="Slow MA", type=input.integer, defval=150) fastestperiod = input(title="Fastest MA", type=input.integer, defval=20) fastEMA = ema(close, fastPeriod) slowEMA = ema(close, slowPeriod) fastestEMA = ema(close, fastestperiod) monitorStrategy = close < close[20] // trade conditions buytradecondition1 = close >ema1 and res>0 and volume> 1.5*vol1 and close > h1 buytradecondition2 = close > fastEMA and volume> 1.5* vol1 selltradecondition1 = close< 0.95 * fastEMA selltradecondition2 = close< 0.90 * open if (buytradecondition1) strategy.entry("long",strategy.long,alert_message ="Seems ready to Buy") alert("Buy Alert Price (" + tostring(close) + ") crossed over Slow moving average",alert.freq_all) if (buytradecondition2) strategy.entry("long",strategy.long,alert_message ="Seems ready to Buy") alert("Buy Alert Price (" + tostring(close) + ") crossed over fast moving average",alert.freq_all) if (selltradecondition1) strategy.close("long",alert_message ="Seems ready to Sell") alert("Sell Alert Price (" + tostring(close) + ") crossed down fast moving average",alert.freq_all) if (selltradecondition2) strategy.close("long",alert_message ="Seems ready to Sell") alert("Sell Alert Price (" + tostring(close) + ") crossed down 10% below open price ",alert.freq_all) //alertcondition(buytradecondition1,title ="BuySignal", message ="Price Crossed Slow Moving EMA ") plot(fastEMA, color=color.navy) plot(slowEMA, color=color.fuchsia) plot(fastestEMA, color=color.green)