Strategi Perdagangan Penyu Don Anqi


Tanggal Pembuatan: 2024-02-26 14:35:02 Akhirnya memodifikasi: 2024-02-26 14:35:02
menyalin: 0 Jumlah klik: 899
1
fokus pada
1617
Pengikut

Strategi Perdagangan Penyu Don Anqi

Ringkasan

Strategi perdagangan Tongxian Seashell adalah strategi perdagangan seashell yang sangat disederhanakan. Ini sangat berbeda dari strategi perdagangan seashell yang asli. Strategi ini menggunakan dua saluran Tongxian, saluran cepat dan saluran lambat. Siklus saluran diatur oleh pengguna, dengan default adalah saluran cepat 20 garis K, saluran lambat 50 garis K.

Prinsip Strategi

Logika inti dari strategi ini adalah:

  1. Hitung jalur cepat: nilai tertinggi dari garis K akar cepat terdekat adalah jalur atas jalur dan nilai terendah adalah jalur bawah jalur. Rata-rata jalur tengah adalah jalur atas dan bawah jalur.

  2. Hitung jalur lambat: nilai tertinggi untuk jalur K akar lambat terdekat adalah jalur atas jalur dan nilai terendah adalah jalur bawah jalur.

  3. Ketika tidak memegang posisi, melakukan sinyal lebih berarti harga menyentuh jalur lambat; sinyal kosong berarti harga menyentuh jalur lambat.

  4. Setelah membuka gudang dengan jalur cepat sebagai jalur stop loss.

  5. Dalam proses memegang posisi, sinyal perdagangan bertentangan dengan sinyal membuka posisi, posisi kosong keluar.

Analisis Keunggulan

Strategi ini memiliki keuntungan sebagai berikut:

  1. Peraturan yang sederhana dan mudah diterapkan.

  2. Parameter yang dapat disesuaikan. Pengguna dapat menyesuaikan parameter berdasarkan jenis transaksi dan periode waktu untuk menyesuaikan dengan lingkungan pasar yang berbeda.

  3. Tidak ada sinyal perdagangan yang berkonflik. Hanya mengandalkan harga untuk menembus saluran naik dan turun.

  4. Manajemen risiko stop loss otomatis. Stop loss bergerak di jalur cepat, dapat membatasi stop loss tunggal.

Analisis risiko

Strategi ini memiliki risiko sebagai berikut:

  1. Ketika tren harga tidak jelas, lebih banyak stop loss akan terjadi. Hal ini akan mempengaruhi profitabilitas strategi.

  2. Kemunduran mungkin lebih besar. Ketika tren terjadi pergeseran, fluktuasi dalam arah gerakan depan akan berubah menjadi kerugian nyata.

  3. Pengaturan parameter yang tidak tepat dapat menyebabkan terlalu radikal atau konservatif. Ini memerlukan pengujian berulang untuk mendapatkan nilai yang sesuai.

  4. Transaksi otomatisasi memiliki tingkat ketergantungan yang tinggi. Perlu memastikan stabilitas server, untuk menghindari kesalahan yang menyebabkan transaksi otomatisasi tidak normal.

Untuk mengurangi risiko di atas, perbaikan dapat dilakukan dengan cara mengoptimalkan pengaturan parameter, membatasi ukuran posisi dengan tepat, dan menambahkan modul kontrol angin.

Arah optimasi

Strategi ini dapat dioptimalkan dari beberapa arah:

  1. Menambahkan kondisi penyaringan untuk membuka posisi, untuk menghindari sinyal yang terlewatkan pada titik perubahan tren. Misalnya, analisis tren berdasarkan indikator seperti indeks tren.

  2. Pengaturan parameter yang dioptimalkan agar lebih sesuai dengan jenis perdagangan yang berbeda. Misalnya, siklus saluran cepat dan lambat, ukuran posisi, dll.

  3. Tambahkan modul pengendalian risiko. Misalnya, batas maksimum penarikan, batas kerugian dalam sehari, dan lain-lain. Hindari insiden berisiko yang menyebabkan kerugian besar.

  4. Optimalkan strategi stop loss. Cara stop loss dinamis seperti trailing stop, agar stop loss lebih sesuai dengan tren pasar.

Meringkaskan

Strategi perdagangan Dong An Chi secara keseluruhan adalah strategi pelacakan tren yang sangat sederhana. Kelebihannya adalah mudah dipahami, mudah dieksekusi otomatis, cocok untuk perdagangan terprogram. Namun, ada juga risiko tertentu, yang perlu dioptimalkan lebih lanjut agar parameternya lebih sesuai dengan situasi pasar yang sebenarnya.

Kode Sumber Strategi
/*backtest
start: 2024-01-26 00:00:00
end: 2024-02-15 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2020

//@version=4
strategy("Noro's SimpleTurtle Strategy", shorttitle = "SimpleTurtle str", overlay = true, default_qty_type = strategy.percent_of_equity, initial_capital = 100, default_qty_value = 100, commission_value = 0.1)

//Settings
needlong  = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
sizelong  = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot long, %")
sizeshort = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot short, %")
fast      = input(20, minval=1)
slow      = input(50, minval=1)
showof    = input(true, defval = true, title = "Show offset")
showll    = input(true, defval = true, title = "Show lines")
showdd    = input(false, defval = true, title = "Show label (drawdown)")
showbg    = input(true, defval = true, title = "Show background")
fromyear  = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear    = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth   = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday   = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today     = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//Donchian price channel fast
hf = highest(high, fast)
lf = lowest(low, fast)
center = (hf + lf) / 2

//Donchian price chennal slow
hs = highest(high, slow)
ls = lowest(low, slow)

//Lines
colorpc = showll ? color.blue : na
colorsl = showll ? color.red : na
offset = showof ? 1 : 0
plot(hs, offset = offset, color = colorpc)
plot(ls, offset = offset, color = colorpc)
plot(center, offset = offset, color = colorsl)

//Background
size = strategy.position_size
colorbg = showbg == false ? na : size > 0 ? color.lime : size < 0 ? color.red : na
bgcolor(colorbg, transp = 70)

//Orders
truetime = true
lotlong = 0.0
lotshort = 0.0
lotlong := size != size[1] ? strategy.equity / close * sizelong / 100 : lotlong[1]
lotshort := size != size[1] ? strategy.equity / close * sizeshort / 100 : lotshort[1]

//Orders
strategy.entry("Long", strategy.long, lotlong, stop = hs, when = needlong and strategy.position_size == 0 and truetime)
strategy.entry("Short", strategy.short, lotshort, stop = ls, when = needshort and strategy.position_size == 0 and truetime)
strategy.exit("Long", stop = center, when = needlong and strategy.position_size > 0)
strategy.exit("Short", stop = center, when = needshort and strategy.position_size < 0)
if true
    strategy.close_all()
    strategy.cancel("fast L")
    strategy.cancel("fast S")
    strategy.cancel("slow L")
    strategy.cancel("slow S")
    
if showdd

    //Drawdown
    max = 0.0
    max := max(strategy.equity, nz(max[1]))
    dd = (strategy.equity / max - 1) * 100
    min = 100.0
    min := min(dd, nz(min[1]))
    
    //Label
    min := round(min * 100) / 100
    labeltext = "Drawdown: " + tostring(min) + "%"
    var label la = na
    label.delete(la)
    tc = min > -100 ? color.white : color.red
    osx = timenow + round(change(time)*10)
    osy = highest(100)
    la := label.new(x = osx, y = osy, text = labeltext, xloc = xloc.bar_time, yloc = yloc.price, color = color.black, style = label.style_labelup, textcolor = tc)