Imbangan Tekanan Strategi Dagangan Pecah Kebarangkalian Tinggi


Tarikh penciptaan: 2023-11-13 11:40:53 Akhirnya diubah suai: 2023-11-13 11:40:53
Salin: 2 Bilangan klik: 665
1
fokus pada
1617
Pengikut

Imbangan Tekanan Strategi Dagangan Pecah Kebarangkalian Tinggi

Gambaran keseluruhan

Strategi ini menggunakan pelbagai kombinasi indikator untuk menentukan arah trend dan masa perdagangan, menggunakan pendekatan keseimbangan tekanan untuk meningkatkan peluang perdagangan. Ia menggunakan tiga indikator MACD, PSAR dan EMA untuk membuat keputusan, digabungkan dengan stop loss untuk mencapai keuntungan yang cekap.

Prinsip Strategi

  1. Menggunakan EMA untuk mengira garis rata-rata, menentukan arah trend keseluruhan. Nilai EMA yang lebih besar mewakili kini dalam trend naik, nilai EMA yang lebih kecil mewakili kini dalam trend menurun.

  2. Menggunakan MACD untuk mengira perbezaan antara garis cepat dan lambat, apabila perbezaan lebih besar daripada 0 menandakan bahawa ia sedang dalam trend naik, dan apabila perbezaan kurang dari 0 menandakan bahawa ia sedang dalam trend menurun.

  3. Menggunakan PSAR untuk mengira titik perubahan berturut-turut, apabila nilai PSAR yang lebih besar mewakili kini dalam trend menurun, apabila nilai PSAR yang lebih kecil mewakili kini dalam trend naik.

  4. Gabungan ketiga-tiga penunjuk di atas, menilai kesesuaian trend. Apabila ketiga-tiga penunjuk menilai keputusan yang sama, mewakili trend yang lebih jelas, boleh melakukan pembelian atau penjualan operasi.

  5. Buka kedudukan mengikut syarat membeli dan menjual, dan tetapkan titik henti rugi, tutup kedudukan apabila mencapai syarat henti rugi atau henti rugi, dan dapatkan keuntungan.

  6. Peraturan operasi adalah seperti berikut:

    • Syarat beli: Tidak naik, MACD kurang daripada 0, harga penutupan lebih tinggi daripada EMA rata-rata
    • Syarat jual: Kecenderungan naik, MACD lebih besar daripada 0, harga penutupan lebih rendah daripada EMA
    • Syarat Hentikan Kerosakan: Harga menyentuh nilai PSAR seterusnya
    • Syarat penghentian: mencapai nisbah penghentian yang ditetapkan

Kelebihan Strategik

  1. Menggunakan pelbagai indikator untuk menilai trend, meningkatkan ketepatan penilaian.

  2. Menggunakan tekanan keseimbangan, membuka kedudukan apabila trend jelas, meningkatkan peluang keuntungan.

  3. Tetapkan titik henti kerugian, anda boleh mengehadkan kerugian dan mengunci keuntungan.

  4. Sistem peraturan perdagangan yang jelas, sesuai untuk perdagangan berprogrami.

  5. Ia boleh dioptimumkan dengan parameter, menyesuaikan untuk pelbagai jenis dan kitaran dagangan.

Risiko Strategik

  1. Mungkin terdapat kesilapan dalam penilaian trend, yang menyebabkan salah arah untuk membuka kedudukan.

  2. Ia juga boleh menyebabkan pasaran berubah-ubah dengan ketara dan mungkin memberi isyarat yang salah.

  3. Stop loss set terlalu besar dan tidak dapat dihentikan dalam masa yang tepat.

  4. Tetapan parameter yang tidak betul menyebabkan terlalu banyak dagangan atau tidak dapat membuka kedudukan tepat pada masanya.

  5. Tidak ada kecairan dalam jenis dagangan, tidak dapat menghentikan kerugian seperti yang dirancang.

  6. Risiko boleh dikurangkan dengan mengoptimumkan parameter, menyesuaikan titik berhenti kerugian, memilih jenis perdagangan yang mempunyai kecairan yang baik.

