[Stratégie algoritmique] Recrutement

Inscrit
10 Mai 2015
Messages
357
Reactions
47
#1
Salut tout le monde,


Il y a pas mal de temps j'ai développé un bot trading (pour les cryptomonnaies). On a une petite équipe mais on manque de développeur en ce qui concerne les stratégies algorithmiques. Si vous aimez le monde de la finance, les statistiques, la science des données etc. Je pense honnêtement dire que le projet est sympa. Actuellement j'essaie d'intégrer des stratégies avec python à l'aide de tensorflow pour le deep-learning et numpy/pandas/matplotlib pour le traitement des données. Même si j'ai pas encore l'habitude d'utiliser ces libraires j'obtiens des résultats plutôt pas mauvais.

Exemple : LINKUSDT

Screenshot_4.png

En rouge la stratégie
En bleu le buy and hold

Si vous êtes intéressé, envoyez moi un message privé.

PS : Je sais pas vraiment si c'est le bon endroit pour recruter qui que ce soit mais si en cas vous pouvez supprimer le sujet.
 
Dernière édition:
Inscrit
29 Juin 2017
Messages
22
Reactions
7
#2
Projet intéressant ma foie, mais j ai pas le niveau perso ^^'
 
Inscrit
27 Septembre 2017
Messages
4
Reactions
0
#3
Pourquoi utiliser tensorflow pour ça ?
 
Inscrit
10 Mai 2015
Messages
357
Reactions
47
#4
Pour le deep-learning, j'utilise un rnn
 
Inscrit
1 Octobre 2021
Messages
7
Reactions
3
#5
Pour le deep-learning, j'utilise un rnn
Un RNN ce n'est pas ce qui le plus adapté pour ce genre de problèmes. Par expérience, ce qui fonctionne le mieux dans ce genre de cas c'est les LSTM (je ne sais pas si c'est ça que t'entend par RNN mais voilaa). Je pourrais t'expliquer un peu plus en détail la nuance entre RNN et LSTM si tu veux.

Le problème dans ce genre de projet c'est les données en general, c'est pas évident de trouver des données fraiches sur lesquelles on peut faire des analyses/predictions en temps réel.

Ton projet m'a l'air plutôt intéressant et je voudrais bien y participer, je suis Data Engineer / Analyst. Je t'ai MP !
 
Inscrit
10 Juin 2018
Messages
6
Reactions
3
#6
Un RNN ce n'est pas ce qui le plus adapté pour ce genre de problèmes. Par expérience, ce qui fonctionne le mieux dans ce genre de cas c'est les LSTM (je ne sais pas si c'est ça que t'entend par RNN mais voilaa). Je pourrais t'expliquer un peu plus en détail la nuance entre RNN et LSTM si tu veux.
Un RNN est un Recurrent Neural Network, c'est à dire un réseau comprenant des couches utilisant la sortie précédentes comme entrée pour le pas de temps suivant. Les LSTM sont un exemple de telles couches, mais il en existe d'autres. Donc tu peux pas dire que les LSTM sont mieux qu'un RNN vu qu'un réseau comprenant des LSTM sera forcément un RNN.
 
Inscrit
1 Octobre 2021
Messages
7
Reactions
3
#7
Un RNN est un Recurrent Neural Network, c'est à dire un réseau comprenant des couches utilisant la sortie précédentes comme entrée pour le pas de temps suivant. Les LSTM sont un exemple de telles couches, mais il en existe d'autres. Donc tu peux pas dire que les LSTM sont mieux qu'un RNN vu qu'un réseau comprenant des LSTM sera forcément un RNN.
Je suis d'accord avec toi sur le fait que LSTM c'est un type de RNN.

Je pense qu'en lisant mon message tu te concentre plus sur la forme que sur le fond. Je ne dis pas que les LSTM sont totalement différents des RNN.

Ce que je dis c'est qu'un LSTM serait plus adapté à ce genre de problématique car ils permettent de stocker de l'information à long terme. Les RNN peuvent marcher mais sont très limité dans ce use case car le gradient de la fonction de perte décroît de manière exponentielle avec le temps (check le vanishing gradient problem) et les LSTM peuvent répondre à ce problème. (Check les articles https://arxiv.org/pdf/1412.3555.pdf et https://colah.github.io/posts/2015-08-Understanding-LSTMs/)
 
Inscrit
10 Juin 2018
Messages
6
Reactions
3
#8
Les RNN peuvent marcher mais sont très limité dans ce use case car le gradient de la fonction de perte décroît de manière exponentielle avec le temps (check le vanishing gradient problem) et les LSTM peuvent répondre à ce problème.
Un réseau avec des couches LSTM dedans EST un RNN. LSTM n'est pas un type de RNN, LSTM est une couche qui s'insère dans un réseau.

C'est comme si tu disais "les véhicules à moteur ne sont pas très adaptés pour se déplacer sur une route, essaie plutôt de regarder du côté des voitures".
 
Inscrit
1 Octobre 2021
Messages
7
Reactions
3
#9
Un réseau avec des couches LSTM dedans EST un RNN. LSTM n'est pas un type de RNN, LSTM est une couche qui s'insère dans un réseau.

C'est comme si tu disais "les véhicules à moteur ne sont pas très adaptés pour se déplacer sur une route, essaie plutôt de regarder du côté des voitures".
C'est un débat stérile qu'on a là mdrr on dit tout les deux la même chose mais on le dit de manière différentes, tu parles d'appellations des réseaux et moi je parle des nom des couches.
 
