Version avancée du système de trading à prix moyen pondéré en fonction du volume et de la moyenne sans ombre de la ligne K

VWAP HA SL TP IST ATR
Date de création: 2025-02-21 14:49:07 Dernière modification: 2025-02-21 14:49:07
Copier: 0 Nombre de clics: 423
2
Suivre
319
Abonnés

Version avancée du système de trading à prix moyen pondéré en fonction du volume et de la moyenne sans ombre de la ligne K Version avancée du système de trading à prix moyen pondéré en fonction du volume et de la moyenne sans ombre de la ligne K

Aperçu

Il s’agit d’un système de négociation automatique basé sur une moyenne sans fil de la ligne K ((Heikin-Ashi) et un prix moyen pondéré par le volume de transaction ((VWAP)). La stratégie consiste à identifier des formes spécifiques de la ligne K, en combinaison avec VWAP comme support / résistance dynamique, pour effectuer des opérations d’achat et de vente dans le temps de négociation défini. Le système utilise un point de perte de stop fixe pour gérer le risque et forcer le plafonnement à des heures spécifiques par jour pour éviter le risque du jour au lendemain.

Principe de stratégie

La logique fondamentale de la stratégie repose sur les éléments clés suivants :

  1. L’utilisation de la ligne K Heikin-Ashi au lieu de la ligne K traditionnelle permet de mieux identifier les tendances du marché en calculant la moyenne des prix d’ouverture, des prix les plus élevés, des prix les plus bas et des prix de clôture.
  2. Conditions d’achat: La ligne verte Heikin-Ashi K est formée et le prix est placé au-dessus du VWAP.
  3. Conditions de vente: Une ligne rouge Heikin-Ashi K est formée et le prix est inférieur au VWAP.
  4. L’objectif est fixé à 50 points et le prix de revient est à zéro.
  5. La clôture obligatoire de toutes les positions non clôturées à 15:01.

Avantages stratégiques

  1. La combinaison de deux indicateurs techniques puissants, Heikin-Ashi et VWAP, améliore la fiabilité des signaux de négociation.
  2. Les requêtes sans fil assurent un signal de confirmation de tendance plus fort.
  3. Le point de rupture fixe du stop-loss contribue à un contrôle rigoureux des risques.
  4. Les stratégies de négociation au jour le jour évitent les risques du jour au lendemain.
  5. Le système est entièrement automatisé, ce qui réduit les interférences émotionnelles.

Risque stratégique

  1. Les points de stop-loss fixes peuvent ne pas être adaptés à toutes les conditions du marché, en particulier lorsque la volatilité change.
  2. La mise en place d’un délai de clôture obligatoire peut entraîner une perte de continuité.
  3. Les exigences strictes du sans-fil risquent de vous faire rater certaines opportunités de transactions efficaces.
  4. Il y a souvent de faux signaux dans les marchés de gré à gré.
  5. La valeur de référence du VWAP peut être réduite pendant les périodes de faible volume de transactions.

Orientation de l’optimisation de la stratégie

  1. L’introduction de l’ATR, qui ajuste dynamiquement le point d’arrêt de la perte, permet à la stratégie de mieux s’adapter à la volatilité du marché.
  2. Il a ajouté des filtres de tendance pour réduire les faux signaux dans les marchés horizontaux.
  3. Optimiser le temps de clôture, qui peut être ajusté en fonction de la dynamique des caractéristiques du marché
  4. Ajout d’un filtre de volume de transactions pour améliorer la fiabilité de l’indicateur VWAP.
  5. La mise en place d’une fonction de suivi des pertes pour une meilleure protection des bénéfices.

Résumer

La stratégie, combinant les indicateurs Heikin-Ashi et VWAP, a permis de construire un système de trading intraday robuste. Bien qu’il y ait de la place pour l’optimisation, le cadre de base est très pratique. Grâce à l’orientation de l’optimisation proposée, la stratégie est susceptible de mieux fonctionner dans différentes conditions de marché. L’accent est mis sur l’ajustement minutieux des paramètres en fonction des caractéristiques de chaque variété de trading.

Code source de la stratégie
/*backtest
start: 2024-07-16 00:00:00
end: 2025-02-19 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("Buy and Sell Signal with VWAP and Timed Exit", overlay=true)

// VWAP Calculation
vwap = ta.vwap(close)

// Heikin-Ashi Formula
var float heikin_open = na
var float heikin_close = na

heikin_open := na(heikin_open[1]) ? (open + close) / 2 : (heikin_open[1] + heikin_close[1]) / 2
heikin_close := (open + high + low + close) / 4
heikin_high = math.max(high, math.max(heikin_open, heikin_close))
heikin_low = math.min(low, math.min(heikin_open, heikin_close))

// Conditions for Sell (Red Heikin-Ashi with no upper shadow) and Buy (Green Heikin-Ashi with no lower shadow)
no_upper_shadow = heikin_high == math.max(heikin_open, heikin_close)
no_lower_shadow = heikin_low == math.min(heikin_open, heikin_close)

// Condition for red (sell) and green (buy) Heikin-Ashi candles
is_red_candle = heikin_close < heikin_open
is_green_candle = heikin_close > heikin_open

// Buy and Sell Signal Conditions
sell_signal = is_red_candle and no_upper_shadow and close < vwap
buy_signal = is_green_candle and no_lower_shadow and close > vwap

// Check current time (for 15:01 IST)
is_after_1501 = (hour == 15 and minute > 1) or (hour > 15)

// Check for open positions
open_sell_position = strategy.position_size < 0
open_buy_position = strategy.position_size > 0

// Trigger Sell order only if no open sell position exists and time is before 15:01, and price is below VWAP
if sell_signal and not open_sell_position and not is_after_1501
    strategy.entry("Sell", strategy.short)

// Trigger Buy order only if no open buy position exists and time is before 15:01, and price is above VWAP
if buy_signal and not open_buy_position and not is_after_1501
    strategy.entry("Buy", strategy.long)

// Define exit condition for Sell (opposite of Buy conditions)
exit_sell_condition = false

if open_sell_position
    entry_price = strategy.position_avg_price  // Get the average entry price for Sell
    current_price = close  // Current market price for Sell

    // Exit conditions for Sell
    exit_sell_condition := current_price > entry_price or entry_price - current_price >= 50

    // Exit if conditions are met
    if exit_sell_condition
        strategy.close("Sell")

// Define exit condition for Buy (opposite of Sell conditions)
exit_buy_condition = false

if open_buy_position
    entry_price = strategy.position_avg_price  // Get the average entry price for Buy
    current_price = close  // Current market price for Buy

    // Exit conditions for Buy
    exit_buy_condition := current_price < entry_price or current_price - entry_price >= 50

    // Exit if conditions are met
    if exit_buy_condition
        strategy.close("Buy")

// Exit at 15:01 IST for both Buy and Sell if not already exited
if (open_sell_position or open_buy_position) and (hour == 15 and minute == 1)
    strategy.close("Sell")
    strategy.close("Buy")

// Plot VWAP
plot(vwap, color=color.blue, linewidth=2, title="VWAP")

// Plot Heikin-Ashi Candles
plotcandle(heikin_open, heikin_high, heikin_low, heikin_close, color = is_red_candle ? color.red : (is_green_candle ? color.green : color.gray))

// Plot Sell signal on the chart
plotshape(sell_signal and not open_sell_position and not is_after_1501, style=shape.labeldown, location=location.abovebar, color=color.red, text="SELL", size=size.small)

// Plot Buy signal on the chart
plotshape(buy_signal and not open_buy_position and not is_after_1501, style=shape.labelup, location=location.belowbar, color=color.green, text="BUY", size=size.small)

// Plot Exit signals on the chart
plotshape(exit_sell_condition and open_sell_position, style=shape.labelup, location=location.belowbar, color=color.blue, text="EXIT SELL", size=size.small)
plotshape(exit_buy_condition and open_buy_position, style=shape.labeldown, location=location.abovebar, color=color.blue, text="EXIT BUY", size=size.small)