Identifiant   Mot de passe       Oublie mot de passe?  Oublie login?  Creer un compte

 

Prochaine News

Initialisation...

Forum Trading Auto

by nvitale
Feb.05.12 23:26:20
Feb.05.12 15:23:34
Feb.05.12 11:51:01
Feb.03.12 15:55:48
Feb.03.12 13:59:08
by nvitale
Feb.03.12 10:00:07
Feb.02.12 11:39:41
by surfeur
Feb.02.12 11:22:58
by nvitale
Feb.02.12 10:52:50
by nvitale
Feb.02.12 00:49:18
by nvitale
Feb.01.12 15:07:06
by nvitale
Jan.31.12 19:07:24
by oppidum
Jan.31.12 18:23:08
by jabal
Jan.31.12 17:02:40
by nvitale
Jan.31.12 11:50:02
Animé par JoomlaMe

AutomatedTradingShop

 

Abonnez-Vous

flux rss trading automatique Flux RSS
facebook trading automatique Facebook
twitter trading automatique Twitter

Sondage

Pour vous, la qualite d'excecution est :
 
Trading Algorithmique et Quantitatif
OrderBookFx, tradez avec un coup d'avance Envoyer

 

Comme j'en parlais dans l'édito du mois de mars, OrderBookFx est un nouveau service assez innovant pour les traders individuels. Il permet en effet d'obtenir le carnet d'ordres d'une paire Forex. Impossible? Le forex est un marché de gré à gré ? Vous avez raison, contrairement aux contrats listes comme les actions ou les futures, il n'y a pas de prix officiel sur le Forex. Tout le monde peut plus ou moins proposer son prix et trader sur celui-ci s'il trouve une contre-partie.

Il existe cependant des Glossary Link ECN utilisés par les institutionnels comme Currenex, HotspotFXi, Integral, FXAll et LavaFX qui proposent leur propre carnet d'ordres synthétisant les offres de leurs clients. Y avoir accès n'est généralement pas chose faisable pour un client particulier... Du moins jusqu'à ce qu'apparaisse OrderBookFx.

OrderBookFx aggrège en effet les données de ces différents fournisseurs de liquidités et les transmet dans un flux real time haute fréquence. Et devinez quoi? Le service en beta actuellement est gratuit! Aucune raison de ne pas essayer donc.

 

orderbookfx

 

OrderBookFx propose egalement un indicateur disponible sur Glossary Link MT4 afin de surperposer les informations du carnet d'ordres directement sur le graphe. Il est donc tres pratique de comparer les updates fournies par votre broker avec celles d'OrderBookFx. Petite astuce, pensez à ajouter le tracé de la ligne de niveau Ask sur MT4 (dans les propriétés de la fenêtre en faisant un clic droit), puisque le niveau par défaut est celui du Bid. Avec en blanc le Bid broker, en rouge sur toute la fenêtre le Ask broker et en rouge/vert les données de OrderBookFx, on obtient ceci :

 

orderbookfx

 

Par cet article, je ne vais pas rentrer dans les détails de toutes les informations que l'on peut obtenir via le carnet d'ordres. Cela demanderait un bouquin entier... Je vais donc plutôt me concentrer sur un aspect qui m'a sauté directement aux yeux.

 

orderbookfx

Cliquez pour aggrandir

 

Si l'on observe les prix, on remarque que les données présentent des moments calmes où pas grand-chose se passe, puis certains décalages, accélérations se produisent Je parle bien ici de décalages classiques qui n'ont rien à voir avec les spikes que l'on obtient pendant les news. Pendant ces décalage, on remarque clairement que les data de OrderBookFx sont en avance. Le carnet d'ordre entier décale fortement puis se pause. Enfin, le broker met à jour en 2 ou trois ticks ses propres niveaux bid/ask pour matcher ceux des flux aggrégés. OrderBookFx permet donc assez clairement de trader avec un coup d'avance. Peut-être pas sur le broker qui retombera sur ses pattes d'une manière ou d'une autre, mais au moins sur la foule de ses clients retails.

Certains brokers présentent de temps en temps des freezes de leurs quotes. Avec cet outil, on ne pourra plus vous cacher l'évolution du marché...

