Strategi Purata Pergerakan MA Pergerakan Relatif Benar


Tarikh penciptaan: 2024-01-30 16:04:19 Akhirnya diubah suai: 2024-01-30 16:04:19
Salin: 0 Bilangan klik: 698
1
fokus pada
1617
Pengikut

Strategi Purata Pergerakan MA Pergerakan Relatif Benar

Gambaran keseluruhan

TRMMA (true relative movement moving average) adalah strategi trend-following yang menggabungkan indeks RSI yang agak kuat (RSI) dan indeks TSI yang kuat (TSI). Ia menggunakan RSI dan TSI sebagai isyarat untuk membeli dan menjual, dan membantu untuk mengoptimumkan strategi dengan purata bergerak.

Prinsip Strategi

Strategi ini terdiri daripada beberapa bahagian utama:

  1. Pengiraan TSI Dengan menguraikan nilai rata indeks untuk kadar perubahan harga dengan kelancaran dua indeks, kemudian membahagikan nilai rata indeks dengan nilai mutlak kadar perubahan harga, anda mendapat penunjuk TSI. Antara yang lama adalah 25 hari, jangka pendek adalah 5 hari, dan garis isyarat adalah 14 hari.

  2. Pengiraan RSI Penunjuk RSI panjang 5 dengan harga penutupan sebagai input harga.

  3. Penghakiman isyarat Apabila TSI naik melintasi garis isyaratnya dan RSI naik melintasi 50, ia adalah isyarat beli. Apabila TSI turun melintasi garis isyaratnya dan RSI turun melintasi 50, ia adalah isyarat jual.

  4. Warna K Berdasarkan keputusan isyarat, garisan K diberi warna, keputusan tambahan.

  5. Parameter strategi Tetapkan parameter seperti nisbah kedudukan dan dana.

Analisis kelebihan

Strategi ini menggabungkan kedua-dua penunjuk TSI dan RSI, yang dapat menilai dengan berkesan trend pasaran dan keadaan overbought dan oversold, untuk menghasilkan isyarat perdagangan. Ia dapat menyaring lebih banyak isyarat palsu daripada menggunakan TSI atau RSI sahaja. Selain itu, strategi ini menggunakan tetapan parameter TSI dan RSI yang lebih radikal daripada parameter lalai, yang dapat memperoleh isyarat perdagangan yang lebih awal dan berkualiti.

Analisis risiko

Strategi ini mempunyai risiko utama:

  1. Risiko pengoptimuman parameter. Dalam pasaran yang berbeza, dalam pelbagai jenis, dalam tempoh yang berbeza, parameter optimum TSI dan RSI mungkin berbeza, dan perlu dioptimumkan untuk keadaan tertentu.

  2. Risiko trend reversal. Strategi itu sendiri memberi tumpuan kepada trend, strategi ini akan menghadapi kerugian yang lebih besar jika berlaku kejadian yang tidak dijangka yang menyebabkan penyesuaian jangka pendek atau pembalikan trend jangka menengah.

  3. Risiko kekerapan isyarat. Berbanding parameter lalai, strategi ini menggunakan tetapan parameter yang lebih radikal, yang mungkin menghasilkan isyarat perdagangan yang lebih kerap, yang membawa kepada kos perdagangan yang lebih tinggi dan kesukaran untuk dilaksanakan.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Ia juga boleh digunakan untuk menyaring lebih jauh isyarat perdagangan, seperti pergerakan rata-rata dan lain-lain.

  2. Uji kombinasi optimum parameter TSI dan RSI untuk pasaran dan varieti yang berbeza untuk mencari tetapan parameter terbaik.

  3. Tambah strategi hentikan kerugian untuk mengawal risiko kerugian tunggal.

  4. Mengoptimumkan pengurusan kedudukan, meningkatkan kedudukan apabila trend kuat dan mengurangkan kedudukan apabila trend lemah.

ringkaskan

Strategi TRMMA digabungkan dengan TSI dan RSI untuk menentukan masa membeli dan menjual, dan mempunyai keupayaan yang kuat untuk menangkap trend. Ia dapat menyaring isyarat palsu dengan berkesan berbanding dengan hanya menggunakan TSI atau RSI. Ia dapat meningkatkan kestabilan strategi melalui pengoptimuman parameter, strategi stop loss, dan pengurusan kedudukan.

Kod sumber strategi
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// "True relative Movement" or "TRM" for short is a system that combines my two favorite indicators: RSI and TSI. I strived to put together an indicator that combined the best of both 
// in order to help discretionary traders predict market direction, weakness and strength. As with most technical indicators there are "Buy and sell" signals. Similiar to Elder Impulse system, 
///TRM paints bars 3 different colors to display 3 different conditions: Blue for "Buy", Pink for "Sell", and gray for "Take profit/Hold". When the bars turn blue, that means all conditions
/// have been met. When they turn pink, no conditions have been met. When they are gray, only one condition has been met. The system is simple, yet effective. A buy signal is prodcued when 
/// TSI is above the signal line, and RSI is above 50, and vice versa for sell signals. I have modified the default parameters for TSI and RSI for more "aggressive" entries and exits. I may later on
/// name this condition "Fast-TRM" and "Slow-TRM" for when default settings for TSI and RSI are applies, as this is a very robust system as well. 

///******ES 1HR, 15MIN/5MIN SYSTEM***** Go long, when all time frame on a buy signal and vice versa. Take profit when the 5 min chart flips to buy or sell depending on what side of the trade you are on. Close or flip
//// long/short when time all time frames flip to Buy/Hold if short and Sell/Hold if long. Use 20EMA for additional confirmation. 

//@version=4
strategy("TKP-TRM Strategy", overlay=true)
Note = input( 0, title = "TSI standard values are 25, 13, 13, and RSI is 14. Can change the default values to these for 'Slow TRM'")
long = input(title="TSI-Long Length", type=input.integer, defval=25)
short = input(title="TSI-Short Length", type=input.integer, defval=5)
signal = input(title="TSI-Signal Length", type=input.integer, defval=14)
price = close
double_smooth(src, long, short) =>
    fist_smooth = ema(src, long)
    ema(fist_smooth, short)
pc = change(price)
double_smoothed_pc = double_smooth(pc, long, short)
double_smoothed_abs_pc = double_smooth(abs(pc), long, short)
tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
TSI_Signal_Line = (ema(tsi_value, signal))


/////////////////////////////RSI////////////////////////////////////////////////

src = close, len = input(5, minval=1, title="RSILength")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsiBuyfilterlevel = input(50, minval = 1, title = "RSI cross above Buy Level")
rsiSellfilterlevel = input(50, minval = 1, title = "RSI cross below Sell Level")

////////////////////////////Bar Coloring//////////////////////////////////////////////////////////

TRM_Buy = ((tsi_value > TSI_Signal_Line) and (rsi > rsiBuyfilterlevel))
TRM_Sell = ( (tsi_value < TSI_Signal_Line) and (rsi <rsiSellfilterlevel))
TRM_Color = TRM_Buy? #3BB3E4 : TRM_Sell? #FF006E : #b2b5be
barcolor(TRM_Color)


///////////////////////////Strategy Paramters////////////////////////////////////////

if (TRM_Buy)
    strategy.entry("Long", strategy.long, comment="Long")

if (TRM_Sell)
    strategy.close("Long", comment="Sell")