
L’idée principale de cette stratégie est d’acheter lorsque les prix rebondissent près des EMA dans une tendance haussière et de vendre lorsque les prix rebondissent près des EMA dans une tendance baissière, afin de capturer les principales tendances de prix.
Au cœur de cette stratégie se trouve l’indicateur G-Channel, qui a été proposé pour la première fois par Andrew Guppy et qui permet de déterminer la direction de la tendance des prix actuels. L’indicateur G-Channel est composé d’une trajectoire ascendante, d’une trajectoire descendante et d’une moyenne.
Lorsque le cours de clôture atteint le sommet, cela signifie que la tendance haussière commence à se former; lorsque le cours de clôture atteint le bas, cela signifie que la tendance baissière commence à se former. Cette stratégie est utilisée.barssince()La fonction calcule le nombre de lignes K avant la dernière rupture à la hausse et la dernière rupture à la baisse, la direction la plus proche étant la direction de la tendance actuelle.
L’EMA est un indicateur de suivi de la tendance, qui a une distribution pondérée plus orientée vers les prix à court terme que la moyenne mobile simple, et est donc plus sensible aux changements de prix. Dans une tendance à la hausse, l’EMA est souvent situé en dessous des prix et joue un rôle de soutien; dans une tendance à la baisse, l’EMA est souvent situé au-dessus des prix et joue un rôle de pression.
La logique de négociation de cette stratégie est la suivante:
Cette article présente une stratégie de suivi de tendance basée sur l’indicateur G-Channel et l’indicateur EMA. Cette stratégie utilise le G-Channel pour déterminer avec précision la direction de la tendance actuelle du marché et pour saisir les opportunités d’achat et de vente lorsque le prix traverse l’EMA. L’avantage de la stratégie réside dans sa capacité de suivi de tendance forte et sa grande adaptabilité, mais il faut également se méfier des revirements de tendance, des paramètres incorrects et des risques liés aux événements Black Swan.
/*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)