
Strategi ini adalah sistem perdagangan pengesanan trend yang komprehensif, yang menggabungkan mekanisme pengesahan isyarat pelbagai indikator penyu ((Alligator), indikator goyah dinamik ((AO) dan indikator goyah percepatan ((AC)). Sistem ini mengenal pasti trend pasaran melalui persilangan dan pengesahan trend pelbagai indikator, dan bekerjasama dengan stop loss dinamik untuk menguruskan risiko, untuk mencapai kesan perdagangan yang terkawal.
Logik teras strategi berasaskan tiga komponen utama:
Keadaan yang mencetuskan pelbagai isyarat:
Strategi ini membina satu sistem perdagangan yang lengkap dengan menggunakan pelbagai petunjuk teknikal secara bersepadu. Sistem ini tidak hanya memberi perhatian kepada ketepatan isyarat, tetapi juga melindungi dana melalui pengurusan risiko yang ketat. Walaupun terdapat risiko ketinggalan tertentu, strategi ini dijangka dapat memperoleh prestasi yang lebih baik melalui arah pengoptimuman yang disyorkan.
/*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")