Strategi keluar awal purata bergerak untuk keuntungan awal


Tarikh penciptaan: 2023-12-01 14:32:48 Akhirnya diubah suai: 2023-12-01 14:32:48
Salin: 2 Bilangan klik: 605
1
fokus pada
1619
Pengikut

Strategi keluar awal purata bergerak untuk keuntungan awal

Gambaran keseluruhan

Strategi ini adalah berdasarkan pada pergerakan purata garpu emas dan garpu mati untuk mencapai jangka masa yang lebih lama dan lebih lama, dan berdasarkan kepada statistik keuntungan yang diperoleh oleh peneraju, hanya berhenti dan berhenti pada waktu petang, untuk mengelakkan daripada terjejas oleh kadar turun naik yang tinggi pada waktu pagi.

Prinsip Strategi

Strategi ini menggunakan 3 parameter bergerak yang berbeza: 14 hari, 28 hari, dan 56 hari. Berbuat lebih banyak apabila 14 hari melintasi 56 hari; kosong apabila 14 hari melintasi 56 hari. Ini adalah kaedah asas untuk mengesan trend garis panjang.

Inovasi utama dalam strategi ini ialah ia hanya berhenti berhenti antara jam empat dan lima petang. Berdasarkan statistik, terdapat kemungkinan 70% bahawa harga tertinggi dan terendah dalam satu hari akan berlaku dalam jam pertama pembukaan. Untuk mengelakkan kejutan kepada strategi oleh turun naik yang tinggi pada waktu pembukaan, hanya berhenti berhenti pada waktu perdagangan petang.

Analisis kelebihan

Strategi ini mempunyai beberapa kelebihan:

  1. Mengesan trend garis tengah dan panjang untuk mengelakkan bunyi bising yang berlebihan
  2. Reka bentuk logik henti rugi yang menggunakan ciri-ciri statistik pergerakan tinggi pada cakera terbuka, yang berkesan mengelakkan penembusan palsu
  3. Idea yang mudah difahami dan diubah suai

Risiko dan Penyelesaian

Strategi ini juga mempunyai risiko:

  1. Jika trend berbalik pada awal perdagangan, anda akan terlepas peluang. Anda boleh menguji apakah ia sesuai dengan ciri-ciri saham itu sendiri.
  2. Sekiranya turun naik yang besar berterusan selepas perdagangan, masih ada risiko untuk ditutup. Anda boleh menguji tahap penghentian kerugian yang sesuai.
  3. Pengaturan masa pengembalian yang tidak betul boleh menyebabkan kecocokan yang berlebihan. Perlu meluaskan tempoh pengembalian.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dengan cara berikut:

  1. Uji kombinasi purata bergerak yang berbeza untuk mencari parameter yang optimum
  2. Sempadan penangguhan yang disesuaikan dengan ciri-ciri turun naik saham tertentu
  3. Menganalisis dan mengkaji data yang terkandung di dalam akaun.
  4. Tambah Dynamic Stop Loss, Track Penarikan Selepas Penembusan

ringkaskan

Strategi ini secara keseluruhan jelas dan mudah difahami, menggunakan logik stop loss yang direka bentuk dengan ciri-ciri bukaan yang berkesan, dan dapat mengelakkan pergerakan tinggi pada awal perdagangan. Ia layak untuk diuji dan dioptimumkan lebih lanjut. Tetapi ada risiko tersandung dan kehilangan peluang, perlu menyesuaikan parameter untuk setiap saham.

Kod sumber strategi
/*backtest
start: 2023-11-23 00:00:00
end: 2023-11-30 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("MAC 1st Trading Hour Walkover", overlay=true)

// Setting up timeperiod for testing
startPeriodYear = input(2014, "Backtest Start Year")
startPeriodMonth = input(1, "Backtest Start Month")
startPeriodDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(startPeriodYear, startPeriodMonth, startPeriodDay, 0, 0)

stopPeriodYear = input(2025, "Backtest Stop Year")
stopPeriodMonth = input(12, "Backtest Stop Month")
stopPeriodDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(stopPeriodYear, stopPeriodMonth, stopPeriodDay, 0, 0)

// Moving Averages
ema14 = ema(close, 14)
ema28 = ema(close, 28)
sma56 = sma(close, 56)

// Plot
plot(ema14, title="ema14", linewidth=2, color=green)
plot(ema28, title="ema28", linewidth=2, color=red)
plot(sma56, title="sma56", linewidth=3, color=blue)

// Strategy
goLong = cross(ema14, sma56) and ema14 > ema28
goShort = cross(ema14, sma56) and ema14 < ema28

// Strategy.When to enter
if time >= testPeriodStart
    if time <= testPeriodStop
        strategy.entry("Go Long", strategy.long, 1.0, when=goLong)
        strategy.entry("Go Short", strategy.short, 1.0, when=goShort)

// Strategy.When to take profit 
if time >= testPeriodStart 
    if time <= testPeriodStop 
        strategy.exit("Close Long", "Go Long", profit=2000) 
        strategy.exit("Close Short", "Go Short", profit=2000) 

// Strategy.When to stop out 
// Some studies show that 70% of the days high low happen in the first hour 
// of trading. To avoid having that volatility fire our loss stop we 
// ignore price action in the morning, but allow stops to fire in the afternoon. 
if time("60", "1000-1600") 
    strategy.exit("Close Long", "Go Long", loss=500) 
    strategy.exit("Close Short", "Go Short", loss=500)