17 avril 2021 17:24

Bases du trading algorithmique: concepts et exemples

Le trading algorithmique (également appelé trading automatisé, trading en boîte noire ou trading d’algo) utilise un programme informatique qui suit un ensemble défini d’instructions (un algorithme) pour effectuer une transaction. Le commerce, en théorie, peut générer des profits à une vitesse et à une fréquence impossibles pour un commerçant humain.

Les ensembles d’instructions définis sont basés sur le calendrier, le prix, la quantité ou tout autre modèle mathématique. Outre les opportunités de profit pour le trader, l’algo-trading rend les marchés plus liquides et le trading plus systématique en excluant l’impact des émotions humaines sur les activités de trading.

Trading algorithmique en pratique

Supposons qu’un commerçant respecte ces critères commerciaux simples:

  • Achetez 50 actions d’une action lorsque sa moyenne mobile sur 50 jours dépasse la moyenne mobile sur 200 jours. (Une moyenne mobile est une moyenne des points de données passés qui atténue les fluctuations de prix au jour le jour et identifie ainsi les tendances.) 
  • Vendez des actions de l’action lorsque sa moyenne mobile à 50 jours passe en dessous de la moyenne mobile à 200 jours.

En utilisant ces deux instructions simples, un programme informatique surveillera automatiquement le cours de l’action (et les indicateurs de moyenne mobile) et passera les ordres d’achat et de vente lorsque les conditions définies sont remplies. Le commerçant n’a plus besoin de surveiller les prix et les graphiques en direct ou de passer les commandes manuellement. Le système de trading algorithmique le fait automatiquement en identifiant correctement l’opportunité de trading.

2:01

Avantages du trading algorithmique

Algo-trading offre les avantages suivants:

  • Les transactions sont exécutées aux meilleurs prix possibles.
  • Le placement des ordres commerciaux est instantané et précis (il y a de fortes chances d’exécution aux niveaux souhaités).
  • Les transactions sont chronométrées correctement et instantanément pour éviter des changements de prix importants.
  • Réduction des coûts de transaction.
  • Contrôles automatisés simultanés sur plusieurs conditions de marché.
  • Réduction du risque d’erreurs manuelles lors du placement des transactions.
  • L’algo-trading peut être backtesté à l’aide des données historiques et en temps réel disponibles pour voir s’il s’agit d’une stratégie de trading viable.
  • Réduction de la possibilité d’erreurs de la part des commerçants humains en fonction de facteurs émotionnels et psychologiques.

Aujourd’hui, la plupart des échanges d’algo sont le trading haute fréquence (HFT), qui tente de capitaliser sur le placement d’un grand nombre d’ordres à des vitesses rapides sur plusieurs marchés et de multiples paramètres de décision basés sur des instructions préprogrammées.

Algo-trading est utilisé dans de nombreuses formes d’activités de trading et d’investissement, notamment:

  • Les investisseurs à moyen et long terme ou les entreprises du côté acheteur – fonds de pension, fonds communs de placement, compagnies d’assurance – utilisent l’algo-trading pour acheter des actions en grandes quantités lorsqu’ils ne veulent pas influencer le cours des actions avec des investissements discrets et de gros volumes.
  • Les traders à court terme et les acteurs de la vente – les teneurs de marché (tels que les maisons de courtage), les  spéculateurs et les arbitragistes – bénéficient de l’exécution automatisée des transactions; en outre, l’algo-trading aide à créer une liquidité suffisante pour les vendeurs sur le marché.
  • Traders systématiques – suiveurs de tendance, fonds spéculatifs ou  traders de paires  (une stratégie de trading neutre sur le marché qui correspond à une position longue avec une position courte sur une paire d’instruments hautement corrélés tels que deux actions, des fonds négociés en bourse (ETF) ou des devises) —Trouver qu’il est beaucoup plus efficace de programmer leurs règles commerciales et de laisser le programme se négocier automatiquement.

Le trading algorithmique offre une approche plus systématique du trading actif que les méthodes basées sur l’intuition ou l’instinct du trader.

Stratégies de trading algorithmique

Toute stratégie de trading algorithmique nécessite une opportunité identifiée qui est rentable en termes d’amélioration des revenus ou de réduction des coûts. Voici les stratégies de trading courantes utilisées dans le trading d’algo:

Stratégies de suivi des tendances

Les stratégies de trading algorithmiques les plus courantes suivent les tendances des moyennes mobiles, des ruptures de canaux, des mouvements de niveau de prix et des indicateurs techniques associés. Ce sont les stratégies les plus faciles et les plus simples à mettre en œuvre par le biais du trading algorithmique, car ces stratégies n’impliquent pas de prédictions ou de prévisions de prix. Les transactions sont initiées en fonction de l’apparition de tendances souhaitables, qui sont faciles et simples à mettre en œuvre grâce à des algorithmes sans entrer dans la complexité de l’analyse prédictive. L’utilisation de moyennes mobiles sur 50 et 200 jours est une stratégie populaire de suivi des tendances.

Opportunités d’arbitrage

L’achat d’une action à double cotation à un prix inférieur sur un marché et la vente simultanée à un prix plus élevé sur un autre marché offre le différentiel de prix sous forme de profit ou d’ arbitrage sans risque. La même opération peut être reproduite pour les actions par rapport aux instruments à terme, car des écarts de prix existent de temps à autre. La mise en œuvre d’un algorithme pour identifier ces écarts de prix et passer les commandes efficacement permet des opportunités rentables.

Rééquilibrage des fonds indiciels

Les fonds indiciels ont défini des périodes de rééquilibrage pour mettre leurs avoirs au même niveau que leurs indices de référence respectifs. Cela crée des opportunités rentables pour les traders algorithmiques, qui capitalisent sur les transactions attendues qui offrent des bénéfices de 20 à 80 points de base en fonction du nombre d’actions du fonds indiciel juste avant le rééquilibrage du fonds indiciel. Ces transactions sont initiées via des systèmes de trading algorithmiques pour une exécution rapide et les meilleurs prix.

Stratégies basées sur des modèles mathématiques

Des modèles mathématiques éprouvés, comme la stratégie de négociation delta neutre, permettent de négocier sur une combinaison d’options et du titre sous-jacent. (Delta neutre est une stratégie de portefeuille composée de positions multiples avec des deltas positifs et négatifs compensatoires – un ratio comparant la variation du prix d’un actif, généralement un titre négociable, à la variation correspondante du prix de son dérivé – de sorte que l’ensemble le delta des actifs en question est égal à zéro.)

Gamme de négociation (réversion moyenne)

La stratégie de réversion moyenne est basée sur le concept que les prix élevés et bas d’un actif sont un phénomène temporaire qui reviennent périodiquement à leur valeur moyenne (valeur moyenne). L’identification et la définition d’une fourchette de prix et la mise en œuvre d’un algorithme basé sur celle-ci permettent de placer automatiquement les transactions lorsque le prix d’un actif entre et sort de sa fourchette définie.

Prix ​​moyen pondéré en fonction du volume (VWAP)

La stratégie de prix moyen pondéré en fonction du volume décompose une commande importante et libère sur le marché de plus petits morceaux déterminés dynamiquement à l’aide de profils de volume historiques spécifiques aux actions. L’objectif est d’exécuter l’ordre au voisinage du prix moyen pondéré en volume (VWAP).

Prix ​​moyen pondéré dans le temps (TWAP)

La stratégie de prix moyen pondéré dans le temps divise une commande importante et libère sur le marché de plus petits morceaux déterminés de manière dynamique en utilisant des intervalles de temps uniformément répartis entre une heure de début et une heure de fin. L’objectif est d’exécuter l’ordre à un niveau proche du prix moyen entre les heures de début et de fin, minimisant ainsi l’impact sur le marché.

Pourcentage de volume (POV)

Jusqu’à ce que l’ordre commercial soit entièrement exécuté, cet algorithme continue d’envoyer des ordres partiels en fonction du taux de participation défini et en fonction du volume négocié sur les marchés. La «stratégie par étapes» associée envoie des ordres à un pourcentage défini par l’utilisateur des volumes du marché et augmente ou diminue ce taux de participation lorsque le cours de l’action atteint des niveaux définis par l’utilisateur.

Déficit de mise en œuvre

La stratégie d’ implémentation de déficit vise à minimiser le coût d’exécution d’un ordre en négociant sur le marché en temps réel, ce qui permet d’économiser sur le coût de l’ordre et de bénéficier du coût d’opportunité d’une exécution retardée. La stratégie augmentera le taux de participation ciblé lorsque le cours de l’action évolue favorablement et le diminuera lorsque le cours de l’action évoluera de manière défavorable.

