Sumber dimuat naik... memuat...

Strategi Pengesanan Trend G-Channel

Penulis:ChaoZhang, Tarikh: 2024-05-29 17:06:13
Tag:MATPSL

img

Ringkasan

Strategi Pengesanan Trend G-Channel adalah strategi perdagangan kuantitatif berdasarkan penunjuk G-Channel. Strategi ini mengira hujung atas dan bawah G-Channel dan menentukan trend pasaran semasa berdasarkan persilangan harga dan purata bergerak G-Channel, menghasilkan isyarat beli dan jual dengan sewajarnya.

Prinsip Strategi

  1. Mengira hujung atas dan bawah a dan b G-Channel, di mana a adalah harga tinggi sejarah dikurangkan perbezaan antara tempoh sebelumnya s a nilai dan tempoh semasa s nilai dibahagikan dengan panjang tempoh, dan b adalah harga rendah sejarah ditambah perbezaan antara tempoh sebelumnya s a nilai dan b nilai dibahagikan dengan panjang tempoh.
  2. Hitung purata bergerak G-Channel, iaitu (a + b) / 2.
  3. Tentukan keadaan persilangan antara harga dan nilai b. Jika harga melintasi di atas nilai b, ia dianggap sebagai trend menaik; jika harga melintasi di bawah nilai a, ia dianggap sebagai trend menurun.
  4. Dalam trend menaik, jika lilin sebelumnya adalah menaik dan lilin semasa menjadi menaik, isyarat beli dihasilkan; dalam trend menaik, jika lilin sebelumnya adalah menaik dan lilin semasa menjadi menaik, isyarat jual dihasilkan.
  5. Tetapkan syarat mengambil keuntungan dan menghentikan kerugian. Apabila memegang kedudukan panjang, harga mengambil keuntungan adalah harga beli dikalikan dengan (1 + mengambil keuntungan peratusan), dan harga kehilangan berhenti adalah harga beli dikalikan dengan (1 - stop loss peratusan); apabila memegang kedudukan pendek, harga mengambil keuntungan adalah harga jual dikalikan dengan (1 - mengambil keuntungan peratusan), dan harga kehilangan berhenti adalah harga jual dikalikan dengan (1 + stop loss peratusan).

Kelebihan Strategi

  1. Penunjuk G-Channel dapat menangkap trend pasaran dengan berkesan dan menjana isyarat beli dan jual berdasarkan persilangan harga dan purata bergerak G-Channel, menjadikannya mudah dan mudah digunakan.
  2. Tetapan mengambil keuntungan dan menghentikan kerugian dapat mengawal risiko dengan berkesan dan mengelakkan kerugian yang berlebihan dari satu perdagangan.
  3. Logik strategi adalah jelas dan mudah difahami dan dilaksanakan, menjadikannya sesuai untuk pemula dalam perdagangan kuantitatif untuk dipelajari dan digunakan.

Risiko Strategi

  1. Penunjuk G-Channel boleh menghasilkan lebih banyak isyarat palsu semasa turun naik pasaran, yang membawa kepada perdagangan yang kerap dan kos seluncur yang tinggi.
  2. Tetapan peratusan mengambil keuntungan dan berhenti kerugian perlu diselaraskan mengikut ciri pasaran dan keutamaan risiko peribadi, dan tetapan parameter yang tidak sesuai boleh membawa kepada pulangan strategi yang rendah.
  3. Strategi ini tidak mempertimbangkan ciri-ciri aset yang didagangkan, seperti penggantungan perdagangan, kenaikan dan penurunan had harga dalam strategi saham, yang memerlukan pengoptimuman lanjut.

Arahan Pengoptimuman Strategi

  1. Penunjuk teknikal lain, seperti ATR dan RSI, boleh diperkenalkan untuk menjalankan pengesahan sekunder isyarat yang dihasilkan oleh penunjuk G-Channel, meningkatkan kebolehpercayaan isyarat.
  2. Untuk peratusan keuntungan dan stop loss, pendekatan pelarasan dinamik boleh digunakan untuk menyesuaikan secara adaptif berdasarkan faktor-faktor seperti turun naik pasaran dan masa penahan, meningkatkan kebolehan penyesuaian strategi.
  3. Berdasarkan ciri-ciri aset yang didagangkan, modul kawalan risiko yang sesuai boleh ditambah. Sebagai contoh, untuk strategi saham, logik pengendalian boleh ditetapkan untuk situasi khas seperti penggantungan perdagangan dan kenaikan dan penurunan had harga.

