Strategi Perdagangan Penyu Richard

Penulis:ChaoZhang, Tanggal: 2024-02-06 11:56:47
Tag:

img

Gambaran umum

Richard's Turtle Trading Strategy adalah strategi trading yang didasarkan pada teknik trading penyu Richard Dennis. Strategi ini menggunakan price breakout untuk melacak tren.

Logika Strategi

Logika inti dari strategi trading penyu Richard adalah untuk melacak tren berdasarkan price breakout. Secara khusus, strategi secara terus menerus memantau harga tertinggi (_20_day_highest) dan terendah (_20_day_lowest) dalam 20 hari terakhir. Ketika harga penutupan menembus level tertinggi 20 hari, itu menandakan terobosan ke atas, memicu order panjang. Ketika harga penutupan turun di bawah level terendah 20 hari, itu menandakan terobosan ke bawah, memicu order pendek.

Setelah masuk ke posisi, strategi menggunakan Average True Range (ATR) untuk menghitung harga stop loss. Strategi ini juga melacak harga tertinggi dan rendah 10 hari untuk stop loss slippage.

Keuntungan

Strategi perdagangan penyu Richard memiliki keuntungan berikut:

  1. Ini secara otomatis melacak tren menggunakan price breakout. Ini dapat secara otomatis mengidentifikasi pembalikan tren dan menyesuaikan posisi sesuai.
  2. Mekanisme stop loss ATR secara efektif mengontrol stop loss tunggal.
  3. Mekanisme stop loss slippage mengunci beberapa keuntungan dan mengurangi drawdown.
  4. Logika strategi sederhana dan mudah dimengerti bagi pemula.
  5. Tidak perlu memprediksi tren pasar atau perhitungan yang rumit, hanya perdagangan berbasis aturan sederhana.

Risiko

Ada juga beberapa risiko dengan strategi perdagangan penyu Richard:

  1. Perdagangan breakout cenderung terjebak, kadang-kadang menghasilkan frekuensi perdagangan yang berlebihan.
  2. ATR dan stop loss slippage mungkin terlalu ketat, menyebabkan stop loss prematur kadang-kadang.
  3. Ini hanya menggunakan data harga tanpa menggabungkan faktor lain untuk memprediksi kontinuitas tren.
  4. Backtest risiko overfit, hasil perdagangan yang sebenarnya mungkin buruk.

Untuk mengurangi risiko ini, kita dapat mengoptimalkan kondisi masuk dengan lebih banyak indikator untuk memprediksi tren; menyesuaikan algoritma stop loss untuk mengurangi frekuensi stop loss.

Arahan Optimasi

Strategi perdagangan penyu Richard dapat dioptimalkan dalam aspek berikut:

  1. Mengoptimalkan parameter untuk menemukan kombinasi parameter yang optimal, seperti menyesuaikan siklus perhitungan atau menguji kelipatan ATR yang berbeda.
  2. Masukkan lebih banyak indikator atau algoritma pembelajaran mesin untuk menilai kontinuitas tren, seperti moving average, indikator momentum dll.
  3. Mengoptimalkan metode stop loss, seperti pengujian stop loss slippage fleksibel, trailing stop loss dll.
  4. Gabungkan indikator sentimen, berita dan informasi lain untuk memprediksi pergerakan pasar.

Kesimpulan

Strategi trading penyu Richard adalah strategi yang sangat tipikal untuk mengikuti tren. Strategi ini sederhana dan praktis, baik untuk pemula untuk belajar, dan paradigma perdagangan kuantum. Strategi ini dapat dioptimalkan dengan berbagai cara untuk mengurangi risiko dan meningkatkan profitabilitas. Secara keseluruhan, strategi penyu Richard sangat mencerahkan.


/*backtest
start: 2023-02-05 00:00:00
end: 2024-02-05 00:00:00
period: 1d
basePeriod: 1h
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/
// © melodyera0822

//@version=4
strategy("Richard Strategy", overlay=true)

// User input
variable_for_stoploss = input(4,title="stop loss var")
lenght = input(20,title="lenght")

// high_low
_20_day_highest = highest(nz(close[1]), lenght)
_20_day_lowest = lowest(nz(close[1]), lenght)

_10_day_low = lowest(nz(close[1]), lenght/2)
_10_day_high = highest(nz(close[1]), lenght/2)

//indicators
atr20 = atr(20)
ema_atr20 = ema(atr20,20)

//vars
var traded = "false"
var buy_sell = "none"
var buyExit = false
var sellExit = false
var stoploss = 0

buyCon = close > _20_day_highest and traded == "false"
plotshape(buyCon,style = shape.triangleup,location = location.belowbar, color = color.green )
if (buyCon)
    strategy.entry("long", strategy.long, when = buyCon)
    traded := "true"
    buy_sell := "buy"
    stoploss := round(close - variable_for_stoploss * ema_atr20)
    
sellCon = close < _20_day_lowest and  traded == "false"
plotshape(sellCon,style = shape.triangledown, color = color.red )
if (sellCon)
    strategy.entry("short", strategy.short)
    traded := "true"
    buy_sell := "sell"
    stoploss := round(close - variable_for_stoploss * ema_atr20)

if traded == "true"
    if buy_sell == "buy" and ((close<stoploss)or(close<_10_day_low))
        strategy.close("long")
        buyExit := true
        traded := "false"
        
    if buy_sell == "sell" and ((close>stoploss)or(close>_10_day_high))
        strategy.close("short")
        sellExit := true
        traded := "false"
        
plotshape(buyExit,style = shape.triangleup,location = location.belowbar, color = color.yellow )
buyExit := false
plotshape(sellExit,style = shape.triangledown, color = color.yellow )
sellExit := false

Lebih banyak