Sumber dimuat naik... memuat...

Trend purata bergerak berganda mengikut strategi dengan pengurusan risiko

Penulis:ChaoZhang, Tarikh: 2024-12-20 14:30:29
Tag:EMA

img

Ringkasan

Strategi ini adalah sistem dagangan trend-mengikuti berdasarkan persilangan 110 hari dan 200 hari Eksponensial Moving Averages (EMA). Ia mengenal pasti trend pasaran melalui persimpangan jangka pendek dan jangka panjang EMA, menggabungkan mekanisme stop-loss dan mengambil keuntungan untuk kawalan risiko. Sistem secara automatik melaksanakan kedudukan panjang dan pendek apabila pengesahan trend sambil terus memantau risiko kedudukan.

Prinsip Strategi

Logik teras bergantung pada kesinambungan trend harga, menggunakan silang EMA110 dan EMA200 untuk menangkap isyarat pembalikan trend. Apabila purata bergerak jangka pendek (EMA110) melintasi di atas purata bergerak jangka panjang (EMA200), ia menandakan pembentukan trend menaik, mencetuskan kedudukan panjang. Sebaliknya, apabila purata bergerak jangka pendek melintasi di bawah purata bergerak jangka panjang, ia menandakan pembentukan trend menurun, mencetuskan kedudukan pendek. Untuk pengurusan risiko, strategi menetapkan tahap stop-loss 1% dan 0.5% mengambil keuntungan untuk setiap kedudukan untuk melindungi keuntungan dan mengehadkan potensi kerugian.

Kelebihan Strategi

  1. Keupayaan menangkap trend yang kuat: Menapis bunyi pasaran jangka pendek dengan berkesan melalui persilangan purata bergerak berganda
  2. Kawalan risiko yang komprehensif: Mekanisme stop-loss dan mengambil keuntungan yang bersepadu mengawal risiko perdagangan tunggal dengan berkesan
  3. Logik pelaksanaan yang ketat: Secara automatik menutup kedudukan terbalik sebelum membuka yang baru, mengelakkan tumpang tindih kedudukan
  4. Tanda isyarat yang jelas: Isyarat perdagangan dipaparkan dengan jelas di sudut atas kanan jadual
  5. Tetapan parameter yang munasabah: Tempoh 110 hari dan 200 hari keseimbangan kepekaan dan kestabilan

Risiko Strategi

  1. Risiko pasaran sampingan: Perdagangan kerap di pasaran terhad julat boleh menyebabkan kerugian
  2. Risiko lipatan: Lipatan yang ketara boleh berlaku semasa turun naik pasaran yang tinggi
  3. Risiko pembalikan trend: Stop-loss mungkin tidak mencetuskan dengan cepat semasa pembalikan trend tiba-tiba
  4. Risiko pengoptimuman parameter: Pengoptimuman berlebihan boleh membawa kepada strategi yang terlalu sesuai
  5. Risiko sistemik: Eksposur kepada risiko sistemik semasa keadaan pasaran yang melampau

Arahan Pengoptimuman Strategi

  1. Menggabungkan penunjuk jumlah: mengesahkan keabsahan trend melalui analisis jumlah
  2. Mengoptimumkan mekanisme stop-loss: Pertimbangkan untuk melaksanakan hentian trailing atau hentian dinamik berasaskan ATR
  3. Tambah penapis trend: Mengintegrasikan penunjuk kekuatan trend untuk menapis isyarat lemah
  4. Meningkatkan pengurusan kedudukan: Sesuaikan saiz kedudukan secara dinamik berdasarkan kekuatan trend
  5. Melaksanakan kawalan pengeluaran: Tetapkan had pengeluaran maksimum untuk menghentikan perdagangan apabila ambang dicapai

Ringkasan

Strategi ini menangkap trend melalui persilangan purata bergerak sambil menguruskan risiko melalui mekanisme stop-loss dan mengambil keuntungan, menunjukkan reka bentuk yang baik dan ketegasan logik. Walaupun ia mungkin kurang berprestasi di pasaran yang berbeza, pengoptimuman yang dicadangkan dapat meningkatkan kestabilan dan keuntungan strategi. Strategi ini sesuai untuk pelabur jangka menengah hingga panjang yang mencari pulangan yang stabil.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-18 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA110/200 Cross with Stop-Loss and Take-Profit", overlay=true)

// 定义EMA110和EMA200
ema110 = ta.ema(close, 110)
ema200 = ta.ema(close, 250)

// 画出EMA
plot(ema110, color=color.blue, title="EMA110")
plot(ema200, color=color.red, title="EMA200")

// 计算交叉信号
longCondition = ta.crossover(ema110, ema200)  // EMA110上穿EMA200,做多
shortCondition = ta.crossunder(ema110, ema200)  // EMA110下穿EMA200,做空

// 设置止损和止盈
stopLoss = 0.01  // 止损1%
takeProfit = 0.005  // 止盈0.5%

// 判断是否已有仓位
isLong = strategy.position_size > 0  // 当前是否为多头仓位
isShort = strategy.position_size < 0  // 当前是否为空头仓位

// 执行策略:做多时平空,做空时平多
if (longCondition and not isLong)  // 如果满足做多条件并且当前没有多头仓位
    if (isShort)  // 如果当前是空头仓位,先平空
        strategy.close("Short")
    strategy.entry("Long", strategy.long)  // 执行做多
    strategy.exit("Take Profit/Stop Loss", "Long", stop=close * (1 - stopLoss), limit=close * (1 + takeProfit))

if (shortCondition and not isShort)  // 如果满足做空条件并且当前没有空头仓位
    if (isLong)  // 如果当前是多头仓位,先平多
        strategy.close("Long")
    strategy.entry("Short", strategy.short)  // 执行做空
    strategy.exit("Take Profit/Stop Loss", "Short", stop=close * (1 + stopLoss), limit=close * (1 - takeProfit))

// 在表格中显示信号
var table myTable = table.new(position.top_right, 1, 1)
if (longCondition and not isLong)
    table.cell(myTable, 0, 0, "Buy Signal", text_color=color.green)
if (shortCondition and not isShort)
    table.cell(myTable, 0, 0, "Sell Signal", text_color=color.red)


Berkaitan

Lebih lanjut