Kaedah Pengesanan Pintar Pengimbas Rendah

Penulis:ChaoZhang, Tarikh: 2023-11-01 16:12:00
Tag:

img

Ringkasan

Low Scanner Smart Tracking Method adalah strategi perdagangan Forex yang tidak mengecat semula. Ia menggunakan pengimbas rendah untuk mencari titik rendah dan digabungkan dengan Hull Moving Average untuk penghakiman isyarat perdagangan, yang dapat mencapai kadar kemenangan yang tinggi.

Analisis Prinsip

Pertama, strategi ini menggunakan pengimbas rendah untuk mencari titik rendah. Pengimbas rendah mengira nilai RSI harga dan jumlah, dan membandingkannya dengan lengkung WMA untuk menentukan titik rendah apabila RSI lebih rendah daripada WMA.

Kedua, strategi ini menggunakan Hull Moving Average untuk penilaian isyarat perdagangan. Ia mengira dua Hull MA dengan tempoh yang berbeza, dan pergi panjang apabila tempoh Hull MA yang lebih pendek melintasi tempoh yang lebih lama, dan pergi pendek apabila melintasi bawah.

Akhirnya, strategi menggabungkan isyarat imbasan titik rendah dan isyarat Hull MA, dan hanya mencetuskan isyarat Hull MA apabila pengimbas rendah memberikan isyarat titik rendah, membentuk strategi kemasukan.

Dengan cara ini, dengan mengenal pasti titik terendah pasaran terlebih dahulu dan kemudian mengesan trend, ia dapat dengan berkesan mengelakkan masa masuk yang salah dan meningkatkan kadar kemenangan sistem perdagangan.

Analisis Kelebihan

Kelebihan utama kaedah pengesanan pintar pengimbas rendah adalah:

  1. Menggunakan pengimbas rendah, ia boleh mengenal pasti titik rendah pasaran dengan tepat dan mengelakkan membeli pada titik tinggi.

  2. Hull MA adalah penunjuk pengesanan trend yang sangat baik yang boleh menangkap trend yang lebih besar.

  3. Menggabungkan pengimbas rendah dan Hull MA mengesahkan antara satu sama lain dan menapis banyak bunyi bising dan isyarat palsu.

  4. Menggunakan mekanisme keluar stop loss progresif boleh memaksimumkan keuntungan dan mengelakkan penurunan.

  5. Strategi ini menggunakan logik yang didorong penunjuk dan tidak memanipulasi data sejarah, yang boleh dipercayai.

Analisis Risiko

Risiko utama strategi ini ialah:

  1. Pengimbas rendah mungkin terlepas beberapa titik rendah dan kehilangan peluang perdagangan. Parameter boleh diselaraskan untuk memperluaskan julat imbasan.

  2. Julat stop loss boleh santai dengan munasabah dan mengawal saiz kedudukan.

  3. Tetapan parameter yang tidak betul boleh menghasilkan terlalu banyak atau terlalu sedikit isyarat perdagangan. Parameter harus dioptimumkan berulang kali untuk mencari kombinasi terbaik.

  4. Strategi ini hanya terpakai kepada pasangan Forex dengan trend yang jelas, tidak sesuai untuk pasaran yang terhad atau berayun.

Arahan pengoptimuman

Strategi ini boleh dioptimumkan dalam aspek berikut:

  1. Mengoptimumkan parameter pengimbas rendah untuk mengenal pasti titik rendah dengan lebih tepat.

  2. Mengoptimumkan parameter Hull MA untuk mengesan trend dengan lebih tepat.

  3. Tambah penapis penunjuk lain seperti MACD, KDJ untuk meningkatkan kebolehpercayaan isyarat.

  4. Tambah ramalan model pembelajaran mesin untuk membantu penilaian isyarat perdagangan.

  5. Mengoptimumkan mekanisme stop loss untuk menyesuaikan secara dinamik berdasarkan turun naik pasaran.

  6. Mengoptimumkan strategi saiz kedudukan untuk menyesuaikan saiz kedudukan secara dinamik berdasarkan peraturan pengurusan wang.

Kesimpulan

Low Scanner Smart Tracking Method adalah strategi dagangan Forex yang mempunyai kadar kemenangan yang tinggi. Ia dapat mengenal pasti titik-titik rendah pasaran dengan tepat dan memasuki trend apabila trendnya jelas, mengunci keuntungan dengan kerugian berhenti progresif. Strategi ini mempunyai ruang yang besar untuk pengoptimuman dan boleh ditingkatkan dalam banyak cara untuk menjadi sistem dagangan automatik yang kuat.


