Partage de mon travail
-
TripleFail
- Stormtrooper
- Messages : 146
- Enregistré le : 20 avr. 2015 10:13
Partage de mon travail
Salut à tous
J'ai créé sur les dernières années plusieurs algos fonctionnels, que je n'utilise pas ou plus et donc que je peux partager (je n'ai plus forcément les codes sources donc j'explique le fonctionnement):
-Sur un script meta trader 4 (période journalière) , n'ayant pas été convaincues par les techniques habituels (analyse technique et arbre de décisions) j'ai créé une script basé sur plusieurs technologies ne venant pas de la finance, l'exposant de John Hurst (hydrologue, l'idée à été repris par Mandelbrot) pour prédire quand le marché était persistant , anti persistant etc.. en français pour détecter s'il y a une tendance possible. Si tendance possible dans ce cas l'analyse se faisait avec un filtre de Kalman. Une fois la faisabilité et le sens de la position déterminée, je passais l'ordre avec une version modifié des réseaux bayésien ( pour les petits détails stop-loss à x fois l'écart type et take profit dés que les conditions n'était plus présente). Le rendement testé en réel et backtest sur deux échantillons (un de développement et un de validation), donnais un rendement sans levier de 5 à 20 % par ans selon les sous-jacents, très peu d'ordre passé (5 à 9 par ans), mais gros taux de réussite (70 à 90% selon les sous-jacents). Je n'ai plus les sources donc voici les docs qui m'on été utile:
Le livre de Yasmine Hayek Kobeissi Marchés Fractals: stratégies d'investissements. (pour l'exposant de Hurst et son utilité)
En lien internet, le filtre de Kalman était présent sur wikipedia pour l'explication et un code source(ou fichier excel ) sur le site quantcode. Pour les réeaux bayesiens vous trouverez une bonne explication aussi sur wikipedia
Je continuerais cette file plus tard, les autres programmes sont plus autonomes (meta trader étant très limités de par ses marchés et ses performances), j'expliquerais de la même manière et je répondrais à vos questions s'il y en a.
J'ai créé sur les dernières années plusieurs algos fonctionnels, que je n'utilise pas ou plus et donc que je peux partager (je n'ai plus forcément les codes sources donc j'explique le fonctionnement):
-Sur un script meta trader 4 (période journalière) , n'ayant pas été convaincues par les techniques habituels (analyse technique et arbre de décisions) j'ai créé une script basé sur plusieurs technologies ne venant pas de la finance, l'exposant de John Hurst (hydrologue, l'idée à été repris par Mandelbrot) pour prédire quand le marché était persistant , anti persistant etc.. en français pour détecter s'il y a une tendance possible. Si tendance possible dans ce cas l'analyse se faisait avec un filtre de Kalman. Une fois la faisabilité et le sens de la position déterminée, je passais l'ordre avec une version modifié des réseaux bayésien ( pour les petits détails stop-loss à x fois l'écart type et take profit dés que les conditions n'était plus présente). Le rendement testé en réel et backtest sur deux échantillons (un de développement et un de validation), donnais un rendement sans levier de 5 à 20 % par ans selon les sous-jacents, très peu d'ordre passé (5 à 9 par ans), mais gros taux de réussite (70 à 90% selon les sous-jacents). Je n'ai plus les sources donc voici les docs qui m'on été utile:
Le livre de Yasmine Hayek Kobeissi Marchés Fractals: stratégies d'investissements. (pour l'exposant de Hurst et son utilité)
En lien internet, le filtre de Kalman était présent sur wikipedia pour l'explication et un code source(ou fichier excel ) sur le site quantcode. Pour les réeaux bayesiens vous trouverez une bonne explication aussi sur wikipedia
Je continuerais cette file plus tard, les autres programmes sont plus autonomes (meta trader étant très limités de par ses marchés et ses performances), j'expliquerais de la même manière et je répondrais à vos questions s'il y en a.
-
libertarian
- Compagnon Jedi
- Messages : 1077
- Enregistré le : 20 sept. 2014 19:41
Re: Partage de mon travail
merci pour l'effort de partage en tout cas!
-
TripleFail
- Stormtrooper
- Messages : 146
- Enregistré le : 20 avr. 2015 10:13
Re: Partage de mon travail
Bonjour à tous,
Un autre algorithme que j'avais fait et n'utilise plus avec rendement entre 5 et 20% par ans, totalement décorrelé des marchés, faible volatilité, fait en période journalière (on peut sur de plus petite période sa marche aussi).
Il s'agit d'un algorithme de pair trading, là aussi, je n'ai pas conservé les sources, mais le principe est simple, il suffit de trouver deux valeurs co-intégrer (donc faire un test de cointégration) à ne pas confondre avec la corrélation (la co-intégration n'est pas forcement visible à l'œil nu). Et ensuite de parier soit sur l'élargissement du spread ou son resserrement.
En bas, vous trouverez plusieurs liens qui m'on aidé à mettre ceci en place, ça marche bien sur les actions et sur les futurs sur indices.
MetaTrader 4 ne permet pas de faire correctement ce genre de chose, vous pouvez le faire soit en programme indépendant soit même sur un classeur excel (voir liens de dessous).
Les sources:
Ce mémoire http://www.vernimmen.net/ftp/Le_pair_trading_et_la_crise_Xiayong_QIN_et_Carole_MERY.pdf
http://gekkoquant.com/2012/12/17/statistical-arbitrage-testing-for-cointegration-augmented-dicky-fuller/
Un autre algorithme que j'avais fait et n'utilise plus avec rendement entre 5 et 20% par ans, totalement décorrelé des marchés, faible volatilité, fait en période journalière (on peut sur de plus petite période sa marche aussi).
Il s'agit d'un algorithme de pair trading, là aussi, je n'ai pas conservé les sources, mais le principe est simple, il suffit de trouver deux valeurs co-intégrer (donc faire un test de cointégration) à ne pas confondre avec la corrélation (la co-intégration n'est pas forcement visible à l'œil nu). Et ensuite de parier soit sur l'élargissement du spread ou son resserrement.
En bas, vous trouverez plusieurs liens qui m'on aidé à mettre ceci en place, ça marche bien sur les actions et sur les futurs sur indices.
MetaTrader 4 ne permet pas de faire correctement ce genre de chose, vous pouvez le faire soit en programme indépendant soit même sur un classeur excel (voir liens de dessous).
Les sources:
Ce mémoire http://www.vernimmen.net/ftp/Le_pair_trading_et_la_crise_Xiayong_QIN_et_Carole_MERY.pdf
http://gekkoquant.com/2012/12/17/statistical-arbitrage-testing-for-cointegration-augmented-dicky-fuller/
-
jeancreatif
- Padawan
- Messages : 284
- Enregistré le : 01 mai 2015 13:19
Re: Partage de mon travail
Bonjour Triplefail ( ou triplebrain?)
Je trouve passionnantes tes recherches.
Les miennes vont dans le même sens ( en un sens)
Qu'entends tu par " cointégrées?
Jean
Je trouve passionnantes tes recherches.
Les miennes vont dans le même sens ( en un sens)
Qu'entends tu par " cointégrées?
Jean
-
TripleFail
- Stormtrooper
- Messages : 146
- Enregistré le : 20 avr. 2015 10:13
Re: Partage de mon travail
Bonjour Jean,
Déjà merci pour le compliment et l'intérêt pour mon travail.
Je vais expliquer le principe de la cointégration par l'exemple et des mots simples.
Lorsque eux valeurs sont cointégrés elles peuvent évoluer de manières différentes pendant un certain temps (contrairement à la corrélation) et quand même revenir à un écart moyen. Là sa ne saute pas forcement aux yeux donc un test est nécessaire. Pour faire ce test en général on fait Log(cloture de a) - Log(cloture de b) et sur cette nouvelle série on fait un test de stationnarité, si c'est le cas les valeurs sont cointégrés et donc jouable en pair trading. On utilisera d’ailleurs cette série pour savoir quand entrée et sortir d'un trade (en utilisant un genre de bande de bolligner).
Exemple de cointegration

