Il s'agit d'une stratégie de trading à court terme qui émet des signaux d'achat et de vente basés sur des variations de 0,5% du prix de clôture de Heikin-Ashi.
La logique de base de cette stratégie est la suivante:Aller long lorsque le prix de clôture de Heikin-Ashi augmente de 0,5% par rapport au chandelier précédent; aller court lorsque le prix de clôture de Heikin-Ashi chute de 0,5% par rapport au chandelier précédent.
En particulier, la stratégie calcule d'abord le pourcentage de variation entre le prix de clôture actuel et le prix de clôture précédent, c'est-à-direpriceChange = close / close[1] - 1
Si.priceChange >= 0.005
, un signal long est émis.priceChange <= -0.005
, un court signal est émis.
Lors de l'émission de signaux, la stratégie juge également s'il existe une position existante. Si déjà en position (longue ou courte), aucun signal ne sera répété. S'il n'y a pas de position, elle émettra des signaux de position ouverte en fonction des conditions d'achat ou de vente.
Pour finir,plotshape
est utilisé pour marquer les signaux d'achat et de vente sur le graphique.
Les principaux aspects pour optimiser cette stratégie:
En résumé, il s'agit d'une stratégie de trading à court terme très simple, bas paramètre, facile à comprendre. Il capte les changements de prix extrêmement rapidement, adapté pour les traders à haute fréquence. Mais aussi besoin de contrôler le nombre de transactions pour réduire les coûts. Avec plusieurs méthodes d'optimisation, il peut obtenir de meilleurs résultats.
/*backtest start: 2022-12-11 00:00:00 end: 2023-12-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Heikin-Ashi - Change 0.5% short Time Period", shorttitle="Heikin-Ashi - Change 0.5% short Time Period", overlay=true) // Calculate 0.5% price change priceChange = close / close[1] - 1 // Buy and Sell Signals buyp = priceChange >= 0.005 sellp = priceChange <= -0.005 // Initialize position and track the current position var int position = na // Strategy entry conditions buy_condition = buyp and (na(position) or position == -1) sell_condition = sellp and (na(position) or position == 1) if buy_condition strategy.entry("Buy", strategy.long) position := 1 if sell_condition strategy.entry("Sell", strategy.short) position := -1 // Plot Buy and Sell signals using plotshape plotshape(series=buy_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) plotshape(series=sell_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)