Code « Fractales de Bill Williams »

Bonjour à tous,

 

Quelques uns d’entre vous m’ont demandé des précisions sur des stratégies de scalping / day trading à partir des fractales de Bill Williams.
J’ai aussi essayé de backtester des stratégies à base de fractale, mais je ne disposais pas du code.

En effet, les stratégies de breakouts ou rebonds sur les fractales sont très prisées.

Une fractale se construit très simplement, il est donc facile de la coder.

 

Voici une explication d’une fractale, sur 5 bougies (paramètres par défaut) :

 

Il s’agit donc d’une bougie dont le plus haut (ou le plus bas) est plus haut (ou plus bas) que celui des 2 autres bougies qui l’entourent.

Tout simplement !

Libre à vous évidemment de modifier le nombre de bougies concerné (« Ncandles » dans le code).

 

EDIT : 

j’ai découvert par la suite que d’autres utilisaient déjà un code de fractales de Bill Williams, qui est strictement équivalent (même si codé légèrement différemment). Je préfère utiliser le mien, que j’ai programmé moi-même et que par conséquent je comprends plus facilement.

 

Voici ce que vous donne le graphique (les bornes bleues représentent le niveau de la dernière fractale).

 

Voici le code de l’INDICATEUR

(à insérer au niveau du graphique principal) :

 

// Code : Fractales
// www.doctrading.fr

// Nombres de bougies constituant la fractale (impair)
// libre à vous de changer ce nombre, qui doit être impair
Ncandles = 5

// Nombres de bougies de chaque côté de la bougie extrême
Nside = (Ncandles - 1) / 2

// Définition de la fractale supérieure
IF high[Nside] >= highest[Ncandles](high) THEN
Fup = high[Nside]
ENDIF

// Définition de la fractale inférieure
IF low[Nside] <= lowest[Ncandles](low) THEN
Fdown = low[Nside]
ENDIF

Return Fup as "Fractale UP", Fdown as "Fractale DOWN"

 

 

MISE A JOUR du 13 mai 2017

 

Pour une meilleure visualisation, j’ai implanté un code qui ajoute également les FLECHES au niveau des fractales :

 

A noter que ce code bugge pour des fractales à 3 bougies (« Ncandles = 3)

 

 

Voici le code de l’INDICATEUR

(à insérer au niveau du graphique principal) :

 

// Code : Fractales
// www.doctrading.fr

// Visualisation des fractales avec flèches
Arrow = 0

// Nombres de bougies constituant la fractale (impair)
// libre à vous de changer ce nombre, qui doit être impair
Ncandles = 5
// Nombres de bougies de chaque côté de la bougie extrême
Nside = (Ncandles - 1) / 2

// Définition de la fractale supérieure
IF high[Nside] >= highest[Ncandles](high) THEN
Fup = high[Nside]
Arrow = -1
ENDIF

// Définition de la fractale inférieure
IF low[Nside] <= lowest[Ncandles](low) THEN
Fdown = low[Nside]
Arrow = 1
ENDIF

// Tracé des flèches
IF Arrow = 1 THEN
DRAWARROWUP(barindex[2],low[2]-Averagetruerange[5]/3)coloured(0,150,0)
ELSIF Arrow = -1 THEN
DRAWARROWDOWN(barindex[2],high[2]+Averagetruerange[5]/3)coloured(255,0,0)
ENDIF

Return Fup as "Fractale UP", Fdown as "Fractale DOWN"
Share Button