Arah pengoptimuman strategi

  1. Menyesuaikan parameter kitaran EMA, mengoptimumkan ketepatan penilaian trend.

  2. Menyesuaikan parameter kitaran MACD baris pendek dan baris lambat untuk mengoptimumkan kepekaan penunjuk MACD.

  3. Menyesuaikan parameter nisbah stop loss untuk mencapai keseimbangan optimum stop loss.

  4. Menambah petunjuk tambahan untuk meningkatkan ketepatan pemilihan masa untuk membuka kedudukan.

  5. Optimumkan pilihan varian perdagangan, pilih varian yang mempunyai kecairan yang baik dan turun naik.

  6. Menyesuaikan kitaran masa dagangan untuk menyesuaikan diri dengan ciri-ciri pasaran yang berbeza.

ringkaskan

Strategi ini menggunakan pelbagai indikator untuk menilai trend, membuka posisi apabila trend jelas, dan menetapkan stop loss, dapat memahami pergerakan pasaran dengan berkesan, dan memperoleh pulangan yang lebih ideal dengan menjamin keuntungan tertentu. Dengan mengoptimumkan parameter dan menambahkan petunjuk tambahan, anda dapat meningkatkan lagi kestabilan dan tahap keuntungan strategi.

Kod sumber strategi
/*backtest
start: 2023-10-13 00:00:00
end: 2023-11-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/
// © exlux99

//@version=4
strategy(title = "Crypto Scalper", overlay = true,  pyramiding=1,initial_capital = 100, default_qty_type= strategy.percent_of_equity, default_qty_value = 100, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.03)
len = input(60, minval=1, title="Length EMA")
src = input(close, title="Source")
out = ema(src, len)
//
fast_length = input(title="Fast Length MACD", type=input.integer, defval=12)
slow_length = input(title="Slow Length MACD", type=input.integer, defval=26)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Oscillator MA Type MACD", type=input.string, defval="EMA", options=["SMA", "EMA"])
sma_signal = input(title="Signal Line MA Type MACD", type=input.string, defval="EMA", options=["SMA", "EMA"])

// Calculating
fast_ma = sma_source == "SMA" ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source == "SMA" ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal


start = input(0.02)
increment = input(0.02)
maximum = input(0.2)
var bool uptrend = na
var float EP = na
var float SAR = na
var float AF = start
var float nextBarSAR = na
if bar_index > 0
	firstTrendBar = false
	SAR := nextBarSAR
	if bar_index == 1
		float prevSAR = na
		float prevEP = na
		lowPrev = low[1]
		highPrev = high[1]
		closeCur = close
		closePrev = close[1]
		if closeCur > closePrev
			uptrend := true
			EP := high
			prevSAR := lowPrev
			prevEP := high
		else
			uptrend := false
			EP := low
			prevSAR := highPrev
			prevEP := low
		firstTrendBar := true
		SAR := prevSAR + start * (prevEP - prevSAR)
	if uptrend
		if SAR > low
			firstTrendBar := true
			uptrend := false
			SAR := max(EP, high)
			EP := low
			AF := start
	else
		if SAR < high
			firstTrendBar := true
			uptrend := true
			SAR := min(EP, low)
			EP := high
			AF := start
	if not firstTrendBar
		if uptrend
			if high > EP
				EP := high
				AF := min(AF + increment, maximum)
		else
			if low < EP
				EP := low
				AF := min(AF + increment, maximum)
	if uptrend
		SAR := min(SAR, low[1])
		if bar_index > 1
			SAR := min(SAR, low[2])
	else
		SAR := max(SAR, high[1])
		if bar_index > 1
			SAR := max(SAR, high[2])
	nextBarSAR := SAR + AF * (EP - SAR)

tplong=input(0.245, step=0.005)
sllong=input(1.0, step=0.005)
tpshort=input(0.055, step=0.005)
slshort=input(0.03, step=0.005)

if (uptrend and hist >0 and close < out)
	strategy.entry("short", strategy.short, stop=nextBarSAR, comment="short")
	strategy.exit("short_tp/sl", "short", profit=close * tpshort / syminfo.mintick, loss=close * slshort / syminfo.mintick, comment='SHORT EXIT',  alert_message = 'closeshort')
if (not uptrend and hist <0 and close > out)
	strategy.entry("long", strategy.long, stop=nextBarSAR, comment="long")
	strategy.exit("short_tp/sl", "long", profit=close * tplong / syminfo.mintick, loss=close * sllong / syminfo.mintick, comment='LONG EXIT',  alert_message = 'closelong')