Code « Little Turtle »

stratégie des tortues

 

J’ai eu l’idée de ce petit code en souhaitant mettre en place une stratégie qui rappelle celle des tortues : un breakout d’un dernier plus haut sur une période donnée.

Ici, le code est très simple, puisque nous prenons position en fonction du plus haut des 100 dernières périodes ; idem pour la sortie.

Vous pouvez bien sûr tester avec d’autres paramètres que la valeur « 100 », mais celle-ci me semble profitable sur la majorité des indices.

 

En effet, ce code est performant sur le CAC40 (83,3% de réussite, profit factor de 9,7 !), le DAX30, le S&P500, le NIKKEI, etc.

 

Après des semaines de travail, c’est finalement l’algorithme « Swing DAX » qui est le fruit de ce travail acharné. Il reprend ce principe, avec d’autres paramètres, et le résultat est époustouflant (5x plus de profit avec 2x moins de drawdown !!)

En attendant, je vous propose de tester ce mini-code, qui s’avère performant pour un investissement à long terme.

 

Little Turtle CAC40

 

Little Turtle DAX30

 

Little Turtle S&P500

 

Voici le code du backtest :

libre à vous de modifier la taille de position (« n = 2 ») en fonction du drawdown, de votre aversion au risque.

 

Defparam cumulateorders = false
n = 2
REM ACHAT
// Le + haut du jour dépasse le +haut des 100 jours précédents
ca1 = high > highest[100](high[1])
IF ca1 THEN
BUY n shares AT MARKET
ENDIF
REM SORTIE ACHAT
// Le + bas du jour dépasse le +bas des 100 jours précédents
ca2 = low < lowest[100](low[1])
IF ca2 THEN
SELL AT MARKET
ENDIF


Share Button