Au-delà des algorithmes de trading habituels

Il existe quelques classes spéciales d’algorithmes qui tentent d’identifier les «événements» de l’autre côté. Ces «algorithmes de reniflage» – utilisés, par exemple, par un market maker côté vendeur – ont l’intelligence intégrée pour identifier l’existence de tout algorithme du côté achat d’une commande importante. Une telle détection au moyen d’algorithmes aidera le market maker à identifier les opportunités de commandes importantes et leur permettra d’en tirer profit en exécutant les commandes à un prix plus élevé. Ceci est parfois identifié comme un front-running high-tech.

Exigences techniques pour le trading algorithmique

La mise en œuvre de l’algorithme à l’aide d’un programme informatique est le dernier composant du trading algorithmique, accompagné de  backtesting  (tester l’algorithme sur des périodes historiques de performances boursières passées pour voir si son utilisation aurait été rentable). L’enjeu est de transformer la stratégie identifiée en un processus informatisé intégré ayant accès à un compte de trading pour passer des ordres. Voici les conditions requises pour le trading algorithmique:

  • Connaissances en programmation informatique pour programmer la stratégie de trading requise, les programmeurs embauchés ou les logiciels de trading préfabriqués.
  • Connectivité réseau et accès aux plateformes de trading pour passer des commandes.
  • Accès aux flux de données de marché qui seront surveillés par l’algorithme pour les opportunités de passer des commandes.
  • La capacité et l’infrastructure de backtester le système une fois qu’il est construit avant sa mise en service sur les marchés réels.
  • Données historiques disponibles pour le backtesting en fonction de la complexité des règles implémentées dans l’algorithme.

Un exemple de trading algorithmique

Royal Dutch Shell (RDS) est cotée à la Bourse d’Amsterdam (AEX) et à la Bourse de Londres (LSE). Nous commençons par construire un algorithme pour identifier les opportunités d’arbitrage. Voici quelques observations intéressantes:

  • AEX se négocie en euros tandis que LSE se négocie en livre sterling britannique.
  • En raison du décalage horaire d’une heure, AEX ouvre une heure plus tôt que LSE, puis les deux bourses se négocient simultanément pendant les prochaines heures, puis se négocient uniquement dans LSE au cours de la dernière heure à la fermeture d’AEX.

Pouvons-nous explorer la possibilité d’un arbitrage sur l’action Royal Dutch Shell cotée sur ces deux marchés dans deux devises différentes?

Conditions:

  • Un programme informatique capable de lire les prix actuels du marché.
  • Les prix sont fournis à la fois par LSE et AEX.
  • Un flux de taux de change (devises) pour GBP-EUR.
  • Capacité de passation de commande qui peut acheminer la commande vers le bon échange.
  • Capacité de backtesting sur les flux de prix historiques.

Le programme informatique doit effectuer les opérations suivantes:

  • Lisez le flux de prix entrant des actions RDS des deux bourses.
  • En utilisant les taux de change disponibles, convertissez le prix d’une devise en une autre.
  • S’il y a un écart de prix suffisamment important (actualisation des frais de courtage) conduisant à une opportunité rentable, le programme doit alors placer l’ordre d’achat sur la bourse la moins chère et vendre l’ordre sur la bourse la plus chère.
  • Si les ordres sont exécutés comme souhaité, le profit d’arbitrage suivra.

Simple et facile! Cependant, la pratique du trading algorithmique n’est pas si simple à maintenir et à exécuter. N’oubliez pas que si un investisseur peut effectuer une transaction générée par algo, les autres acteurs du marché le peuvent également. Par conséquent, les prix fluctuent en millisecondes et même en microsecondes. Dans l’exemple ci-dessus, que se passe-t-il si une transaction d’achat est exécutée mais que la transaction de vente ne le fait pas parce que les prix de vente changent au moment où l’ordre arrive sur le marché? Le trader se retrouvera avec une position ouverte rendant la stratégie d’arbitrage sans valeur.

Il existe des risques et des défis supplémentaires tels que les risques de défaillance du système, les erreurs de connectivité réseau, les délais entre les ordres commerciaux et l’exécution et, surtout, les algorithmes imparfaits. Plus un algorithme est complexe, plus un backtesting est nécessaire avant sa mise en œuvre.