
Il s’agit d’une stratégie de négociation de retour à la moyenne basée sur la moyenne pondérée des prix (VWAP) et le canal de la différence standard. Cette stratégie recherche des opportunités de négociation en identifiant le degré d’écart du prix par rapport au VWAP, en effectuant des transactions inversées lorsque le prix franchit la frontière du canal de la différence standard et en se stabilisant lorsque le prix revient au VWAP. Cette approche exploite pleinement les caractéristiques de retour à la moyenne du marché, combinant les principes de l’analyse technique et de la statistique.
Le cœur de la stratégie est de construire des zones de négociation en calculant le VWAP et la différence standard entre les fluctuations des prix. Les implémentations comprennent:
Il s’agit d’une stratégie neutre basée sur des principes statistiques qui capture les écarts et les retours des prix via le VWAP et le canal de l’écart standard. La stratégie a des caractéristiques objectives et systématiques, mais nécessite une attention particulière au contrôle des risques et à l’optimisation des paramètres dans les applications pratiques. La stabilité et la fiabilité de la stratégie peuvent être encore améliorées en ajoutant des filtres de tendance et en améliorant les mécanismes de contrôle des vents.
/*backtest
start: 2024-12-03 00:00:00
end: 2024-12-10 00:00:00
period: 1m
basePeriod: 1m
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/
// © jklonoskitrader
//@version=5
strategy("ETHUSD VWAP Fade Strategy", overlay=true)
// Input for standard deviation multiplier
std_multiplier = input.float(2.0, title="Standard Deviation Multiplier")
// Calculate cumulative VWAP
cumulative_pv = ta.cum(close * volume) // Cumulative price * volume
cumulative_vol = ta.cum(volume) // Cumulative volume
vwap = cumulative_pv / cumulative_vol // VWAP calculation
// Calculate standard deviation of the closing price
length = input.int(20, title="Standard Deviation Length")
std_dev = ta.stdev(close, length)
upper_band = vwap + std_multiplier * std_dev
lower_band = vwap - std_multiplier * std_dev
// Plot VWAP and its bands
plot(vwap, color=color.blue, linewidth=2, title="VWAP")
plot(upper_band, color=color.red, linewidth=1, title="Upper Band")
plot(lower_band, color=color.green, linewidth=1, title="Lower Band")
// Strategy conditions
go_long = ta.crossunder(close, lower_band)
go_short = ta.crossover(close, upper_band)
// Execute trades
if (go_long)
strategy.entry("Long", strategy.long)
if (go_short)
strategy.entry("Short", strategy.short)
// Exit strategy
if (strategy.position_size > 0 and close > vwap)
strategy.close("Long")
if (strategy.position_size < 0 and close < vwap)
strategy.close("Short")