ProRealTime
Pour partager sur le trading automatique, nos algorithmes, nos backtests

Futur robot à l'imparfait

par Euraed » 22 Mar 2017 16:57

Bonjour,

Un fil pour prendre date, un fil d'Ariane pour les grandes étapes.
Je me lance dans la création d'un robot de trading qui à priori sera spécialisé Forex.

Je n'y vais pas seul, pour l'instant c'est en duo avec un chercheur/enseignant en informatique et intelligence artificielle. Jusqu'à il y a quelques jours, il n'y connaissait absolument rien en trading. J'ai corrompu son esprit :)

Deux motivations principales.
* Gagner, de l'argent bien entendu avec la possibilité d'atteindre d'autres objectifs personnels mais aussi la satisfaction de réussir un défi difficile.
* Epistémologique: Apprendre, comprendre, résoudre des problèmes complexes.

Nous nous lançons car nous envisageons être en mesure d'innover là où nombre de sentiers ou autoroutes sont déjà arpentés par des foules d'amateurs éclairés ou de pros.
Ainsi nous sommes tout à fait d'accord sur l'impérieuse nécessité d'aborder l'inattendu et parfois de transgresser.
L'avenir et les faits traceront la ligne de démarcation entre prétention stupide, rêve et ambition réaliste.

De temps à autres, je communiquerai sur la démarche, non sur les "axes de recherche", également sur quelques résultats, positifs ou négatifs.

A ce titre, notre première étape est de définir les grands axes que nous allons emprunter. J'ai posé quelques postulats, des contraintes contextuelles et suggéré une approche. L'architecture fonctionnelle générale est définie. Sur cette base je calcule actuellement les sous-objectifs concrets ainsi que les optimisations d'ores et déjà prévues (J'ai récupéré tous les ticks nécessaires ce qui me permet de tester des hypothèses)
En parallèle, nous nous renseignons sur ce qui a déjà été pratiqué, nous analysons et critiquons ce qui a pu ou pourrait marcher, ce qui semble erroné avec des vices de conception et hypothèses fragiles

Nous ne partons pas de mes propres pratiques de trading discrétionnaire, qui certes m'ont permis de réaliser des rendements satisfaisants depuis 2,5 ans, mais qui à mon sens ont l'inconvénient de nous enfermer dans un biais cognitif et de réduire l'horizon des possibles. Je trade essentiellement depuis un smartphone, avec des disponibilités irrégulières, des biais émotionnels et autres différences, le contexte et les ressources radicalement différents nécessitent ainsi une nouvelle interprétation.

Les "technos" (génétique, deep-learning , heuristiques etc) ne sont pas encore définis, ils ne sont encore à ce jour qu'une boîte à outils disponibles.Ce n'est pas une fin en soi mais un moyen. Nous les sélectionnerons en fonction des résultats de simulation préalables et objectifs intermédiaires.
A fortiori, idem pour les langages informatiques.
Le système se trouvera sur nos serveurs, en dehors de tout environnement broker ou plate-forme de trading, n'utilisant que les API d'échanges de data et de placement d'ordres.

A priori il va falloir plusieurs mois pour concevoir et réaliser le système, avec de nombreuses étapes d'hypothèses/essais/erreurs/corrections.

Petite cerise sur le gateau, en cas de succès nous avons prévu d'avoir une app dédiée sur smartphone pour piloter le robot à distance, au cas où malgré toutes les sécurités il se placerait en mode terminator du compte :D

Re: Futur robot à l'imparfait

par Jim » 22 Mar 2017 21:51

La route sera longue, mais je suis certain que le voyage sera passionnant. Bonne chance à vous !
Je suivrai cette file avec intérêt.

Sans indiscrétion, sur quelle(s) UT sera basé le(s) robot(s)? Quelle bases de données prévoyez-vous d'utiliser ?

Re: Futur robot à l'imparfait

par Euraed » 23 Mar 2017 03:40

Très probablement plusieurs UT, chacune comportant en quelque sorte une part de l'information.
Les données proviennent de mon broker (apprécié pour ses chocolats et sa neutralité) qui a sans doute un intérêt bien compris à ce que ses clients puissent s'engager vers des robots qui souvent génèreront plus de volume. J'y ai un accès direct depuis ma plate forme de trading.

Re: Futur robot à l'imparfait

par chad » 23 Mar 2017 04:11

au plaisir de vous suivre beau projet !

Re: Futur robot à l'imparfait

par BillyRayValentine » 23 Mar 2017 07:38

Un voyage fantastique et formateur.

Re: Futur robot à l'imparfait

par Euraed » 23 Mar 2017 13:30

Merci
Anecdote sur le chemin. Hier soir j'ai perdu presque une heure à lire et analyser un papier de recherche rédigé par 3 étudiants japonais. Une étude frelatée qui établissait un comparatif entre algorithme génétique et réseaux de neurone sur le forex. Hypothèses simplistes, certaines non justes, conclusions à l'emporte-pièce. Un réseau de neurone avec une fonction d'apprentissage, exprimée avec une jolie équation qui paraît très compliquée et fait très sérieux, mais qui disait en gros, quand ça monte, ça monte et quand ça baisse, ça baisse.
Rien qu'en lisant les hypothèses et la formalisation en équations on devinait ce qu'allait donner leur equity sur un an, bien en tendance, et des pertes importantes lors des retournements, avec une espèce de martingale pour accroître l'effet de la tendance et tenter de sortir flat si retournement. De toute évidence, selon le comportement global d'une paire sur l'année, les résultats étaient différents, mauvais ou corrects.

