Sumber dimuat naik... memuat...

Trend Momentum Crossover Multi-Indikator Mengikuti Strategi dengan Sistem Amalan Keuntungan dan Hentian Kerugian yang Dioptimumkan

Penulis:ChaoZhang, Tarikh: 2024-12-05 16:21:07
Tag:SMAAOAC

img

Ringkasan

Strategi ini adalah sistem perdagangan trend berikut yang komprehensif yang menggabungkan pelbagai mekanisme pengesahan isyarat termasuk penunjuk Alligator, Awesome Oscillator (AO), dan Accelerator Oscillator (AC). Sistem ini mengenal pasti trend pasaran melalui pelbagai penyambungan penunjuk dan pengesahan trend, ditambah dengan mekanisme mengambil keuntungan dan berhenti rugi dinamik untuk pengurusan risiko.

Prinsip Strategi

Logik teras adalah berdasarkan tiga komponen utama:

  1. Sistem Buaya: Menggunakan purata bergerak dari tempoh yang berbeza (13/8/5), mengesahkan arah trend melalui persilangan garis Bibir dan Gigi.
  2. Sistem Pengesahan Momentum: Menggabungkan penunjuk AO dan AC, mengesahkan kekuatan trend melalui nilai positif / negatif mereka.
  3. Sistem Pengurusan Risiko: Menggunakan tetapan stop-loss dinamik berdasarkan titik tinggi/rendah 5 tempoh, dengan nisbah risiko-balasan 1: 2 untuk tahap mengambil keuntungan.

Keadaan pemicu isyarat berbilang:

  • Long Entry: bibir bersilang di atas gigi + AO positif + AC positif
  • Entry ringkas: bibir bersilang di bawah gigi + AO negatif + AC negatif

Kelebihan Strategi

  1. Mekanisme pengesahan isyarat berbilang mengurangkan risiko pecah palsu.
  2. Tetapan stop-loss dinamik disesuaikan dengan perubahan turun naik pasaran.
  3. Nisbah risiko-balasan tetap membantu dalam keuntungan yang stabil dalam jangka panjang.
  4. Gabungan penunjuk mempertimbangkan kedua-dua trend dan momentum, meningkatkan ketepatan perdagangan.
  5. Tahap automatik sistem yang tinggi mengurangkan gangguan penilaian subjektif.

Risiko Strategi

  1. Pelbagai penunjuk boleh menyebabkan isyarat tertunda, kehilangan titik masuk yang optimum.
  2. Boleh menghasilkan isyarat palsu yang kerap di pasaran yang berbeza.
  3. Nisbah risiko-balasan tetap mungkin tidak sesuai dengan semua keadaan pasaran.
  4. Stop-loss dinamik mungkin mencetuskan terlalu awal dalam peningkatan turun naik.

Arahan Pengoptimuman Strategi

  1. Memperkenalkan mekanisme penyesuaian turun naik untuk penyesuaian nisbah risiko-balasan dinamik.
  2. Tambah penapis kekuatan trend untuk mengelakkan perdagangan dalam persekitaran trend yang lemah.
  3. Membangunkan sistem klasifikasi keadaan pasaran untuk pengoptimuman parameter.
  4. Memasukkan mekanisme pengesahan jumlah untuk meningkatkan kebolehpercayaan isyarat.
  5. Pertimbangkan untuk melaksanakan penapis masa untuk mengelakkan tempoh perdagangan yang tidak cekap.

Ringkasan

Strategi ini menubuhkan sistem perdagangan yang lengkap melalui penggunaan komprehensif pelbagai penunjuk teknikal. Sistem ini menekankan bukan sahaja ketepatan isyarat tetapi juga pengurusan risiko yang ketat untuk perlindungan modal. Walaupun terdapat risiko kelewatan tertentu, strategi ini menunjukkan janji untuk prestasi yang lebih baik melalui arah pengoptimuman yang dicadangkan. Ia sesuai untuk pelabur yang mencari pulangan yang stabil.


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

//@version=5
strategy("Alligator with AO and AC Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// ---------------------------- Индикатор Аллигатор ----------------------------

// Параметры Аллигатора
jawLength = input.int(13, title="Jaw Length")
teethLength = input.int(8, title="Teeth Length")
lipsLength = input.int(5, title="Lips Length")

jawOffset = input.int(8, title="Jaw Offset")
teethOffset = input.int(5, title="Teeth Offset")
lipsOffset = input.int(3, title="Lips Offset")

// Расчёт скользящих средних
jawLine = ta.sma(close, jawLength)
teethLine = ta.sma(close, teethLength)
lipsLine = ta.sma(close, lipsLength)

// Сдвиг линий
jaw = jawLine[jawOffset]
teeth = teethLine[teethOffset]
lips = lipsLine[lipsOffset]

// Отображение линий Аллигатора
plot(jaw, color=color.blue, linewidth=2, title="Jaw (13,8)")
plot(teeth, color=color.red, linewidth=2, title="Teeth (8,5)")
plot(lips, color=color.green, linewidth=2, title="Lips (5,3)")

// ---------------------------- Awesome Oscillator (AO) ----------------------------

// Расчёт AO
medianPrice = (high + low) / 2
ao = ta.sma(medianPrice, 5) - ta.sma(medianPrice, 34)

// Отображение AO
hline(0, "Zero Line", color=color.gray)
plot(ao, title="Awesome Oscillator", color=(ao >= 0 ? color.green : color.red), style=plot.style_histogram, linewidth=2)

// ---------------------------- Accelerator Oscillator (AC) ----------------------------

// Расчёт AC
ac = ao - ta.sma(ao, 5)

// Отображение AC
plot(ac, title="Accelerator Oscillator", color=(ac >= 0 ? color.green : color.red), style=plot.style_histogram, linewidth=2)

// ---------------------------- Логика сигналов и управление позицией ----------------------------

// Условия для открытия длинной позиции
longCondition = ta.crossover(lips, teeth) and ao > 0 and ac > 0
if (longCondition)
    // Определение уровней stop-loss и take-profit
    stopLevel = ta.lowest(low, 5) // Минимум за последние 5 свечей
    takeProfit = close + (close - stopLevel) * 2 // Соотношение риска к прибыли 1:2

    // Открытие длинной позиции
    strategy.entry("Long", strategy.long)
    strategy.exit("Take Profit", "Long", limit=takeProfit, stop=stopLevel)

// Условия для открытия короткой позиции
shortCondition = ta.crossunder(lips, teeth) and ao < 0 and ac < 0
if (shortCondition)
    // Определение уровней stop-loss и take-profit
    stopLevelShort = ta.highest(high, 5) // Максимум за последние 5 свечей
    takeProfitShort = close - (stopLevelShort - close) * 2 // Соотношение риска к прибыли 1:2

    // Открытие короткой позиции
    strategy.entry("Short", strategy.short)
    strategy.exit("Take Profit Short", "Short", limit=takeProfitShort, stop=stopLevelShort)

// Отображение уровней на графике
plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")


Berkaitan

Lebih lanjut