Strategi Lilin Terakhir

Penulis:ChaoZhang, Tanggal: 2023-12-21 12:15:23
Tag:

img

Gambaran umum

Strategi Last Candle adalah strategi trend following yang menentukan arah tren pasar berdasarkan hubungan antara harga penutupan dan harga pembukaan candlestick terakhir, dan menghasilkan sinyal perdagangan sesuai.

Logika Strategi

Logika inti dari strategi ini adalah:

  1. Menghitung harga pembukaan dan harga penutupan candlestick terakhir
  2. Jika harga pembukaan lebih rendah dari harga penutupan, menilai sebagai tren naik dan menghasilkan sinyal beli
  3. Jika harga pembukaan lebih tinggi dari harga penutupan, menilai sebagai tren penurunan dan menghasilkan sinyal jual
  4. Masukkan posisi panjang atau pendek berdasarkan sinyal perdagangan
  5. Atur stop loss dan ambil harga profit untuk keluar posisi

Secara khusus, strategi meminta data harga pembukaan dan harga penutupan lilin terakhir, dan menentukan arah tren berdasarkan perbandingan harga. Jika itu adalah tren naik, pesanan pasar untuk membeli akan ditempatkan ketika lilin ditutup. Jika itu adalah tren turun, pesanan pasar untuk menjual akan ditempatkan.

Setelah itu, harga stop loss dan take profit ditetapkan. Untuk posisi panjang, harga stop loss adalah harga pembukaan lilin itu dikalikan dengan koefisien, dan harga take profit adalah harga penutupan saat ini. Untuk posisi pendek sebaliknya. Ketika harga memicu stop loss atau take profit, posisi yang sesuai akan ditutup.

Analisis Keuntungan

  • Logika strategi yang sederhana dan jelas, mudah dimengerti dan diterapkan
  • Menangkap tren perubahan harga terbaru dengan menggunakan candlestick terakhir
  • Memiliki stop loss dan take profit untuk membatasi risiko penurunan

Analisis Risiko

  • candlestick terakhir mungkin memiliki pullback atau sisi, meningkatkan kemungkinan whipsaw
  • Menghakimi tren hanya berdasarkan lilin terakhir dapat menyebabkan terjebak, harus menggabungkan indikator tren
  • Data backtesting yang tidak cukup dapat menyebabkan overfit

Risiko dapat dikurangi dengan memasukkan indikator tren untuk konfirmasi, mengoptimalkan logika stop loss/take profit, memperluas periode backtest dan lingkungan pasar.

Arahan Optimasi

  • Masukkan MA, MACD dll untuk memfilter waktu masuk
  • Gunakan ATR untuk mengatur persentase stop loss
  • Memperkenalkan model pembelajaran mesin untuk menentukan arah tren
  • Mengoptimalkan strategi stop loss/take profit, seperti trailing stop loss, partial take profit dll.

Kesimpulan

Strategi Last Candle adalah strategi yang sederhana mengikuti tren. Ini dengan cepat menilai arah tren menggunakan candlestick terakhir dan berdagang sesuai dengan itu. Logika sederhana dan mudah diterapkan, selaras dengan gagasan mengikuti tren. Stop loss dan take profit juga diatur untuk mengendalikan risiko. Namun, hanya mengandalkan candlestick terakhir dapat dengan mudah terjebak, sehingga harus digunakan bersama dengan indikator tren. Juga, masih ada ruang besar untuk meningkatkan strategi ini, dengan memperkenalkan lebih banyak indikator teknis atau model pembelajaran mesin.


/*backtest
start: 2022-12-14 00:00:00
end: 2023-12-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Last Candle Strategy with Date Range", overlay=true)

// Define the start and end dates for the backtest
startDate = timestamp(2015, 01, 01, 00, 00)
endDate = timestamp(2023, 11, 24, 23, 59)

// Check if the current bar is within the specified date range
withinDateRange = time >= startDate and time <= endDate

// If outside the date range, skip the strategy logic
if (not withinDateRange)
    strategy.close_all()

// Calculate the opening and closing values for the last candle
lastCandleOpen = request.security(syminfo.tickerid, "D", open[1], lookahead=barmerge.lookahead_on)
lastCandleClose = request.security(syminfo.tickerid, "D", close[1], lookahead=barmerge.lookahead_on)

// Determine the trade direction based on the last candle
tradeDirection = lastCandleOpen < lastCandleClose ? 1 : -1  // 1 for buy, -1 for sell

// Plot the last candle's opening and closing values on the chart
plot(lastCandleOpen, color=color.blue, title="Last Candle Open")
plot(lastCandleClose, color=color.red, title="Last Candle Close")

// Execute strategy orders
if (withinDateRange)
    if (tradeDirection == 1)
        strategy.entry("Buy", strategy.long)

    if (tradeDirection == -1)
        strategy.entry("Sell", strategy.short)

// Set stop loss and take profit
stopLoss = 0.01 * lastCandleOpen
takeProfit = close

// Exit strategy
strategy.exit("StopLoss/Profit", from_entry="Buy", loss=stopLoss, profit=takeProfit)
strategy.exit("StopLoss/Profit", from_entry="Sell", loss=stopLoss, profit=takeProfit)



Lebih banyak