Apprentissage de systèmes de trading sur données semi synthétiques La suite de l'expérience sur les données aléatoires. On peut faire mieux, en exploitant cette liberté nouvelle, tout en restant proche des données de marchés, et c'est rassurant.
L’histoire en bref
L’expérience sur les données aléatoires utilisées en apprentissage ( mais sélectionnées par le logiciel Safir-Xp sous forme de trends établis parmi ces données) montre que les tendances de marchés peuvent être approximativement modélisées à partir de ces données. Ceci est une preuve indirecte que les marchés ne sont pas aléatoires, et que la logique floue est capable d’effectuer cette modélisation dans ces conditions hors normes, du moins partiellement.
Rien ne prouve que cette approche soit meilleure que celle classique consistant d’apprendre sur de vrais cours dont on réserve une partie pour les tests, mais les résultats significatifs obtenus permettent d’envisager des données hybrides, qui pourraient améliorer la fiabilité des systèmes de trading et de diminuer le risque d’overfitting, classique dans le cas de l’apprentissage normal sur de vraies données. ET dans tous les cas cela préserve jusqu’à la fin le caractère non vu des données de marché.
C’est ce qu’on se propose de tester ici avec TROIS séries chronologiques synthétiques en apprentissage et test
1-Une première approche consiste à utiliser pour l’apprentissage les données de marché en inversant les trends. Ainsi les données de marché retraitées sont quasiment non vues ( les hausses et baisses sont permutées) et le bruit du marché est globalement conservé. Cette approche-là, plus classique devrait convenir au plus grand nombre. On peut de plus rajouter un biais inverse sur les trends inversés, voir même une composante aléatoire sur ce biais, ce qui fait que les données de marché ainsi retravaillées augmentent sérieusement le nombre de données non vues pour l’apprentissage. L’expérience est faite en vidéo sur cette page.
2- En second , un compromis acceptable en utilisant cette fois pour l’apprentissage des données aléatoires biaisées – c’est-à-dire avec des trends générés aléatoirement- mais renforcés aléatoirement à la hausse ou à la baisse. Bien évidemment, le bruit du marché synthétique n’est pas le même que celui du marché cible. C’est à double tranchant, cela défavorise l’overfitting, mais permet de trouver des solutions plus audacieuses. De toute façon, vous jugerez en dernier ressort sur les données de marché. L’expérience sera faite également en vidéo das les mêmes conditions que la première.
3-Un troisième compromis proposé consiste cette fois à utiliser pour l’apprentissage des trends aléatoires alternés ( donc des zigzags d’amplitude aléatoire) auxquels on superpose le bruit résiduel réel du marché que l’on veut modéliser.
L’expérience est présentée à chaque fois en vidéo complète avec test sur données non vues.
I-La construction des données synthétiques d'apprentissage-
1- Données boursières semi-synthétiques (inversion de tendance + biais aléatoire)
Cette vidéo présente des données boursières semi-synthétiques obtenues en inversant les trends haussiers et baissiers de données réelles et ajoutant un biais baissier et /ou haussier paramétrable avec une composante aléatoire optionnelle.
Le bruit réel du marché est en partie conservé alors que les trends sont pour partie aléatoirement repositionnés et inversés.
Ces données fictives seront utilisées ensuite pour l’apprentissage et le test de systèmes de trading, tout en économisant le caractère non vu des données d’origine… qui restent non vues jusqu’au test final.
Voir la Vidéo
2- Données boursières semi-synthétiques (bruit du marché + trends aléatoires)
Cette vidéo présente des données boursières semi-synthétiques obtenues en ajoutant le bruit réel du marché à des trends parfaits de durée variable prédéfinie aléatoirement.
Ces données fictives seront utilisées ensuite pour l’apprentissage et le test de systèmes de trading.
Voir la Vidéo
3- Données boursières synthétiques générées aléatoirement, avec biais paramétrable
Cette vidéo présente des données boursières synthétiques obtenues définissant des barres OHLC classiques avec des générateurs aléatoires, et en ajoutant un biais baissier et /ou haussier paramétrable et une composante alternée, le tout de façon optionnelle.
Mis à part que les données issues de générateurs aléatoires, produites par du code informatique, n’ont pas le même niveau de qualité que celles issus d’enregistrements de comptage de désintégrations radioactives utilisées en 2004 (1 ), c’est sinon très similaire sur le principe.
Du fait de l’application d’un biais haussier ou baissier, les données boursières synthétiques résultantes ne sont plus aléatoires, mais c’est ce qu’on veut ici. Et en plus de pouvoir paramétrer le biais que l’on applique à ces données, on contrôle donc les données que l’on fabrique. Lesquelles n’ont ici comme en 2004 rien à voir avec les marchés boursiers.
Ces données fictives seront utilisées ensuite pour l’apprentissage et le test de systèmes de trading, tout en économisant le caractère non vu des données boursières d’origine… qui restent non vues jusqu’au test final.
Voir la Vidéo
II- L'expérience en vidéo 4k : comparaison des apprentissages sur données synthétiques (1,2 et 3) et données réelles NASDAQ100 (2011-2015). Test sur données non vues NASDAQ100 (2015-2021)
Index de la vidéo
- Cliquez sur
mm:ss pour l’accès direct au chapitre - 0:00 Trois types de données synthétiques
- 0:55 #1-Données aléatoires avec biais haussier / baissier
- 1:56 #2- synthétiques par inversion des cours et biais
- 3:10 #3-Données synthétiques ( zigzag+ bruit du marché)
- 4:06 Utilisation dans 4 copies de SAFIR-Xp
- 4:30 Mise en place de la recherche automatique
- 8:05 Lancement de la recherche
- 8:45 Export des systèmes vers les bases de données
- 8:55 Base z1 (apprentissage sur données #1)
- 9:10 Base z2 (… sur données #2)
- 9:20 Base z3 (… sur données #3)
- 9:40 Base z4 (… sur données NASDAQ 2011-2015)
- 9:50 Donnés insuffisantes sur z4 (→rectification)
- 10:08 (Augmentation du nombre de barres sur z4)
- 11:49 Reprise de l’apprentissage sur z4
- 12:00 Examen des workspaces z1 z2 z3
- 14:10 Examen de z1
- 14:40 examen de z2
- 16:30 Examen de z3
- 17:50 Examen de z4 (terminé entretemps)
- 20:00 Examen des bases de données exportées
Voir la Vidéo
Traduction des sous-titres vidéo
Les vidéos sont sous-titrées en français.
Vous pouvez les traduire dans votre langue en les lisant dans YouTube ( Icône sous-titre activée).
- Cliquez dans la barre de tâche YouTube en bas à droite sur l'icône paramètres, puis sur
- Sous-Titres, puis sur
- Français généré automatiquement puis sur
- Traduire automatiquement et enfin
- Choisir votre langue dans le menu déroulant
Indexation des vidéos
Les vidéos de longue durée sont indexées ( segmentées) et accessible par un index.
Cet index se trouve :
Sur la page web du site s'il existe ( ce qui ouvrira la lecture dans YouTube à cet index).
Sur la vidéo lue sur YouTube, dans la description de la vidéo, sous le lien PLUS à la fin de la description. Il faut cliquer sur PLUS pour développer la description et pouvoir lire le menu index qui est sinon caché.
Sur la barre de progression de la vidéo ( time line) qui est segmentée selon les valeurs de l'index. Vous pouvez accéder à chaque chapitre en cliquant sur le segment correspondant. Une miniature apparaît au survol de chaque segment.