Rapide, mais rapide a quel point me direz-vous? Visuellement, on peut configurer des updates toutes les 50 ms, ceci pour ne pas consommer trop de CPU inutilement car aller en dessous n'aurait qu'un intérêt limité si vous êtes un humain normal. Toutefois, si vous souhaitez logger l'order book complet, vous pouvez atteindre des fichiers de 20MB par minute en pic d'activité, autant dire que ça va plus vite que toute solution accessible aux particuliers que j'ai pu voir...

Il n'en fallait donc pas plus pour que nous devenions partenaire technique d'OrderBookFx. Nous pouvons donc fournir désormais à nos clients et ceux d'OrderBookFx des solutions d'analyses ou de trading intégrant cet outil qui me semble révolutionnaire pour les traders non institutionnels.

 
Comment trader la corrélation sous Mt4 Envoyer

Ha la corrélation, sujet qui déchaine les passions, mais qui pourtant est bien souvent mal compris et mal appréhendé!

Cet article n'a pas pour but de vous expliquer ce qu'est la corrélation ou la co-intégration et encore moins de vous proposer des définitions pour des mots compliqués tels :

- Stationnarité d'une série temporelle;

- Test de Dickey Fuller;

Non non, ici nous passons directement à la pratique, sous MetaTrader 4, avec tout de même quelques petites explications, ceci afin de ne pas rester sans armes lorsque sera venu pour vous le moment de trader ces fameuses corrélations.

D'abord, commençons par répondre à une question que beaucoup de gens se posent :

La co-intégration est-elle facilement applicable sur le Forex?

La réponse à cette question va certainement soulever des avis divergents, et pour cause, le forex est le marché qui est le plus abordable concernant les frais de transactions, spread ou valeurs des pips en argent comptant, ce qui fait que les personnes ayant de trop petits comptes pour trader autre chose ont du mal à accepter ces frais.

Déjà par définition, sur le forex on trade des paires. Mais pour autant, ce marché est un marché où il est difficile d'appliquer des stratégies de co-intégration, car les prix ne sont pas forcement toujours corrélés...... d'ailleurs qui a dit qu'ils devaient l'être?

Prenons les cas de la devise européenne et de quelques-unes de ses paires:

  • EURUSD;
  • EURCHF;
  • EURGBP;

 

Ainsi qu'un graphique qui met ces trois paires en scène et qui met en exergue des moments où ce genre de stratégie serait risqué sur le Forex:

 

 

Voyez comme toutes ne suivent pas le même mouvement, simplement parce que sur le forex, outre le fait que vous tradez l'Euro dans cet exemple, il faut prendre en compte les devises opposées à ce dernier, ici donc CHF et GBP et ce sont ces devises qui font que les paires Euro ne suivent pas forcement la même marche.

Il est donc difficile d'appliquer ce genre de stratégies sur le Forex ...... mais cependant pas infaisable non plus Wink

Le mieux est encore de trader des couples dont nous sommes sûrs qu'ils sont co-intégrés et qu'ils suivent le même mouvement quasi instantanément (forcément) tels :

  • Cac 40 et Dax 30;
  • Google et Yahoo;
  • L'argent et l'or;

 

Il est mieux de commencer vos recherches par secteurs, matières premières, bancaire, multimédia ou encore informatique.

 

Tester la corrélation/co-integration

 

Vous avez trouvé deux support probablement corrélés et vous voulez savoir s'il le sont vraiment pour leurs appliquer une stratégie?

Rien de plus simple, il vous suffit de trouver R Tongue out

R est en fait le résultat mathématique de la fonction suivante :

Log(Prix_A)/Log(Prix_B);

Rassurez vous, Trading-Automatique propose à ses membres enregistrés de télécharger un indicateur qui s'en occupera à votre place (vous devez être connectés).

Comme vous l'avez constaté, nous utilisons une échelle logarithmique pour comparer les courbes de prix.

R est présenté sous la forme d'une courbe, et pour que deux support soient effectivement co-intégrés, cette courbe doit rester stationnaire dans le temps, c'est à dire qu'elle ne doit pas former de tendances (ou très peu) et rester dans un "éternel range"

Ainsi, voyons ce que donne R en comparant le Cac 40 et le Dax 30:

 

On y voit très bien que ces deux support sont très corrélés ,non seulement en comparant leurs graphiques de prix (Cac en haut et Dax en bas), mais aussi en regardant la courbe R qui est en effet stationnaire et sous forme de range.

