Stratégie de backtesting sophistiquée de l'oscillateur (AC) de Williams


Date de création: 2023-12-18 12:03:38 Dernière modification: 2023-12-18 12:03:38
Copier: 0 Nombre de clics: 751
1
Suivre
1621
Abonnés

Stratégie de backtesting sophistiquée de l’oscillateur (AC) de Williams

Aperçu

Cette stratégie est basée sur l’Awesome Oscillator (AO) du célèbre expert en trading Bill Williams, qui forme un indicateur de diagnostic des tendances et de la dynamique du marché en calculant la différence de la moyenne des prix sur différentes périodes et en concevant des signaux de négociation correspondants pour guider les achats et les ventes.

Principe de stratégie

L’indicateur central de cette stratégie est l’oscillateur subtil ((AO) dont la formule est: AO = SMA (moyenne du 5e jour) - SMA (moyenne du 34e jour) La formule extrait l’information sur la dynamique des prix des SMA de deux périodes différentes. En calculant la différence entre le SMA de la ligne rapide (le 5e jour) et le SMA de la ligne lente (le 34e jour), elle est utilisée comme signal d’achat lorsque la ligne rapide est supérieure à la ligne lente et comme signal de vente lorsque la ligne rapide est inférieure à la ligne lente.

Dans cette stratégie, un SMA de 5 jours a été effectué sur l’AO pour filtrer les signaux d’erreur. Un mode de retournement a été mis en place, permettant de réaliser différentes directions de négociation en inversant les signaux long/short. Lorsque la valeur de l’AO est supérieure à la précédente, elle est considérée comme une opportunité d’achat, marquée en colonnes bleues; lorsque la valeur de l’AO est inférieure à la précédente, elle est considérée comme une opportunité de vente, marquée en colonnes rouges.

Avantages stratégiques

  1. L’utilisation du cours moyen au lieu du cours de clôture permet de réduire l’impact des fausses ruptures sur les SMA et d’améliorer la stabilité.
  2. La combinaison rapide et rapide des SMA permet de saisir les changements du marché
  3. SMA double filtrage, suppression du bruit de haute fréquence, amélioration de la qualité du signal
  4. Paramètres flexibles pour s’adapter à différents environnements de marché
  5. Une colonne intuitive indique les points d’achat et de vente pour faciliter la prise de décision

Les risques et les solutions

  1. Évaluation prudente de la fréquence des fluctuations du marché et ajustement des paramètres pour éviter une suradaptation
  2. Il est possible de faire plusieurs erreurs dans un marché instable. Il est possible d’alléger la marge de stop ou de réduire la taille de la position.
  3. Les données de détection ne sont pas fiables, le réel peut être différent du simulé.

Direction d’optimisation

  1. Augmentation des filtres tels que les indicateurs de trafic pour améliorer la qualité du signal
  2. Ajout d’une stratégie d’arrêt des pertes pour contrôler les opérations de pertes individuelles
  3. Optimisation de la gestion des positions en fonction des fluctuations du marché
  4. Combiné à d’autres indicateurs pour déterminer la direction de la tendance et éviter un retournement de marché

Résumer

Cette stratégie utilise un oscillateur sophistiqué de la conception de la structure SMA rapide et lente pour diagnostiquer les changements de dynamique du marché. Les signaux d’achat et de vente sont intuitifs. Cependant, il est possible d’être affecté par les secousses et les retournements.

Code source de la stratégie
/*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=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 28/12/2016
//    This indicator plots the oscillator as a histogram where blue denotes 
//    periods suited for buying and red . for selling. If the current value 
//    of AO (Awesome Oscillator) is above previous, the period is considered 
//    suited for buying and the period is marked blue. If the AO value is not 
//    above previous, the period is considered suited for selling and the 
//    indicator marks it as red.
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy("Bill Williams. Awesome Oscillator (AC)")
nLengthSlow = input(34, minval=1, title="Length Slow")
nLengthFast = input(5, minval=1, title="Length Fast")
reverse = input(false, title="Trade reverse")
xSMA1_hl2 = sma(hl2, nLengthFast)
xSMA2_hl2 = sma(hl2, nLengthSlow)
xSMA1_SMA2 = xSMA1_hl2 - xSMA2_hl2
xSMA_hl2 = sma(xSMA1_SMA2, nLengthFast)
nRes =  xSMA1_SMA2 - xSMA_hl2
cClr = nRes > nRes[1] ? blue : red
pos = iff(nRes > nRes[1], 1,
	   iff(nRes < nRes[1], -1, nz(pos[1], 0))) 
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)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nRes, style=histogram, linewidth=1, color=cClr)