Code S&P500 – Bollinger Bounce

Bonjour,

 

Le S&P500 est un indice où il est plutôt facile de prendre position : il est haussier sur la plus grosse partie du temps.

De ce fait, j’ai eu l’idée de tenter quelques stratégies uniquement à l’achat. En voici une qui fonctionne bien.

 

Nous prenons positions à l‘ACHAT (uniquement) si :

  • la moyenne mobile 50 est supérieure à la moyenne mobile 120 (tendance haussière)
  • nous avons une clôture inférieure à la bande de Bollinger inférieure à 29 périodes

 

Nous revendons dès que le cours vient clôturer au-dessus de la bande de Bollinger inférieure.

Nous plaçons un stop loss à 3%

 

Quelques considérations :

Pourquoi 29 périodes pour la bande de Bollinger ?

Tout simplement parce que j’ai « suroptimisé » la stratégie, pour donner la meilleure performance brute. En fait, il faudrai mettre 30 périodes pour arrondir.

Ici sur la capture d’écran, le backtest a été effectué sans réinvestissement des gains, avec un profit factor très correct (> 4) : libre à vous de mettre un réinvestissement, ce qui nous conduit à un gain brut de 2549K.

Libre à vous de changer le levier en fonction du drawdown.

 

 

Voici le code du BACKTEST : 

 

DEFPARAM CumulateOrders = False

// TAILLE DES POSITIONS
LEVIER = 4
REINV = 0

IF REINV = 0 THEN
n = LEVIER
ELSIF REINV = 1 THEN
capital = 100000 + strategyprofit
n = (capital / 100000) * levier
ENDIF

// ACHAT
ca1 = close < BollingerDown[29](close)
ca2 = average[50](close) > average[120](close)

IF ca1 and ca2 THEN
BUY n shares at market
ENDIF

IF close > BollingerDown[29](close) THEN
sell at market
ENDIF

set stop %loss 3

.

.
.

Enfin, pour ceux qui souhaitent un descriptif détaillé, je suis heureux de vous offrir cette stratégie en ebook : 

 

 

Share Button