Nous verrons dans un prochain article que R possède tout de même quelques vertus sur le forex, notamment pour trouver les meilleurs rapports de force entre les paires de devises Laughing.

Mesurer les écarts

Très bien, maintenant que nous avons nos deux supports très corrélés (en l'occurrence Cac et Dax) et que R est correct, nous allons mesurer les écarts qu'il présente par rapport à sa propre moyenne mobile.

En effet, ce sont ces écarts qui nous donneront une éventuelle alerte d'achat ou de vente, voire d'arbitrage car un écart trop grand signifie que quelques chose ne tourne pas rond dans la relation entre les deux prix et qu'il est grand temps d'y remédier!

Pour ce faire, rien de plus simple, nous allons construire un oscillateur qui nous dira combien d'écarts-types séparent R de sa moyenne.

Une fois de plus, cet indicateur est livré gratuitement aux membres de Trading Automatique. (Nous sommes généreux, n'est-ce pas?)

Chaque duo de prix a ses propres caractéristiques, écarts. Ainsi, pour le Cac et le Dax, je note qu'un écart de 2 et -2 sur l'oscillateur est très bien pour entrer sur le marché, par contre ce n'est pas valable pour tous, à vous d'étudier correctement les duos que vous sélectionnez.

Voici quelques exemples d'entrées que l'indicateur a donnés pour notre Cac 40 comparé au Dax 30:

 

Sympa n'est ce pas?Tongue out

Bien entendu, il y a des signaux plus ou moins bons.

En temps normal, les sorties de trade se font lorsque R retrouve sa moyenne mobile, c'est à dire qu'ici l'indicateur croise la ligne 0, mais ceci n'est que théorique. Si vous êtes dans un trend, pourquoi ne pas pousser vos trades plus loin?

D'ailleurs, le plus souvent, lorsqu'un signal est donné, il est "conseillé" de vendre l'un et d'acheter l'autre....... certes cela fonctionne, mais pas toujours, à vous de voir là aussi ce que vous recherchez et désirez.

En parlant de "désirs" sachez que Trading Automatique se fera un plaisir de coder les vôtres. Que ce soit en EA ou en indicateurs, les corrélations et co-intégrations donnent lieu à de nombreuses stratégies qu'il serait triste de laisser de coté.

Voilà, c'est tout pour aujourd'hui, j'espère que cet article vous à plu et qu'il vous aidera à gagner quelques trades ou arbitrages ;)

Damien Soudant

Cette adresse email est protégée contre les robots des spammeurs, vous devez activer Javascript pour la voir.

 
Selectionnez la période optimale de vos indicateurs Envoyer

 

Si il y a bien une question récurrente et logique que se posent beaucoup de traders, c’est bien:

« Mais qu’elle période vais-je bien pouvoir mettre à mon indicateur ? »

En voilà une question qu’elle est bonne et pourtant, peux savent y répondre !

 

La réponse est bien souvent donnée de manière discrétionnaire et non fondée.

Quand certains préfèrent suivre Raghee Horner pour le choix d’une moyenne mobile, d’autre iront à tâtons en sélectionnant la période qui aurait permis de prendre rapidement le plus beau trend de l’année (et ne me dite pas que ce n’est pas vrai...).

D’autres encore y vont en essayant les périodes une par une, ce qui, vous en conviendrez, n’est pas ce qu'il y a de plus simple ….. et surtout pas de plus rapide !

 

Le but de cet article est donc de vous présenter un moyen de choisir la période de vos indicateurs, de manière simple et basé sur des statistiques mathématiques.

Cette manière de faire est peu commune et pourtant s’avère très utile.

 

Si vous êtes spécialiste en électronique,  ingénieur du son ou encore musicien, les mots que je vais citer plus bas vous seront très certainement familiers. dans le cas contraire, ne partez pas tout de suite en courant...

Il s’agit de :

  • Traitement du signal ;
  • Spectre de fréquence ;
  • Transformée Rapide de Fourier  (Fast Fourier Transform dit FFT) ;

 

En effet, ces mots, qui peuvent paraitre difficiles à digérer au début, feront, je l’espère, partis de votre arsenal de trading.

 

Ce que nous allons étudier ici  est l'analyse spectrale (en voilà un joli nom), et plus précisément les spectres de fréquence.

Pour votre culture générale, je vous invite à lire ces différents articles qui traitent du sujet:

 

Application au trading et à l'investissement

 

L'un des premier à avoir utilisé et appliqué l'analyse spectrale et la transformée de Fourier au trading est le scientifique J.M Hurst, hauteur de plusieurs ouvrages sur le trading dans les années 60/70, dont le plus connu est certainement The Profit Magic of Stock Transaction Timing.

Il est aussi le premier à avoir utilisé des enveloppes autour du prix, qu'il a appelé Curvilinéar Enveloppes, plus connues sous le nom de bandes de Hurst. Ses travaux sont spectaculaires lorsque l'on sait qu'à l'époque les ordinateurs personnels n'existaient pas et qu'il fallait tout faire à la main sur papier millimétré .. et je ne vous raconte pas pour calculer la Transformé de Fourier!

Image issue de l'ouvrage The Profit Magic of Stock Transaction Timing illustrant les bandes de Hurst:

 

 

Trêve de commentaires, passons au choses sérieuses si vous le voulez bien!

Dans un premier temps, je vous invite à télécharger et à installer l'outil "Digital Filter Générator", qui nous offrira de jolis graphiques spectraux:

Site de l'auteur (en russe .... ils ont toujours eu une longueur d'avance au niveau programmation, ceci dit, nous les francophones sommes autant rusés qu'eux Tongue out) :http://fx.qrz.ru/

Prévenez moi quand vous êtes prêts...

 

Ok, On y va? Très bien.Smile

 

Digital filters générator a été conçu pour créer des filtres numériques en indicateurs compatibles avec plusieurs plates-formes de trading, entre autre Glossary Link Mt4.

Il permet donc de créer des filtres de types band pass, low pass, Pcci (perfect cci), ect. Vous pourrez consulter des discussions sur le sujet qui vous seront très certainement utiles sur Forex TSD, dans la partie Digital Filters.

Il permet aussi et c'est ça qui nous intéresse ici, de consulter le spectre du prix, via des fichiers archives CSV que vous pouvez extraire avec Mt4.

Pour que le spectre renvoi des informations cohérentes, il est préférable d'avoir un historique assez long!*

Commençons donc pas aller chercher notre fichier archive, pour ce faire, ouvrez Mt4 puis allez dans:

- outils => archives => sélectionnez la paire dont vous voulez connaitre le spectre => choisissez le TimeFrame => puis exportez dans un dossier quelconque (personnellement c'est sur le bureau).

Il est possible d'agrandir vos historiques dans la fenêtre archives en cliquant sur "Télécharger".

 

Ouvrez à présent Digital Filter Générator, vous obtenez cette fenêtre, cliquez sur le boutons avec la grille et un point d'interrogation:

 

 

La partie étude de spectre s'ouvre à vous Smile.

Cliquez à présent sur le bouton avec pour image un dossier, ceci vas vous permettre d'aller chercher le fichier CSV que nous avons précédemment enregistrer via Mt4.

Sélectionnez votre fichier puis "Ouvrir".

A présent, le logiciel montre le graphique bougies du CSV, ainsi que le nombre de bougies/données présente sur le fichier, ne reste qu'à cliquer sur le bouton "calculate".

 

 

Et voilà, vous avez votre spectre, ou plutôt celui de la paire que vous étudiez! Tongue out

Dans cet exemple, j'ai choisi d'étudier EURUSD en M30, mon fichier CSV contient plus de 132 000 bougies.

L'échelle horizontale du spectre nous renvoi les période, allant au maximum jusqu'à 150.

Remarquez les pics et les creux sur le tracé, que nous disent-ils?

 

 

Plus un pic est haut, plus la période (encore appelée cycle) qu'il représente est significative!

Les 3 pics hauts entourés sur l'image on aussi l'avantage d'être assez éloignés, ce qui permet d'utiliser ces trois période bien distinctes qui sont:

  • 15;
  • 40;
  • et 85;

 

Ce sont donc ces 3 périodes que nous allons utiliser pour paramétrer nos indicateurs.

En revanche, le pic bas qui met en exergue la période 25 est nulle, c'est à dire que, d'après l'analyse spectrale, cette période ne renvoie rien de bien intéressant.

Ceci dit, ce n'est pas pour ça que vous ne devez pas l'utiliser ..... mais ce n'est pas la période optimale pour cette paire et ce TimeFrame.

 

Vous remarquez que je ne me suis pas trop aventuré dans la partie théorique, tout simplement parce que c'est un sujet très complexe et qu'il est préférable pour vous (et pour moi) de vous renseigner sur le net, le nombres de tutoriels/cours sur l'analyse spectrale sont nombreux!

 

Lorsque vous avez plusieurs pics très proches au niveau période, il est préférable de n'en choisir qu'un seul,en effet il est mieux de sélectionner des périodes assez éloignées, pour que les infos renvoyées par vos indicateurs ne soient pas récurrentes et ne vous induisent pas en erreur!

L'importance des historiques

 

Rien ne vaut un exemple pratique pour vous montrer à quel point il est important d'avoir un historique assez conséquent!

Pour cette exemple, j'ai choisi d'étudier le spectre de GBPUSD en H4, seulement ici, avec une nouvelle installation de la plate-forme, je n'ai pas encore télécharger de données.

De ce fait mon fichier ne contient que 1042 bougies, soit pas assez pour extraire un spectre cohérent tellement l'échantillon est court!

Analysons un peut ces données dans Digital Filters Générator:

 

 

Le spectre ici est difficile à lire et à interpréter, les pics sont très proches et il est bruyant!

 

Maintenant, je télécharge un historique plus long et me voilà en présence d'un historique avoisinant les 17 000 bougies (16 972 pour être précis)!

Avec ça, le spectre devrait être plus lisse et compréhensible, voyons ensemble:

 

C'est beaucoup mieux non?

Sur l'image on voit très bien que les cycles 25, 40 et 93 on fait les 3 plus haut pics et vous avez ainsi  aucunes difficultés de lecture Smile!

Petite info:

Digital Filter Générator ne prend en compte que la colonne "close" pour calculer le spectre, de ce fait vous pouvez y mettre ce que vous voulez..... votre équity pourquoi pas!

Sur metattrader 4 il est possible de créer un script qui va créer un fichier historique..... et mettre ce que vous voulez dans la colonne "close" et vous pourrez emmener l'étude spectrale plus loin!

 

Voilà, en attendant un prochain article, traitant cette fois ci de Hurst et ses fameuses bandes, je vous souhaite une agréable étude et utilisation des spectres, pour que ces derniers vous permettent de trader mieux, mais surtout de ne plus être sans armes face à la question :Qu'elle période utiliser?

 

Damien Soudant pour Trading Automatique.

 
Des marchés plus efficients? Envoyer

 

Voici un article de Jennifer Nille auteur du blog Fair Trade dont l'objectif est de faire découvrir le monde obscur du trading. Jennifer décrit comment les dark pools, algo-traders, MTFs,... fonctionnent, et ce qu'ils entraînent comme changement sur les marchés. Les autres acteurs (régulateurs et Bourses traditionnelles) sont également épinglés.

685765

"Les marchés sont devenus beaucoup plus efficients  avec l'arbitrage des hedge funds, beaucoup plus qu'il y a 20 ans".

Ce commentaire vient de Philippe Brugère, gestionnaire de fonds chez Franklin Templeton. Voilà qui devrait faire plaisir à Eugène Fama, le père de la théorie de l'efficience des marchés. Une théorie bien malmenée depuis cette crise financière.

Pour suivre la logique de Fama, si les marchés sont efficients, il ne faut pas chercher à les battre. Une simple approche buy& hold devrait suffire.

Mais ces dix dernières années, les performances du S&P500 et des indices européens ont montré qu'il s'avérait mal avisé de suivre une telle stratégie. L'investisseur buy&hold aura même perdu de l'argent.

L'analyse fondamentale,où sont épluchés bilans,résultats,... d'une société a elle aussi présenté ses limites. "Sur les deux dernières années, l'approche Value (qui met l'accent sur les sociétés avec une décote)a traversé une période difficile. Les gens ne se sont plus préoccupés des fondamentaux. Ce sont les titres de médiocre qualité, fortement joués à la baisse, qui ont le plus rebondi" commente Philippe Brugère.

Par contre, il serait intéressant de constater sur la décennie les performances des bots, ces programmes informatiques servant  au trading.

Eugène Fama a souligné dans notre supplément sur le futur du capitalisme que si les marchés s'avèrent efficients, ils doivent être régulés pour pouvoir fonctionner. Il a pointé du doigt le problème des fausses informations.

Force est de constater que depuis dix ans, la vitesse des transactions et de circulation de l'information a fortement augmenté. Et certains spécialistes avancent qu'il serait hasardeux de vouloir ralentir tout ça.

Les fausses informations peuvent se propager plus vite. Exemple: le 8 septembre 2008, l'action United Airlines a dégringolé de 12 à 3 dollars en moins de dix minutes suite à la publication d'une information erronée, sa mise en faillite datant de ...2002. Lorsque l'information a été démentie, le cours s'est spectaculairement redressé.

Le krach éclair du 6 mai s'inscrit dans la même veine. Mais la Securities and Exchange Commission doit encore tirer les choses au clair.

Et cette affaire a montré les limites de la régulation. Pour les régulateurs, surveiller ces "gangsters" (comme le dit Fama) qui propagent des fausses informations, la vitesse actuelle des flux pose problème.

D'où cette question: s'ils ne peuvent être régulés, les marchés sont-ils efficients?

 
Réseaux de Neurones avec Algodeal Envoyer

 

Lliane de Trading Automatique revient sur la nouvelle plateforme d'Algodeal en mettant en oeuvre un cas pratique : une stratégie de trading basée sur les réseaux de neurones...

 

Un réseau de neurones artificiel est un modèle de calcul dont la conception est très schématiquement inspirée du fonctionnement des neurones biologiques (humains ou non).Les réseaux de neurones sont généralement optimisés par des méthodes d’apprentissage de type statistique, si bien qu’ils sont placés d’une part dans la famille des applications statistiques, qu’ils enrichissent avec un ensemble de paradigmes permettant de générer de vastes espaces fonctionnels, souples et partiellement structurés, et d’autre part dans la famille des méthodes de l’intelligence artificielle qu’ils enrichissent en permettant de prendre des décisions s’appuyant davantage sur la perception que sur le raisonnement logique formel. En modélisation des circuits biologiques, ils permettent de tester les hypothèses fonctionnelles issues de la neurophysiologie ou de tester les conséquences de ces hypothèses afin de les comparer aux réseaux réels. (Wikipédia)



L’objectif de mon implémentation d’un réseau de neurones est l’apprentissage par celui-ci de conditions externes dynamiques. J'ai d’abord essayé de faire en sorte que chaque neurone représente une stratégie. Le problème était que j’orientais donc la prise de décision en éliminant les stratégies qui ne fonctionnent pas (autrement dit 99.9% des stratégies imaginables). J’obtenais un amalgame de stratégies et au final je n’en créais pas une nouvelle (même simple) et j’étais donc loin de mon objectif.

Cela faisait quelques mois déjà que j’avais l’intention de créer un tel algorithme de prise de décision, au départ MetaTrader 5 était la plateforme privilégiée. Faute de mode Glossary Link backtest, c’est finalement vers le tout nouvel Algodeal que je me suis tourné, une plateforme dont Nicolas vous a déjà parlé. Algodeal dispose d’une API en Java et j’avais donc tout loisir pour faire du code orienté objet dessus.

Les noeuds


Je suis donc parti sur la piste de créer un Nœud par Indicateur, le premier Nœud que j’ai implémenté est celui du RSI. Un nœud contient un ensemble de propriétés :

-    spectrum : La variance de la loi normale de pondération que nous verrons plus tard (ne me demandez pas pourquoi spectrum)
-    min : La valeur du plus petit sous-nœud
-    max : La valeur du plus grand sous-nœud
-    step : L’écart de valeur entre deux sous-nœuds
-    vsn : Le Vector de Sous-Nœuds
-    name : Le nom du nœud

Et un ensemble de méthodes :

-    Node : Un constructeur qui crée aussi l’ensemble des sous-noeuds
-    new_weight : Prend en paramètre le nombre de pips depuis l’UT précédente et value la valeur du précédent RSI et pondère les sous-nœuds.
-    normal_law : qui calcule une loi normale, placé ici
-    dump : Une fonction de débogage qui affiche toutes les poids des sous-nœuds

RSINode

 

Cette classe est une classe abstraite, je vais donc créer une classe RSINode pour implémenter mon nœud RSI. Cette classe contiendra quelques propriétés :

-    rsi : L’indicateur rsi
-    rsiLength : La longueur du RSI (14 UT dans l’exemple)

Et implémentera une seule méthode en plus de son constructeur :

-    get_weight : Récupère le poids sur le bon sous-nœud, c’est le seul endroit avec new_weight où on a vraiment besoin de la valeur du RSI. Mais j’utilise une astuce de programmation pour ne pas avoir à recoder new_weight à chaque nouveau type de nœuds (l’ancien poids est stocké dans la partie abstraite lors d’un appel à get_weight).

SubNode

 

Le sous-nœud est le deuxième niveau du réseau de neurones (qui en compte pour l’instant 2). Pour chaque nœud, par exemple un NoeudRSI14, il y a (max – min) / step SubNodes. Par exemple avec min = 0, max = 100 et min = 1.0 on a un subnode à 0, un à 1, un à 2, etc. jusqu’à 100.
Les SubNodes ont 4 paramètres :


-    value : est la valeur du SubNode (dans le cas du RSI 1, 2, 3, etc.)
-    weight : est le poids du SubNode, le plus important, un poids négatif est un signal de vente, un poids positif un signal d’achat
-    wu : Un coefficient multiplicateur lors d’une augmentation de poids
-    wd : Un coefficient multiplicateur lors d’une diminution de poids

Ils ont également trois méthodes :

-    weight : récupère le poids du SubNode
-    weight_up : augmente le poids du SubNode
-    weight_down : diminue le poids du SubNode

Fonctionnement

 

  

Initialisation


A l’initialisation les nœuds sont crées et stockés dans un vecteur, chaque nœud crée également ses sous-nœuds et leur donne un poids (nul ou issu de précédentes expériences).

Mise à jour du poids


Au début les nœuds ont un poids nul, on observe donc le marché sans agir, imaginons que le 1er Mars le FCE soit à 4000 points avec un RSI(14) à 60 et que le 2 Mars le FCE passe à 4020 points. Je souhaite donc faire connaître à mon SubNode(60) que le marché à tendance à monter quand le RSI est à 60. Je vais donc augmenter le poids de tous les SubNodes avec la formule suivante :

NouveauPoids = AncienPoids + CoefficientWU * Log(1+EcartPips) * LoiNormale(SubNode)

La loi normale me sert ici à augmenter non seulement le nœud 60, mais également dans une moindre mesure les nœuds alentours :


 

Loi normale

Cette formule est bien entendu à raffiner au fur et à mesure des expérimentations et des résultats mais ce n’est pas l’objet de ce Proof of Concept.

Récupération du poids


Je suis maintenant à 4020 et mon RSI est à 65, je vais récupérer la valeur du SubNode(65) , si celle-ci est positif je vais acheter, si celle-ci est négative je vais vendre. Afin de vérifier que mon apprentissage fonctionnait j’ai affiché les valeurs des différents SubNode à la fin de l’expérience (10 ans de backtest sur FCE).
 

Valeur des SubNodes RSI 14 après 10 ans de backtest :
 

Valeur des SubNodes RSI 50 après 10 ans de backtest


On peut observer que globalement quand un RSI est supérieur à 50 le marché monte le jour suivant… attention la formule n’étant pas parfaite les anomalies statistiques sont très « puissantes ».

Améliorations possibles


La liste des améliorations possible est longue, voire infinie, puisqu’il me suffit de rajouter des Nœuds sur les milliers d’indicateurs existants. Si ils ne sont pas efficients (comprendre aléatoires) leur poids devrait de toute façon être négligeable par rapport aux autres. Parmi les améliorations notables :

-    SubNodes à plusieurs valeurs (RSI hier et RSI avant-hier, ou MACD par exemple)
-    Recherche de coefficients efficaces (wu, wd, variance de la loi normale)
-    Pondération plus efficace pour éliminer rapidement les indicateurs peu efficaces et faire sortir du Glossary Link lot les indicateurs efficaces.
-    MoneyManagement

Résultats


Les résultats n’ont aucune importance à ce stade mais les voici quand-même


Un beau suivi de tendance avec le RSI 50…

 

…avec le P&L classique de ce genre de stratégies

 

Si vous aussi souhaitez programmer votre stratégie sous la plateforme d'Algodeal, contactez notre service de programmation.

 
<< Début < Précédent 1 2 3 4 Suivant > Fin >>

Page 1 sur 4

Articles en rapport :

 
Joomla 1.5 Templates by Joomlashack