Déjà merci pour le compliment et l'intérêt pour mon travail.
Je vais expliquer le principe de la cointégration par l'exemple et des mots simples.
Lorsque eux valeurs sont cointégrés elles peuvent évoluer de manières différentes pendant un certain temps (contrairement à la corrélation) et quand même revenir à un écart moyen. Là sa ne saute pas forcement aux yeux donc un test est nécessaire. Pour faire ce test en général on fait Log(cloture de a) - Log(cloture de b) et sur cette nouvelle série on fait un test de stationnarité, si c'est le cas les valeurs sont cointégrés et donc jouable en pair trading. On utilisera d’ailleurs cette série pour savoir quand entrée et sortir d'un trade (en utilisant un genre de bande de bolligner).
Exemple de cointegration

-
jeancreatif
- Padawan
- Messages : 284
- Enregistré le : 01 mai 2015 13:19
Re: Partage de mon travail
merci de l'exemple. Si je comprends bien, pour être cointegrées, il suffit que leur coefficient exp soit le même. Mais où et comment les trouves tu?
Pour vulgariser, elles bougent de la même façon.
Pour vulgariser, elles bougent de la même façon.
-
jeancreatif
- Padawan
- Messages : 284
- Enregistré le : 01 mai 2015 13:19
Re: Partage de mon travail
Le problème c'est que les séries aléatoires sont rarement stationnaires ( d'où le concept d'aléatoire)
-
jeancreatif
- Padawan
- Messages : 284
- Enregistré le : 01 mai 2015 13:19
Re: Partage de mon travail
A moins de parler de stationnarité de leurs aléas, dont un exemple est donné dans la promenade support, resistance.
-
TripleFail
- Stormtrooper
- Messages : 146
- Enregistré le : 20 avr. 2015 10:13
Re: Partage de mon travail
Une action n'est pas stationnaire, mais une série créer en faisant log(a) - log(b) ou a et b sont les cours de clôtures de deux actifs financier peut être stationaire, c'est sur cette série que l'on doit travailler. L'image que j'ai posté montre deux séries cointégrés, elles ne bougent pas pareil, mais ce rejoignent à certains moment. Lorsque les mouvements sont identiques on parle de corrélation (et évidement la aussi c'est tradable en pair trading)
Log(a) et b doivent être calculés, sur excel par exemple. Ensuite soit on affiche la courbe et voit qu'elle est stationnaire sinon on fait un test de stationnarité ou non stationarité (Dickey Fuller)
Log(a) et b doivent être calculés, sur excel par exemple. Ensuite soit on affiche la courbe et voit qu'elle est stationnaire sinon on fait un test de stationnarité ou non stationarité (Dickey Fuller)
-
artes88
- Padawan
- Messages : 481
- Enregistré le : 17 janv. 2015 14:32
Re: Partage de mon travail
c'est le principe de l'arbitrage "long short equity 50/50", excellent à trader ! on peut réduire ces deux courbes en distribution de points pos ou neg représentant l'ècart entre les deux instruments de part et d'autre d'un axe horizontal, certains brokers ont des commandes pour trader l'écart, en valeur absolue...