Ringkasan

Strategi Pengesanan Trend G-Channel adalah strategi dagangan kuantitatif yang mudah berdasarkan penunjuk G-Channel yang menghasilkan isyarat beli dan jual dengan menangkap trend pasaran dan menetapkan keadaan mengambil keuntungan dan menghentikan kerugian untuk mengawal risiko. Logik strategi jelas dan mudah dilaksanakan, menjadikannya sesuai untuk pemula dalam perdagangan kuantitatif untuk dipelajari. Walau bagaimanapun, strategi ini mungkin menghasilkan lebih banyak isyarat palsu di pasaran yang berfluktuasi, dan peratusan mengambil keuntungan dan menghentikan kerugian perlu diselaraskan mengikut ciri pasaran. Selain itu, ia tidak mempertimbangkan ciri-ciri aset yang didagangkan. Pada masa akan datang, strategi dapat dioptimumkan dengan memperkenalkan penunjuk teknikal lain, menyesuaikan secara dinamik peratusan mengambil keuntungan dan menghentikan kerugian, dan menambah modul kawalan risiko berdasarkan ciri-ciri aset yang didagangkan untuk meningkatkan kestabilan dan keuntungan strategi.


//@version=5
// Full credit to AlexGrover: https://www.tradingview.com/script/fIvlS64B-G-Channels-Efficient-Calculation-Of-Upper-Lower-Extremities/
strategy("G-Channel Trend Detection Strategy", shorttitle="G-Trend", overlay=true)

// Input parameters
length = input.int(100, title="Length")
src = input(close, title="Source")
take_profit_percent = input.float(5.0, title="Take Profit (%)")
stop_loss_percent = input.float(2.0, title="Stop Loss (%)")
showcross = input.bool(true, title="Show Cross")

// Initialize variables
var float a = na
var float b = na

// Calculate a and b
a := math.max(src, nz(a[1])) - (nz(a[1]) - nz(b[1])) / length
b := math.min(src, nz(b[1])) + (nz(a[1]) - nz(b[1])) / length

// Calculate average
avg = (a + b) / 2

// Determine trend and color
crossup = ta.crossunder(b, close)
crossdn = ta.crossunder(a, close)
bullish = ta.barssince(crossdn) <= ta.barssince(crossup)
c = bullish ? color.lime : color.red

// Plotting
p1 = plot(avg, "Average", color=c, linewidth=1)
p2 = plot(close, "Close price", color=c, linewidth=1)
fill(p1, p2, c)

// Generate buy and sell signals
buy_signal = showcross and bullish and not bullish[1]
sell_signal = showcross and not bullish and bullish[1]

// Plot buy and sell signals on chart
plotshape(buy_signal ? avg : na, location=location.belowbar, style=shape.labeldown, color=color.new(color.lime, 0), size=size.tiny, text="Buy", textcolor=color.white, offset=-1)
plotshape(sell_signal ? avg : na, location=location.abovebar, style=shape.labelup, color=color.new(color.red, 0), size=size.tiny, text="Sell", textcolor=color.white, offset=-1)

// Alerts
alertcondition(buy_signal, title="Buy Signal", message="Buy Signal Detected")
alertcondition(sell_signal, title="Sell Signal", message="Sell Signal Detected")

// Calculate take profit and stop loss levels
take_profit_level = close * (1 + take_profit_percent / 100)
stop_loss_level = close * (1 - stop_loss_percent / 100)

// Strategy Entry and Exit
if (buy_signal)
    strategy.entry("Buy", strategy.long)

if (sell_signal)
    strategy.entry("Sell", strategy.short)

// Define the take profit and stop loss conditions for long positions
strategy.exit("Take Profit/Stop Loss", "Buy", limit=take_profit_level, stop=stop_loss_level)

// Define the take profit and stop loss conditions for short positions
strategy.exit("Take Profit/Stop Loss", "Sell", limit=close * (1 - take_profit_percent / 100), stop=close * (1 + stop_loss_percent / 100))


Berkaitan

Lebih lanjut