Sumber daya yang dimuat... Pemuatan...

Trend Momentum Crossover Multi-Indicator Mengikuti Strategi dengan Sistem Take-Profit dan Stop-Loss yang Dioptimalkan

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

img

Gambaran umum

Strategi ini adalah sistem perdagangan trend-mengikuti yang komprehensif yang menggabungkan beberapa mekanisme konfirmasi sinyal termasuk indikator Alligator, Awesome Oscillator (AO), dan Accelerator Oscillator (AC). Sistem mengidentifikasi tren pasar melalui beberapa crossover indikator dan konfirmasi tren, ditambah dengan mekanisme take profit dan stop-loss dinamis untuk manajemen risiko.

Prinsip Strategi

Logika inti didasarkan pada tiga komponen utama:

  1. Sistem Buaya: Menggunakan moving average dari periode yang berbeda (13/8/5), mengkonfirmasi arah tren melalui persilangan garis Bibir dan Gigi.
  2. Sistem Konfirmasi Momentum: Menggabungkan indikator AO dan AC, mengkonfirmasi kekuatan tren melalui nilai positif/negatif mereka.
  3. Sistem Manajemen Risiko: Menggunakan pengaturan stop-loss dinamis berdasarkan titik tinggi/rendah 5 periode, dengan rasio risiko-manfaat 1:2 untuk tingkat take-profit.

Kondisi pemicu sinyal ganda:

  • Long Entry: bibir bersilang di atas Gigi + Positif AO + Positif AC
  • Entry singkat: bibir bersilang di bawah gigi + AO negatif + AC negatif

Keuntungan Strategi

  1. Mekanisme konfirmasi sinyal ganda mengurangi risiko kebocoran palsu.
  2. Pengaturan stop loss dinamis beradaptasi dengan perubahan volatilitas pasar.
  3. Rasio risiko-manfaat tetap membantu dalam profitabilitas stabil jangka panjang.
  4. Kombinasi indikator mempertimbangkan tren dan momentum, meningkatkan akurasi perdagangan.
  5. Tingkat otomatisasi sistem yang tinggi mengurangi gangguan penilaian subjektif.

Risiko Strategi

  1. Berbagai indikator dapat menyebabkan sinyal tertunda, kehilangan titik masuk yang optimal.
  2. Dapat menghasilkan sinyal palsu yang sering terjadi di berbagai pasar.
  3. Rasio risiko-manfaat tetap mungkin tidak sesuai dengan semua kondisi pasar.
  4. Stop loss dinamis dapat memicu volatilitas yang meningkat terlalu dini.

Arah Optimasi Strategi

  1. Memperkenalkan mekanisme adaptasi volatilitas untuk penyesuaian rasio risiko-manfaat yang dinamis.
  2. Tambahkan filter kekuatan tren untuk menghindari perdagangan di lingkungan tren yang lemah.
  3. Mengembangkan sistem klasifikasi kondisi pasar untuk optimasi parameter.
  4. Menggabungkan mekanisme konfirmasi volume untuk meningkatkan keandalan sinyal.
  5. Pertimbangkan untuk menerapkan filter waktu untuk menghindari periode perdagangan yang tidak efisien.

Ringkasan

Strategi ini menetapkan sistem perdagangan yang lengkap melalui penggunaan komprehensif dari beberapa indikator teknis. Sistem ini menekankan tidak hanya akurasi sinyal tetapi juga manajemen risiko yang ketat untuk perlindungan modal. Meskipun ada risiko lag tertentu, strategi ini menunjukkan janji untuk kinerja yang lebih baik melalui arah optimasi yang disarankan. Ini cocok untuk investor yang mencari pengembalian 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 banyak