
Cette stratégie s’appelleStratégie de trading d’inversion de zone de prix adaptativeLa stratégie utilise l’indicateur Adaptive Price Zone (APZ) pour identifier une zone de prix et générer un signal de transaction en cas de rupture de cette zone. L’indicateur APZ est basé sur le calcul d’une moyenne mobile binaire et de la volatilité.
Cette stratégie s’applique principalement aux situations de choc, en particulier à la consolidation. Elle peut être utilisée pour les transactions sur courte durée ou dans le cadre d’un système de négociation automatique, et s’applique à tous les actifs négociables.
La stratégie utilise l’indicateur APZ pour déterminer les zones de prix, et les méthodes de calcul sont les suivantes:
La trajectoire ascendante et descendante ainsi obtenue constitue une zone de prix adaptatif. Lorsque le prix franchit cette zone, un signal de transaction est généré. Les règles de jugement des signaux de rupture sont les suivantes:
En outre, cette stratégie fournit également un paramètre de commutation de transaction inverse. Après l’ouverture d’une transaction inverse, un signal de couverture plus élevé est contraire à la règle ci-dessus.
En résumé, cette stratégie utilise l’indicateur APZ pour déterminer les zones de prix adaptatives, générant un signal de reprise de la transaction lorsque les prix franchissent les limites de la zone, ce qui fait partie d’une stratégie typique de suivi du renversement de tendance.
Les principaux avantages de cette stratégie sont les suivants:
La stratégie présente également des risques, principalement dans les domaines suivants:
Les recommandations sont les suivantes:
Cette stratégie peut être optimisée dans les domaines suivants:
Cette stratégie est généralement une stratégie d’inversion de courte ligne, qui permet de capturer les zones de prix via l’indicateur APZ et de faire des transactions inversées près des frontières des zones. L’avantage de la stratégie est sa fréquence de négociation élevée, sa capacité à capturer plus d’opportunités de courte ligne et sa capacité à s’adapter à l’ajustement des zones de prix.
/*backtest
start: 2023-12-05 00:00:00
end: 2023-12-11 08:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 15/01/2020
//
// The adaptive price zone (APZ) is a volatility-based technical indicator that helps investors
// identify possible market turning points, which can be especially useful in a sideways-moving
// market. It was created by technical analyst Lee Leibfarth in the article “Identify the
// Turning Point: Trading With An Adaptive Price Zone,” which appeared in the September 2006 issue
// of the journal Technical Analysis of Stocks and Commodities.
// This indicator attempts to signal significant price movements by using a set of bands based on
// short-term, double-smoothed exponential moving averages that lag only slightly behind price changes.
// It can help short-term investors and day traders profit in volatile markets by signaling price
// reversal points, which can indicate potentially lucrative times to buy or sell. The APZ can be
// implemented as part of an automated trading system and can be applied to the charts of all tradeable assets.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Adaptive Price Zone Backtest", shorttitle="APZ", overlay = true)
nPeriods = input(20, minval=1)
nBandPct = input(2, minval=0)
reverse = input(false, title="Trade reverse")
xHL = high - low
nP = ceil(sqrt(nPeriods))
xVal1 = ema(ema(close,nP), nP)
xVal2 = ema(ema(xHL,nP), nP)
UpBand = nBandPct * xVal2 + xVal1
DnBand = xVal1 - nBandPct * xVal2
pos = 0
pos := iff(low < DnBand , 1,
iff(high > UpBand, -1, pos[1]))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )