Bonjour, je partage un petit code ultra simple, basé sur la hausse naturelle de l’indice S&P 500.
Le signal d’achat n’est pas une combinaision d’indicateurs techniques, mais un horaire donné.
- Une position longue est prise à 4h du matin (heure de Paris).
- Un Stop Loss fixe à 0.9% du prix.
- Un Take Profit à 2 fois le Stop. Loss
- Si le Stop Loss ou Take Profit ne sont pas touchés, la position est clôturée à 22h en fin de scéance marché US.
- Un filtre utilisant une triple moyenne mobile exponentielle, permet de limiter le drawdown.
DEFPARAM CumulateOrders = false
risque = 200
perte = close * 0.9 / 100
nombre = risque / perte
timeframe(daily)
c1 = close > TEMA[16](close)
timeframe (1hour)
a = time = 040000
v = time = 220000
IF c1 and a THEN
BUY nombre CONTRACTS AT MARKET
SET STOP pLOSS perte
SET TARGET pPROFIT 2 * perte
ENDIF
IF v THEN
SELL AT MARKET
ENDIF
Le résultat me semble plutôt correct. A améliorer / personnaliser selon ses envies.
Bonjour Sylvain,
Merci beaucoup pour le partage, c’est encourageant.
Les résultats sont un peu moins bon si on ajoute le spread (ici 1 point seulement dans la première copie d’écran) et en utilisant le backtest en mode tick par tick (obligatoire pour vérifier l’impact des Takeprofit et Stoploss dans une bougie).
Si on monte un peu le spread (1.5 points) alors c’est déjà plus difficile, par ailleurs sans simulation du slippage qui aurait pu avoir lieu en temps réel (2ème copie d’écran).
En stratégie “long only” sur les indices, je pense qu’on peut se permettre d’augmenter son risque et également la taille du takeprofit, à tester ! 🙂