Super Trend Mengikut Strategi Berdasarkan Purata Bergerak

Penulis:ChaoZhang, Tarikh: 2024-02-05 11:10:41
Tag:

img

Ringkasan

Strategi ini adalah strategi trend berikut yang tipikal. Ia menggunakan pelbagai set purata bergerak dengan tempoh yang berbeza untuk menentukan trend pasaran. Ia memasuki pasaran apabila trend ditubuhkan dan keluar apabila trend jangka pendek berbalik.

Prinsip Strategi

Strategi ini menggunakan 4 kumpulan purata bergerak: garis 9 hari, 21 hari, 50 hari dan 200 hari.

Apabila purata bergerak jangka pendek melintasi jangka panjang ke atas, ia ditentukan bahawa pasaran memasuki aliran menaik. Apabila ia melintasi ke bawah, pasaran dilihat berada dalam aliran menurun.

Strategi ini mengambil MA 9 hari sebagai rujukan untuk memerhatikan keselarasan MA lain, dengan itu menilai arah trend keseluruhan.

Syarat kemasukan panjang: Tutup > MA 9 hari dan MA 9 hari > MA 21 hari dan MA 21 hari > MA 50 hari dan MA 50 hari > MA 200 hari.

Syarat kemasukan pendek: MA < 9 hari dan MA 9 hari < 21 hari MA dan MA 21 hari < 50 hari MA dan MA 50 hari < 200 hari MA.

Di sini, hubungan antara harga dekat dan MA 9 hari menentukan trend jangka pendek, sementara antara MA 9 hari dan 21 hari menilai trend jangka pendek, trend jangka menengah 21 hari dan 50 hari, trend jangka panjang 50 hari dan 200 hari. Hanya apabila hubungan semua empat pasangan MA sesuai, trend yang sah dapat ditubuhkan untuk menghasilkan isyarat perdagangan.

Syarat keluar: menutup harga melintasi di bawah MA 21 hari, meratakan semua kedudukan panjang; melintasi di atas MA 21 hari, meratakan semua kedudukan pendek.

Kelebihan Strategi

  1. Mengambil beberapa MA untuk menentukan trend boleh menapis bunyi pasaran dari pergerakan bukan arus perdana dan menangkap trend jangka sederhana hingga panjang.

  2. Syarat kemasukan yang ketat memerlukan penilaian yang sah dalam jangka masa yang berbeza, mengelakkan terperangkap oleh pembetulan jangka pendek.

  3. Stop loss yang tepat pada masanya membantu mengawal risiko dengan berkesan.

Risiko dan Penyelesaian

  1. Dalam pasaran jangka panjang, isyarat palsu yang berlebihan boleh berlaku dan meningkatkan risiko perdagangan. Ini boleh dielakkan dengan mengoptimumkan parameter dan menyesuaikan tempoh MA untuk menapis beberapa bunyi bising.

  2. Semasa trend ganas, persilangan MA sering berlaku. Faktor lain diperlukan kemudian untuk menentukan trend sebenar, misalnya menggabungkan penunjuk seperti RSI dan MACD untuk pengesahan, sekiranya pergerakan yang kuat terlepas.

Arahan pengoptimuman

  1. Pengoptimuman parameter. Uji kombinasi parameter yang berbeza untuk mengetahui yang optimum. Seperti menyesuaikan tempoh MA, menambah atau mengubah suai kriteria stop loss dan lain-lain

  2. Meningkatkan penapis kualiti. Sebagai contoh, periksa sama ada jumlah lonjakan pada kemasukan untuk mengelakkan momentum yang tidak mencukupi, atau memeriksa turun naik untuk mengelakkan turun naik.

  3. Memperkenalkan pengesahan daripada penunjuk teknikal untuk mengelakkan isyarat yang salah di tengah-tengah pergerakan pasaran yang ganas.

Ringkasan

Secara keseluruhan, ini adalah strategi trend berikut yang tipikal dan praktikal. Ia menggunakan pelbagai MA untuk menentukan trend, mempunyai peraturan kemasukan yang ketat untuk mengunci trend jangka menengah hingga panjang. Bersama dengan stop loss yang tepat pada masanya, ia membantu mengawal risiko. Penambahbaikan lebih lanjut terhadap kestabilan dan keuntungan dapat dicapai melalui cara seperti pengoptimuman parameter dan menambah penunjuk pengesahan. Ia sesuai untuk pelabur yang lebih suka mengikuti trend untuk perdagangan jangka panjang.


