Strategi mengikut arah aliran berdasarkan RSI dan purata bergerak


Tarikh penciptaan: 2023-12-13 17:50:34 Akhirnya diubah suai: 2023-12-13 17:50:34
Salin: 1 Bilangan klik: 825
1
fokus pada
1621
Pengikut

Strategi mengikut arah aliran berdasarkan RSI dan purata bergerak

Gambaran keseluruhan

Strategi ini digunakan untuk menentukan masa untuk membeli dan menjual dengan mengira RSI dan purata bergerak perlahan. Apabila RSI naik 5 mata, dan lebih rendah daripada 70, dan lebih tinggi daripada purata bergerak 50 hari pada purata bergerak 9 hari, dan lebih rendah daripada purata bergerak 9 hari di bawah purata bergerak 50 hari.

Prinsip Strategi

Strategi ini menggunakan gabungan RSI dan purata bergerak. RSI boleh menunjukkan sama ada saham atau mata wang digital terlalu tinggi atau terlalu rendah. Apabila RSI di bawah 30 dianggap sebagai oversold, dan apabila lebih tinggi daripada 70 dianggap sebagai overbought.

Rata-rata bergerak digunakan secara meluas untuk menentukan arah trend. Rata-rata bergerak cepat dapat menangkap perubahan harga lebih cepat, sedangkan rata-rata bergerak perlahan dapat menyaring penembusan palsu. Apabila rata-rata bergerak bergerak bergerak perlahan di atas rata-rata bergerak cepat, ia menandakan permulaan trend ke atas; sebaliknya, penembusan ke bawah menandakan trend ke bawah.

Analisis kelebihan

Kelebihan utama strategi ini adalah untuk menilai kawasan oversold melalui RSI, mengelakkan pembelian tinggi; dan menggunakan penapis purata bergerak yang cepat dan perlahan untuk memecahkan palsu, mengunci arah trend, untuk mendapatkan kadar keuntungan yang lebih tinggi.

Pada masa yang sama, strategi memasukkan syarat RSI meningkat 5 mata berturut-turut, untuk mengelakkan lebih banyak pembelian yang tidak perlu di kawasan overbought. Di samping itu, strategi menggunakan beberapa cara perdagangan kedudukan, yang dapat mengurangkan risiko kerugian dalam perdagangan tunggal.

Risiko dan pencegahan

Risiko terbesar dalam strategi ini adalah bahawa kedua-dua indikator RSI dan purata bergerak boleh mengalami kemunduran. Apabila harga berubah secara drastik, isyarat mereka mungkin terlewat, menyebabkan risiko membeli tinggi atau menjual rendah.

Untuk mengelakkan risiko ini, strategi ini memasukkan purata bergerak cepat, menggunakan ciri-ciri yang lebih cepat bertindak balas kepada perubahan harga untuk mengurangkan kemungkinan ketinggalan. Selain itu, perdagangan kedudukan sebahagian juga dapat mengurangkan kerugian perdagangan tunggal.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Uji parameter RSI untuk tempoh yang berbeza untuk mencari kombinasi parameter yang optimum

  2. Uji lebih banyak kombinasi rata-rata bergerak perlahan untuk penapisan yang lebih baik

  3. Mengoptimumkan saiz kedudukan, menguji parameter kedudukan yang berbeza

  4. Meningkatkan syarat-syarat stop-loss untuk mengunci keuntungan

ringkaskan

Strategi ini sangat sesuai untuk perdagangan trend secara keseluruhan. Mengelakkan kawasan oversold melalui indikator RSI, dan menilai arah trend dan rintangan sokongan penting dengan menggunakan purata bergerak perlahan.

Kod sumber strategi
/*backtest
start: 2023-11-12 00:00:00
end: 2023-12-12 00:00:00
period: 1h
basePeriod: 15m
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("RSI with Slow and Fast MA Crossing Strategy (by Coinrule)",
         overlay=true,
         initial_capital=10000,
         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)