Mon objectif est de trouver une solution qui passe dans tout type de marché, range étroit, rupture de range, tendance etc (et limiter la casse en cas de black swan, donc règles de MM strictes)

Je rejoins entièrement le point de vue de Triplefail lorsqu'il exprime la nécessité d'évaluer la performance d'un robot en levier 1. En d'autres termes, combien de PIPs ou points, le robot va t'il pouvoir extraire du sous-jacent pour une durée t.
Et la grande question suivante, maintes fois exprimée sur le forum, est-ce fiable et reproductible sur un très long terme (au moins deux ans).

Re: Futur robot à l'imparfait

par Euraed » 25 Mar 2017 11:56

@swingwin
Bonjour,
après avoir lu tes posts dans diverses files sur matlab, je me suis intéressé au sujet.
Puis j'ai demandé à mon partenaire de jeu, s'il pensait que je devais installer le logiciel sur mon pc.
Comment dire... j'ai tout de même eu l'impression sur ce coup là qu'il me prenait pour un bizut. :musique:
Selon lui, ce n'est pas un outil pour informaticien, pas assez performant, des modules standards très bien faits mais standards. En intelligence artificielle l'évolution est très rapide...
Je peux l'installer si cela m'intéresse pour explorer et faire des pré-tests sur d'autres stratégies de trading que j'aurais à suggérer...
Donc en gros j'ai compris qu'à ses yeux Matlab est aux outils d'Intelligence Artifiielle ce qu'est Excel pour Matlab.
Je m'incline
Tu peux aller jeter un oeil aux frameworks google, microsoft etc... opensource.

Re: Futur robot à l'imparfait

par swingwin » 25 Mar 2017 13:42

Matlab n'est effectivement pas un outil d'intelligence artificielle à proprement parler, mais c'est un outil qui permet d'en faire et trés sérieusement. En cherchant bien sur le net, on doit pouvoir trouver des librairies déjà prêtes qui peuvent servir de base.
Il ne faut pas oublier que Matlab est un outil très professionnel, utilisé par tous les industriels sur des projets très complexes.
Au hasard de mes missions, je peux citer que Matlab est utilisé, sur de très gros projets dans l'automobile, le spatial, le militaire, l'industrie financière, etc... etc...
Je l'ai vu utilisé sur des projets de reconnaissance d'images et de la parole, des conduites de tir de missiles et de canon, de la modélisation et simulation de phénomènes complexes dans l'automobile, sur des simulations dans le domaine du spatial et du militaire.
Donc pour moi il n'y a pas photo, c'est un outil adéquat pour de la simulation, et du backtesting pour le trading.

Question performances c'est là que le bas blesse. Car Matlab est un langage interprêté (dû à son historique de conception). Mais par contre pour le calcul matriciel il n'y a pas plus perfomant actuellement sur le marché (car c'est sa misson de départ le calcul matriciel).
Mais le but de Matlab n'est pas obligatoirement d'être performant. C'est un outil de maquettage rapide pour faire des simulations.
et quand tout est testé et validé, il y a de la génération automatique de code qui permet de sortir des exécutables performants (qui n'auront plus besoin de Matlab pour tourner) pour lancer ces simulations en temps réeL.

Voili voilà. Et je pense que je n'en dirai pas plus sur mes travaux sous peine d'avoir des remontées de bretelles.

Re: Futur robot à l'imparfait

par Euraed » 30 Mar 2017 19:11

OK, merci
Je passe peu sur le forum, je ne trade plus beaucoup en discrétionnaire, beaucoup de temps passé à lire diverses sources.
Nous cherchons encore à identifier les pistes qui paraissent prometteuses avant d'écrire la première ligne de code.
Nous ferons l'essentiel sur mesure, peu de modules ou bouts de programme récupérés, à l'exception d'api de communication etc...
idem pour les back-tests, nous reconstruirons à notre sauce un outil de back test afin de pouvoir entrer à tout niveau de détail et selon l'angle qui nous intéresse afin de pouvoir mener tout type d'analyse.
Dans ce contexte d'analyse fine des fichiers de résultats, Matlab me serait probablement d'une belle aide.

Re: Futur robot à l'imparfait

par swingwin » 31 Mar 2017 08:43

Quand tu écris "nous", cela représente quoi ? Tu travailles en équipe ?

Sur le process que tu as décrit ci-dessus pour travailler, je suis complètement sur ce principe.
- chercher des idées,
- les maquetter rapidement et faire un premier backtest rapide pour voir si "il y a de l'idée" (c'est dans cette phase que Matlab m'est d'un grand secours, car le maquettage et les premiers résultats sont obtenus très rapidement). Mais j'utilise Matlab avec un très faible pourcentage de ses possibilités. Car je ne teste que des modèles très très simples.
- ensuite vient la phase de backtests précis si le modèle a passé la phase précédente et là j'utilise Matlab et C#
- ensuite vient la phase de mise en production et j'ai toujours les mêmes outils (Matlab, C#, Excel, ...) et j'utilise des modules ou librairies externes (perso ou trouvés sur le net) pour les interfaces vers les données et les brokers.

Articles en relation
mon robot, votre avis
par nememoris » 21 Aoû 2015 17:09 (4 Réponses)
Comprendre le fonctionnement d un robot
Fichier(s) joint(s) par nememoris » 02 Sep 2015 23:26 (7 Réponses)
Geronimo, mon robot scalper...
Fichier(s) joint(s) par Renaud-C » 11 Sep 2015 09:23 (27 Réponses)
Création d’un robot parfait
par Stochastic » 21 Oct 2015 00:11 (67 Réponses)

ProRealTime

Alors partagez-le 5 fois c'est bon pour la santé