
Strategi ini adalah sistem perdagangan pelacakan tren yang komprehensif, yang menggabungkan mekanisme konfirmasi sinyal ganda dari indikator penyu ((Alligator), indikator getaran dinamis ((AO) dan indikator getaran akselerasi ((AC)). Sistem ini mengidentifikasi tren pasar melalui penyeberangan dan konfirmasi tren dari beberapa indikator, dan bekerja dengan stop loss dinamis untuk mengelola risiko, untuk mencapai efek perdagangan yang dapat dikendalikan.
Logika inti dari strategi ini didasarkan pada tiga komponen utama:
Kondisi pemicu sinyal ganda:
Strategi ini membangun sistem perdagangan yang lengkap dengan menggunakan beberapa indikator teknis secara komprehensif. Sistem ini tidak hanya memperhatikan keakuratan sinyal, tetapi juga melindungi dana melalui manajemen risiko yang ketat. Meskipun ada risiko keterlambatan tertentu, strategi ini diharapkan untuk mendapatkan kinerja yang lebih baik dengan arah optimasi yang disarankan.
/*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")