L'investisseur en Bourse a besoin de solutions efficaces pour construire et gérer son portefeuille : détection des tendances de marché, recherche des retournements de tendance, sélection des opportunités, valeurs à fort potentiel, etc..
La recherche
systématique de valeurs boursières répondant à certains critères serait fastidieuse, voire impossible en pratique, sans un ordinateur et des outils informatiques appropriés.
La recherche
automatisée de valeurs (
screening) est réalisable avec
IsoBourse à partir des données historiques connues (cours et volumes) et des indicateurs mathématiques et statistiques intégrés dans le logiciel (moyennes mobiles, momentum, Pression
IsoBourse ©, etc.).
Cette recherche dont le processus est automatique est notamment utilisée dans la modélisation financière (
backtesting) avec le logiciel
IsoBacktest afin d’évaluer les caractéristiques d'une stratégie d'investissement (rentabilité, risque, etc.) sur un univers de plusieurs centaines de valeurs et sur un historique de plusieurs années.
Mais pour rendre possible une recherche automatisée, les critères de sélection doivent être exprimés dans un langage de
programmation compréhensible pour un ordinateur.
Quelle serait, par exemple, la programmation
IsoBourse permettant de détecter la figure de retournement encadrée ci-dessous :
Nous recherchons les valeurs dont les cinq dernières périodes de cotation sont constituées de deux bougies rouges (baissières) suivies de trois bougies blanches (haussières).
Par définition, une bougie est baissière si son cours de clôture est inférieur à son cours d’ouverture, ce qui se traduit dans le langage de programmation
IsoBourse par :
Code :
close[0] < open[0]
Où [0] fait référence à une dernière période connue, [1] à la période précédente, etc..
Inversement, une bougie est haussière si son cours de clôture est supérieur à son cours d’ouverture :
Code :
close[0] > open[0]
Pour exprimer que les trois dernières bougies sont haussières, on écrira donc :
Code :
close[0] > open[0]
et
close[1] > open[1]
et
close[2] > open[2]
Pour que les trois précédentes bougies soient baissières, il suffira d’écrire :
Code :
close[3] < open[3]
et
close[4] < open[4]
Pour que les bougies haussières soient de taille croissante :
Code :
( close[0] - open[0] ) > ( close[1] - open[1] )
et
( close[1] - open[1] ) > ( close[2] - open[2] )
Il est même possible d'imposer une augmentation progressive de la hausse des cours. Appelons
C,
B,
A les trois dernières bougies haussières consécutives (de période respective 2, 1, 0). Nous souhaitons que le cours de clôture de
A soit situé à plus de 10% du cours de clôture de
B, soit :
Code :
( close[0] - close[1] ) / close[1] > 0.10
Et que le cours de clôture de
B soit situé à moins de 10% du cours de clôture de
C :
Code :
( close[1] - close[2] ) / close[2] < 0.10
Voici l’intégralité de la programmation de l'exemple ci-dessus :
Code :
close[0] > open[0]
et
close[1] > open[1]
et
close[2] > open[2]
et
close[3] < open[3]
et
close[4] < open[4]
et
( close[0] - open[0] ) > ( close[1] - open[1] )
et
( close[1] - open[1] ) > ( close[2] - open[2] )
et
( close[0] - close[1] ) / close[1] > 0.10
et
( close[1] - close[2] ) / close[2] < 0.10
Plus concrètement, voici cette même programmation dans le screening
IsoBourse :
Cet exemple de programmation montre que, contrairement à une idée reçue, la compréhension d’un langage de programmation n’est pas réservée à une élite. Quelques lignes de code peuvent suffire à construire un filtre efficace dès lors que celui-ci est basé sur une description précise du besoin.
Pour aller plus loin avec la
programmation et le
backtesting, vous pouvez consulter la
documentation, suivre une
formation en ligne ou parcourir les rubriques
programmation et
backtesting. Vous pouvez aussi utiliser le service de
Programmation à la demande pour créer vos stratégies d’investissement avec
IsoBourse ou le service de
Backtesting à la demande pour tester vos stratégies d’investissement avec
IsoBacktest.
Avertissement : La société IsoBourse informe le lecteur que les données sont fournies uniquement à titre d'information et que les opérations sur les marchés financiers comportent des risques. Le lecteur s'engage à avoir la capacité juridique et se reconnaît seul responsable de ses actes. De ce fait, la responsabilité de la société IsoBourse, de ses dirigeants et associés ne saurait être engagée en cas d'erreurs, d'omission, d'investissement inopportun ou en cas de force majeure, d'évènements indépendants de la volonté de la société.