Low Scanner Smart Tracking Metode

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

img

Gambaran umum

Low Scanner Smart Tracking Method adalah strategi trading Forex non-repainting. Ini menggunakan scanner rendah untuk menemukan titik rendah dan dikombinasikan dengan Hull Moving Average untuk penilaian sinyal perdagangan, yang dapat mencapai tingkat kemenangan yang tinggi.

Analisis Prinsip

Pertama, strategi menggunakan scanner rendah untuk menemukan titik rendah. scanner rendah menghitung nilai RSI harga dan volume, dan membandingkannya dengan kurva WMA untuk menentukan titik rendah ketika RSI lebih rendah dari WMA.

Kedua, strategi ini menggunakan Hull Moving Average untuk penilaian sinyal perdagangan. Hal ini menghitung dua Hull MA dengan periode yang berbeda, dan pergi panjang ketika periode Hull MA yang lebih pendek melintasi periode yang lebih lama, dan pergi pendek ketika melintasi di bawah.

Akhirnya, strategi menggabungkan sinyal scan titik rendah dan sinyal Hull MA, dan hanya memicu sinyal Hull MA ketika scanner rendah memberikan sinyal titik rendah, membentuk strategi masuk.

Dengan cara ini, dengan mengidentifikasi titik terendah pasar terlebih dahulu dan kemudian melacak tren, secara efektif dapat menghindari waktu masuk yang salah dan meningkatkan tingkat kemenangan sistem perdagangan.

Analisis Keuntungan

Keuntungan utama dari Low Scanner Smart Tracking Method adalah:

  1. Dengan menggunakan scanner rendah, dapat secara akurat mengidentifikasi titik rendah pasar dan menghindari membeli pada titik tinggi.

  2. Hull MA adalah indikator pelacakan tren yang sangat baik yang dapat menangkap tren yang lebih besar.

  3. Menggabungkan scanner rendah dan Hull MA saling memverifikasi dan menyaring keluar banyak kebisingan dan sinyal palsu.

  4. Mengadopsi mekanisme stop loss exit progresif dapat memaksimalkan keuntungan dan menghindari penarikan.

  5. Strategi ini menggunakan logika berbasis indikator dan tidak memanipulasi data historis, yang dapat diandalkan.

Analisis Risiko

Risiko utama dari strategi ini adalah:

  1. Scanner rendah dapat melewatkan beberapa titik rendah dan kehilangan peluang perdagangan. Parameter dapat disesuaikan untuk memperluas rentang pemindaian.

  2. Jangkauan stop loss dapat santai secara wajar dan ukuran posisi dapat dikontrol.

  3. Pengaturan parameter yang tidak benar dapat menghasilkan terlalu banyak atau terlalu sedikit sinyal perdagangan. Parameter harus berulang kali dioptimalkan untuk menemukan kombinasi terbaik.

  4. Strategi ini hanya berlaku untuk pasangan Forex dengan tren yang jelas, tidak cocok untuk pasar yang terikat rentang atau berosilasi.

Arahan Optimasi

Strategi dapat dioptimalkan dalam aspek berikut:

  1. Optimalkan parameter scanner rendah untuk mengidentifikasi titik rendah dengan lebih akurat.

  2. Mengoptimalkan parameter Hull MA untuk melacak tren lebih tepat.

  3. Tambahkan filter indikator lain seperti MACD, KDJ untuk meningkatkan keandalan sinyal.

  4. Tambahkan prediksi model pembelajaran mesin untuk membantu penilaian sinyal perdagangan.

  5. Mengoptimalkan mekanisme stop loss untuk menyesuaikan secara dinamis berdasarkan volatilitas pasar.

  6. Mengoptimalkan strategi ukuran posisi untuk menyesuaikan ukuran posisi secara dinamis berdasarkan aturan pengelolaan uang.

Kesimpulan

Low Scanner Smart Tracking Method adalah strategi trading Forex non-repainting dengan tingkat kemenangan tinggi. Ini dapat secara akurat mengidentifikasi titik rendah pasar dan memasuki tren ketika tren jelas, mengunci keuntungan dengan stop loss progresif. Strategi ini memiliki ruang besar untuk optimasi dan dapat ditingkatkan dalam banyak cara untuk menjadi sistem perdagangan otomatis 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 banyak