
В этой статье представлена стратегия торговли с отслеживанием трендов на основе G-Channel и Index Moving Averages (EMA). Эта стратегия использует G-Channel для определения направления текущей рыночной тенденции и в сочетании с прохождением EMA для создания сигнала покупки и продажи. Основная идея этой стратегии заключается в том, чтобы покупать во время восходящего тренда, когда цена возвращается вблизи EMA, и продавать во время падения, когда цена отскакивает вблизи EMA, таким образом, захватывая основные ценовые тенденции.
В основе этой стратегии лежит индикатор G-Channel, который был впервые предложен Эндрю Гуппи и предназначен для определения направления тенденции текущего движения цен. Индикатор G-Channel состоит из восходящей, нисходящей и средней линий.
Когда ценовая позиция в конце торгового дня переходит вверх, это означает, что начинается восходящая тенденция; когда ценовая позиция в конце торгового дня переходит вниз, это означает, что начинается нисходящая тенденция.barssince()Функция вычисляет, сколько корней K-линии было до последнего взрыва вверх и до последнего взрыва вниз, причем направление, в котором произошел последний взрыв, является направлением текущего тренда.
EMA - это индикатор, отслеживающий тенденции, и его весовое распределение более склонно к недавним ценам, чем простая скользящая средняя, поэтому он более чувствителен к изменениям цен. В восходящих тенденциях EMA часто находится ниже цены и играет роль поддержки; в нисходящих тенденциях EMA часто находится выше цены и играет роль давления.
Логика сделки в этой стратегии выглядит следующим образом:
В данной статье представлена стратегия отслеживания трендов, основанная на показателях G-Channel и EMA. Эта стратегия использует G-Channel для точного определения направления текущей рыночной тенденции и использования в тренде возможностей для покупки и продажи, когда цена пересекает EMA. Преимущество стратегии заключается в ее сильной и адаптивной способности отслеживать тенденции, но в то же время она должна быть осторожна в отношении рисков, связанных с изменением тренда, неправильной параметровой настройкой и событиями черного слона.
/*backtest
start: 2023-03-05 00:00:00
end: 2024-03-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © jonathan_422
//@version=4
strategy("G-Channel and EMA Strategy", shorttitle="G-EMA Strategy", overlay=true)
// G-Channel settings
length = input(100)
src = input(close)
// Calculating G-Channel
a = 0.0
b = 0.0
a := max(src, nz(a[1])) - nz(a[1] - b[1]) / length
b := min(src, nz(b[1])) + nz(a[1] - b[1]) / length
avg = avg(a, b)
// EMA settings
emaLength = input(9, title="EMA Length")
ema = ema(close, emaLength)
// G-Channel buy/sell signals
crossup = b[1] < close[1] and b > close
crossdn = a[1] < close[1] and a > close
bullish = barssince(crossdn) <= barssince(crossup)
// Strategy logic
buySignal = bullish and close < ema
sellSignal = not bullish and close > ema
// Plotting
plot(ema, "EMA", color=color.orange)
plot(avg, "Average", color=color.blue)
// Plot buy/sell signals
plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// Strategy execution
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.close("Buy", when=sellSignal)