Comment automatiser une stratégie de trading manuel
Le trading automatisé ou algorithmique offre plusieurs avantages par rapport au trading manuel :
- Les systèmes automatisés éliminent la prise de décision émotionnelle et exécutent les trades avec une précision, une rapidité et une efficacité accrues.
- Les algorithmes mettent en œuvre de manière cohérente des stratégies de trading avancées tandis que les mesures de gestion des risques sont appliquées de manière fiable.
- Les algorithmes permettent de backtester les stratégies à l'aide de données historiques et de diversifier simultanément sur plusieurs actifs et marchés.
L'API cTrader Algo permet aux traders d'automatiser des stratégies manuelles complexes, leur permettant de capitaliser sur les nombreux avantages du trading algorithmique. Dans cet article et la vidéo qui l'accompagne, vous apprendrez à automatiser des stratégies manuelles complexes et à transformer des séquences d'opérations en algorithmes.
Identifier les modèles de stratégie manuelle
Pour développer un algorithme, supposons que nous tradons manuellement le modèle hammer pour les entrées longues et le modèle hanging man pour les entrées courtes.
Un hammer se produit pendant une tendance baissière et suggère un potentiel retournement haussier. Le modèle hammer est utilisé pour identifier les entrées d'achat.

Un hanging man apparaît pendant une tendance haussière et indique un potentiel retournement baissier. Le modèle hanging man est utilisé pour identifier les entrées de vente.

Développer un cBot pour trader la stratégie manuelle
Dans cTrader Algo, créons un algorithme qui met en œuvre la stratégie décrite dans la section précédente.
Cliquez sur le bouton Nouveau sous l'onglet cBot. Saisissez Patterns Strategy dans le champ du nom et cliquez sur Créer.

Dans la méthode OnBarClosed(), nous implémentons la logique de notre stratégie. Nos entrées doivent remplir ces deux conditions :
- Le cours de clôture correspond au cours le plus haut.
- La taille de la bougie est au moins cinq fois plus grande que le corps de la bougie.
Nous commençons par définir les paramètres Volume, StopLoss et TakeProfit.
1 2 3 4 5 6 7 8 | |
Ensuite, nous écrivons un extrait pour exécuter un trade d'achat lorsque les conditions requises sont remplies.
1 2 3 4 5 | |
1 2 3 | |
Du côté opposé, voici les conditions qui doivent être remplies pour nos entrées de vente :
- Le cours de clôture correspond au cours le plus bas.
- La taille de la bougie est au moins cinq fois plus grande que le corps de la bougie.
De même, nous écrivons un extrait pour exécuter un trade de vente lorsque les conditions requises sont remplies.
1 2 3 4 5 | |
1 2 | |
Vous pouvez copier le code complet ci-dessous :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | |
Pour créer le cBot, appuyez sur Ctrl+B ou cliquez sur Build.
Pour backtester le cBot, nous ajoutons d'abord une instance. Sélectionnez l'option Localement, spécifiez vos paramètres préférés et cliquez sur le bouton Ajouter une instance.

Nous naviguons ensuite vers l'onglet Backtesting, spécifions une période pour l'opération de backtesting et démarrons le backtesting.
Une fois le processus de backtesting terminé, nous pouvons inspecter les trades. Vous verrez que les conditions d'entrée sont remplies juste avant chaque entrée de trade.
Avec l'automatisation réussie de notre stratégie, nous pouvons utiliser le cBot pour effectuer des trades en notre nom.
Mettre en œuvre la stratégie de retournement RSI
Dans notre deuxième exemple, nous voulons mettre en œuvre une stratégie basée sur le retournement de l'indicateur Relative Strength Index (RSI). Dans cette stratégie, nous entrons en position en nous attendant à ce que le RSI inverse sa direction et suivons ces règles :
- Lorsque la valeur du RSI passe en dessous du seuil d'achat RSI, nous entrons en position d'achat.
- Lorsque la valeur du RSI passe au-dessus du seuil de vente RSI, nous entrons en position de vente.
Créons un nouveau cBot, saisissez RSI Reversal Strategy comme nom et cliquez sur Créer.

Une fois que l'éditeur de code apparaît, ajoutez System.Linq en haut du code comme référence.
1 | |
Ajoutons deux paramètres qui nous permettront de modifier les seuils avant d'exécuter le cBot.
1 2 3 4 5 | |
Nous déclarons et initialisons notre indicateur de force relative.
1 2 3 4 5 6 | |
1 2 3 | |
Nous mettons ensuite en œuvre les conditions qui définissent notre logique de trading.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
Vous pouvez copier le code complet ci-dessous :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | |
Construisons notre stratégie, ajoutons une instance et effectuons un backtest, comme nous l'avons fait avec la stratégie précédente.
Nous pouvons inspecter et examiner à nouveau certains trades pour voir les conditions d'entrée remplies juste avant l'entrée d'un trade.
Cet article a démontré comment identifier une stratégie manuelle et la convertir en une stratégie automatisée, permettant des opérations de trading algorithmique.