/*backtest
start: 2023-10-24 00:00:00
end: 2023-10-25 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © theCrypster 2020

//@version=4
// strategy(title = "Low Scanner Forex strategy", overlay = false, pyramiding=1,initial_capital = 1000, 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)
strat_dir_input = input(title="Strategy Direction", defval="long", options=["long", "short", "all"])
strat_dir_value = strat_dir_input == "long" ? strategy.direction.long : strat_dir_input == "short" ? strategy.direction.short : strategy.direction.all
strategy.risk.allow_entry_in(strat_dir_value)
leng=1
p1=close[1]
min=input(1440)
len55 = timeframe.isintraday and timeframe.multiplier >= 1 ? 
   min / timeframe.multiplier * 7 : 
   timeframe.isintraday and timeframe.multiplier < 60 ? 
   60 / timeframe.multiplier * 24 * 7 : 7
//taken from https://www.tradingview.com/script/Ql1FjjfX-security-free-MTF-example-JD/
tf3 = input("W", type=input.resolution)
ti = change( time(tf3) ) != 0
T_c = fixnan( ti ? close : na )

vrsi = rsi(cum(change(T_c) * volume), leng)
pp=wma(vrsi,len55)

d=(vrsi[1]-pp[1])
min1 =input(60)
len100 = timeframe.isintraday and timeframe.multiplier >= 1 ? 
   min1 / timeframe.multiplier * 7 : 
   timeframe.isintraday and timeframe.multiplier < 60 ? 
   60 / timeframe.multiplier * 24 * 7 : 7
x=ema(d,len100)
//
zx=x/-1
col=zx > 0? color.lime : color.orange
plot(zx,color=col,linewidth=1)
//

tf10 = input("W", title = "Timeframe", type = input.resolution, options = ["1", "5", "15", "30", "60","120", "240","360","720", "D", "W"])

length = input(24, title = "Period", type = input.integer)
shift = input(1, title = "Shift", type = input.integer)

hma(_src, _length)=>
    wma((2 * wma(_src, _length / 2)) - wma(_src, _length), round(sqrt(_length)))
    
hma3(_src, _length)=>
    p = length/2
    wma(wma(close,p/3)*3 - wma(close,p/2) - wma(close,p),p)


a = security(syminfo.tickerid, tf10, hma(close, length))
b =security(syminfo.tickerid, tf10, hma3(close[1], length)[shift])
//plot(a,color=color.gray)
//plot(b,color=color.yellow)
close_price = close[0]
len = input(25)

linear_reg = linreg(close_price, len, 0)


//plot(linear_reg, color=color.blue, title="LR", linewidth=3)

buy=crossover(linear_reg, b) 
sell=crossunder(linear_reg, b) 
//
// Time period input
testStartYear = input(2016, "BACKTEST START YEAR", minval = 1980, maxval = 2222) 
testStartMonth = input(06, "BACKTEST START MONTH", minval = 1, maxval = 12)
testStartDay = input(01, "BACKTEST START DAY", minval = 1, maxval = 31)
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2222, "BACKTEST STOP YEAR", minval=1980, maxval = 2222)
testStopMonth = input(12, "BACKTEST STOP MONTH", minval=1, maxval=12)
testStopDay = input(31, "BACKTEST STOP DAY", minval=1, maxval=31)
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)
testPeriod = time >= testPeriodStart and time <= testPeriodStop ? true : false
l = crossover(zx,0) or buy
        
if l and testPeriod
    strategy.entry("buy", strategy.long)

per(pcnt) =>
    strategy.position_size != 0 ? round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
stoploss=input(title=" stop loss", defval=25, minval=0.01)
los = per(stoploss)
q1=input(title=" qty_percent1", defval=25, minval=1)
q2=input(title=" qty_percent2", defval=25, minval=1)
q3=input(title=" qty_percent3", defval=25, minval=1)
tp1=input(title=" Take profit1", defval=0.5, minval=0.01)
tp2=input(title=" Take profit2", defval=1, minval=0.01)
tp3=input(title=" Take profit3", defval=1.5, minval=0.01)
tp4=input(title=" Take profit4", defval=2, minval=0.01)
strategy.exit("x1", qty_percent = q1, profit = per(tp1), loss = los)
strategy.exit("x2", qty_percent = q2, profit = per(tp2), loss = los)
strategy.exit("x3", qty_percent = q3, profit = per(tp3), loss = los)
strategy.exit("x4", profit = per(tp4), loss = los)


Lebih lanjut