Strategi Warna Lilin Tengah Malam dengan Hentikan Kerugian dan Ambil Keuntungan

Penulis:ChaoZhang, Tarikh: 2024-01-05 16:37:35
Tag:

img

Ringkasan

Strategi ini berdagang berdasarkan warna lilin tengah malam dengan kelewatan 1 jam, dengan menganalisis warna lilin tengah malam 0 jam hari sebelumnya untuk menentukan arah perdagangan pada jam 1 pada hari berikutnya. Ia pergi lama apabila lilin 0 jam hijau dan pergi pendek apabila lilin 0 jam merah. Hentikan kerugian dan ambil keuntungan juga ditetapkan.

Logika Strategi

Logik teras strategi ini adalah berdasarkan kesan tengah malam di pasaran, di mana warna lilin 0 jam dari hari sebelumnya mewakili sentimen pasaran secara keseluruhan dan boleh digunakan untuk menentukan arah pasaran selepas hari berikutnya dibuka.

Secara khusus, strategi pertama menilai sama ada lilin semasa adalah lilin 0 jam. Jika ya, catat sebagai hijau jika penutupan lebih tinggi daripada terbuka, jika tidak merah. Pada bar seterusnya pada jam 1, pergi panjang / pendek mengikut warna lilin 0 jam dari hari sebelumnya, dengan stop loss dan mengambil keuntungan ditetapkan.

Dengan menangguhkan kemasukan selama 1 jam, ia menghalang harga yang tidak menentu pada tengah malam mempengaruhi kemasukan pasaran.

Kelebihan

  1. Logik mudah menggunakan warna lilin 0 jam untuk menentukan arah pasaran
  2. Penangguhan kemasukan 1 jam mengelakkan risiko harga tengah malam yang tidak menentu
  3. Tetapkan stop loss dan mengambil keuntungan untuk mengehadkan kerugian dan memastikan keuntungan

Risiko

  1. Warna lilin jam 0 mungkin tidak sepenuhnya mewakili trend pasaran hari berikutnya dengan beberapa ketidakpastian
  2. Tidak mengambil kira risiko turun naik harga tiba-tiba besar disebabkan oleh peristiwa ekonomi utama dll
  3. Hentikan kerugian dan ambil keuntungan memerlukan pengoptimuman dan ujian berterusan, jika tidak risiko akan ditangkap atau keuntungan terhad

Kawasan Peningkatan

  1. Gabungkan lebih banyak faktor untuk menilai keberkesanan petunjuk lilin 0 jam, contohnya jumlah, julat dll
  2. Uji kelewatan kemasukan yang berbeza seperti 2 jam, 3 jam dan sebagainya
  3. Sesuaikan secara dinamik stop loss dan mengambil keuntungan untuk menyesuaikan diri dengan lebih baik dengan turun naik pasaran

Ringkasan

Strategi ini mempunyai logik yang jelas dan mudah, menilai arah hari berikutnya dengan warna lilin 0 jam dan mengawal risiko dengan stop loss / mengambil keuntungan. Ini adalah strategi perdagangan jangka pendek yang mesra pemula. Tetapi masih ada beberapa ketidakpastian, yang memerlukan pengoptimuman dan pengesahan berterusan dalam perdagangan langsung.


/*backtest
start: 2023-12-28 00:00:00
end: 2024-01-04 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Midnight Candle Color Strategy with 1-Hour Delay and SL/TP", shorttitle="12AM +1H SL/TP Strat", overlay=true)

// Adjust for New York time (UTC-5 or UTC-4 for Daylight Saving Time)
// Assuming UTC-5 for now; adjust as necessary for Daylight Saving Time
nyHour(hour) => (hour - 5) % 24

// Function to check if the current bar is the 12:00 AM New York time bar
isMidnightBar() =>
    nyHour(hour) == 0 and minute == 0

// Function to check if the current bar is the 1:00 AM New York time bar (1 hour after midnight)
is1AMBar() =>
    nyHour(hour) == 1 and minute == 0

// Variable to store the color of the previous day's midnight candle
var color midnightCandleColorPrevDay = na

// Determine the color of the previous day's midnight candle
if isMidnightBar()
    midnightCandleColorPrevDay := close[1] > open[1] ? color.green : color.red

// Strategy execution at 1:00 AM based on the color of the previous day's midnight candle
if is1AMBar()
    if midnightCandleColorPrevDay == color.green
        strategy.entry("Long", strategy.long)
        strategy.exit("Take Profit", "Long", limit=close + 57 * syminfo.mintick, stop=close - 200 * syminfo.mintick)
    if midnightCandleColorPrevDay == color.red
        strategy.entry("Short", strategy.short)
        strategy.exit("Take Profit", "Short", limit=close - 50 * syminfo.mintick, stop=close + 200 * syminfo.mintick)

// Optional: Plot a marker for visualization
plotshape(series=isMidnightBar(), style=shape.triangleup, location=location.belowbar, color=color.new(midnightCandleColorPrevDay, 90), size=size.small)
plotshape(series=is1AMBar(), style=shape.triangledown, location=location.abovebar, color=color.blue, size=size.small)


Lebih lanjut