/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 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/
// © shayak1

//@version=5
strategy('Super SR', overlay=true)

r = input.int(14,"rsi-length",1,100)
rsi = ta.rsi(close,r)

len1 = 9
len2 = 21
len3 = 50
len4 = 200

ema1 = ta.ema(close, len1)
ema2 = ta.ema(close, len2)
ema3 = ta.ema(close, len3)
ema4 = ta.ema(close, len4)

plot(ema1,color= color.green)
plot(ema2,color= color.yellow)
plot(ema3,color= color.orange)
plot(ema4,color= color.red)


// *** entries 
Long1 = close > ema1
Long2 = ema1 > ema2
Long3 = ema2 > ema3
Long4 = ema3 > ema4
buy_condition = Long1 and Long2 and Long3 and Long4 and strategy.position_size == 0

if (buy_condition and strategy.position_size <= 1)
    strategy.entry("B", strategy.long)

Short1 = close < ema1
Short2 = ema1< ema2
Short3 = ema2< ema3
Short4 = ema3< ema4
sell_condition = Short1 and Short2 and Short3 and Short4 and strategy.position_size == 0

//if (sell_condition)
//    strategy.entry("S", strategy.short)

// trailing SL
//Long_sl = min(strategy.position_avg_price * 0.95, strategy.pos


//EXIT CONDITIONS

exit_long = ta.crossunder(close, ema2)
exit_short = ta.crossover(close, ema2)

if(exit_long)
    strategy.close("B", "LE", qty_percent=100)
if(exit_short)
    strategy.close("S", "SE", qty_percent=100)

//==============================================================================
//INSERT SECTION
//This section is where users will be required to insert the indicators they
//would like to use for their NNFX Strategy.
//==============================================================================
//INSERT - CONFIRMATION INDICATOR 1
//==============================================================================


//==============================================================================
//INSERT - CONFIRMATION INDICATOR 2
//==============================================================================


//==============================================================================
//INSERT - VOLUME INDICATOR
//==============================================================================


//==============================================================================
//INSERT - BASELINE INDICATOR
//==============================================================================


//==============================================================================
//INSERT - EXIT INDICATOR
//==============================================================================


//==============================================================================
//INSERT - CONTINUATION TRADES INDICATOR
//==============================================================================


//==============================================================================
//COMPLETED SECTION
//This section has been optimised to work with the above indicators the user
//has inserted above. The user does not require to change any code below and
//is completed and optimised for the full NNFX strategy. Users may wish to 
//customise this section of code if they wish to alter the NNFX strategy.
//==============================================================================
//COMPLETE - BACKTEST DATE RANGE
//==============================================================================
// start_day = input.int(1,"start day",1,31)
// start_month = input.int(1,"start month",1,12)
// start_year = input.int(1,"start year",2010,2023)



//==============================================================================
//COMPLETE - CURRENCY CONVERSION
//==============================================================================


//==============================================================================
//COMPLETE - ATR MONEY MANAGEMENT
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - C1
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - C2
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Vol
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Bl
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Exit
//==============================================================================


//==============================================================================
//COMPLETE - CONTINUATION TRADES
//==============================================================================


//==============================================================================
//COMPLETE - ONE CANDLE RULE
//==============================================================================


//==============================================================================
//COMPLETE - BRIDGE TOO FAR
//==============================================================================


//==============================================================================
//COMPLETE - BASELINE AND ATR RULE
//==============================================================================


//==============================================================================
//COMPLETE - ENTRY CONDITIONS
//==============================================================================


//==============================================================================
//COMPLETE - ENTRY ORDERS
//==============================================================================


//==============================================================================
//COMPLETE - TAKE PROFIT AND STOP LOSS CONDITIONS
//==============================================================================


//==============================================================================
//COMPLETE - EXIT ORDERS
//==============================================================================


//==============================================================================
//COMPLETE - CLOSE ORDERS
//==============================================================================


//==============================================================================

Lebih lanjut