Inscrit
27 Avril 2019
Messages
4
Reactions
1
#10
Je veux pas faire mon rabat joie mais sur des échelles de temps aussi grandes ça revient à jouer à pile ou face (notion d'efficience de marché), même avec du deep-learning. Là ou tu peux gagner, c'est à petite échelle de temps en s'intéressant à la microstructure du marché, la dynamique des Orderbooks
 
Inscrit
10 Mai 2015
Messages
357
Reactions
47
#11
C'est bien pour cela qu'on a des stratégies sur une très petite timeframe. Cette stratégie par exemple ne fait qu'uniquement que shorter le marché et pourtant elle performe dans un marché haussier. 58% des trades sont gagnants avec un ratio risque/récompense > 1. En considérant des incertitudes sur nos trades nous considérons le ratio à 1.
1633978124714.png

Voici les résultats sur 2 mois de test en live levier x2 (+-100 trades)
1633978311099.png
La plus grosse chute a été provoquée par la première stratégie que j'ai présenté plus haut qui contenait pas de stop-loss. Nous avons par la suite pris la décision de la retirer.
 
Inscrit
27 Avril 2019
Messages
4
Reactions
1
#12
à vu de nez, le rapport entre toi et le marché oscille autour de 1 donc ça revient au même que de jouer aléatoirement, tu prends en compte les frais ? Très petite timeframe c'est à dire ? sec, ms ?
 
Inscrit
10 Mai 2015
Messages
357
Reactions
47
#13
à vu de nez, le rapport entre toi et le marché oscille autour de 1 donc ça revient au même que de jouer aléatoirement, tu prends en compte les frais ? Très petite timeframe c'est à dire ? sec, ms ?
Je pense que tu as pas bien compris la puissance de ce genre de stratégie, la stratégie short le marché uniquement et pourtant elle est rentable en période haussière. J'aurais bien voulu comprendre que tu puisses dire cela si c'était une stratégie long mais ce n'est pas le cas et quand bien même ça aurait été le cas, ce qui est important de regarder c'est le rapport rendement/risque et non juste le rendement.

Deuxième chose, étant donné que la stratégie utilise un stop-loss/takeprofit très serré nous pouvons utiliser un levier très élevé sans aucun risque de liquidation. Donc, à risque égal au buy and hold, la stratégie est extrêmement plus rentable.

Take profit à 2% et stop-loss à 1.5%, avec toutes les incertitudes je considère la perte à 1.7% et le gain à 1.7%, donc qu'un trade perdant l'est autant qu'un trade gagnant. Cette condition est très très bien respectée. Donc nos valeurs d'incertitudes sont bonnes jusqu'à présent.


1633983144886.png
 
Dernière édition:
Inscrit
27 Avril 2019
Messages
4
Reactions
1
#14
Je vais camper ma position sur l'aléatoire ^^. Je m'explique : si tu as obtenu une telle stratégie, c'est pas forcément qu'elle fonctionne. C'est peut être tout simplement qu'à force de tester différentes stratégies tu finis par en avoir une qui AURAIT été rentable. Mais ça ne t'apporte aucune garantie sur le future, le signe des rendements futurs ne dépendent pas des rendements passés => donc tu as beau faire des back tests rentables, ton gain futur c'est pile ou face.
 
Inscrit
10 Mai 2015
Messages
357
Reactions
47
#15
Oui et non, j'ai un jeu de données d'entrainement, un jeu de donnée dédié à l'optimisation et les données que tu vois c'est un jeu de donnée brute sans aucune optimisation sur la stratégie elle-même. Un backtest ne veut rien dire je suis d'accord avec toi, mais quand il est bien fait il est tout à fait pertinent. En plus de ça avec 2 mois de live en tendance haussière on se permet de vérifier que les courbes suivent bien la dynamique des backtests. Il faut prendre aussi la constance des gains en compte, au plus ta variance est elevée au plus ton intervalle de confiance dans une stratégie est faible également. Avec autant de trades, tu peux pas vraiment dire c'est juste de la chance, oui c'est possible que ma stratégie ne soit pas rentables mais c'est peu probables. Encore une fois ça reste un intervalle de confiance dans un jeu de donnée.

Enfin bref, le but d'un investisseur c'est pas choisir noir ou blanc, c'est de trouver des investissements qui sont rentables, la crypto-monnaie est un investissement très rentables au vu des années passées mais on sait aussi que ça se retourne très très vite. Il y a pas vraiment moyen de hedger ses positions comme dans les actions en investissants sur des sociétés concurrentes, j'ai donc décidé de développer une stratégie avec des shorts uniquement dans le but d'avoir pour les investisseurs une solution de diversification.
 
Dernière édition:
Inscrit
30 Octobre 2019
Messages
48
Reactions
27
#16
Pas mal de surperformer un marché haussier avec des shorts, tu prends en compte les fees dans le calcul des profits ? Si c'est une stratégie short, j'imagine que tu utilises des indicateurs de momentum comme le RSI ? Pour les résistances, tu les saisis à la main ou t'as un algo qui les détecte car c'est assez compliqué.
 
Inscrit
10 Mai 2015
Messages
357
Reactions
47
#17
Je n'utilise personnellement pas les résistances pour trader, il m'arrive pour certaines stratégies d'utiliser des indicateurs comme le RSI, SMA, BB etc mais j'ai quelques autres astuces que je garde secrètes qui donnent des résultats plutôt pas mauvais. Après combiné à du Deep-learning les résultats sont vraiment intéressant et un bon modèle peut produire des résultats vraiment très bon.
 
Haut Bas