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

Proorder de PRT fonctionne t'il correctement ?

par G'sT » 13 Juin 2016 21:18

Bonsoir à tous,

Ca y est je me suis lancé aujourd'hui dans une strategie de trading automatique en réel.


Ce 1er test automatique en réel a été réalisé ce matin (et que j'ai suivi en direct via mon smartphone).
Ce soir, de retour à la maison autodebriefing avec analyse des trades......; et là quelle surprise , je me met à douter sur la fiabilité de "proorder" et je m'interroge : proorder dysfonctionne t'il à l'identique du module "backtest" ?

Le contexte

En amont j'ai crée une stratégie toute simple ; j'ai associé cette stratégie avec un indicateur maison me permettant de tester la stratégie aisément.

1ère étape : je backteste cet indicateur (on va l'appeler BDC pour faciliter la compréhension) sur la période octobre 2015 à mai 2016 en UT 1mn.
Le bilan est satisfaisant (avec TP et SL !).

2ème étape : Je backeteste BDC manuellement, "sur papier" sur les 3 derniers mois soit entre mars 2016 et mai 2016. Le résultat est identique au backtest prt et la aussi donc satisfaisant.

J'ai à ce stade des repères sérieux et solides sur la manière dont fonctionne BDC, son nombre de trades par jour, son taux de réussite.....

3e étape : Dimanche soir je lance BDC sous proorder pour qu'il fasse son job (à partir de lundi entre 9h et 17h 30).

Le déroulement de l'éxécution de proorder

Ce matin j'ai mon smartphone allumé sur IG (version mobile - Android).
Je vois le 1er ordre se déclencher à 9h01 puis fermé quelques mn après par mon SL (qui a été respecté). S'en suis peu de temps après l'ouverture d'un 2nd ordre fermé peu de temps après sur son target profit (là aussi respecté!). Super me dis-je, les SL et TP sont bien respectés. J'assiste ensuite à une succession de trades positifs et négatifs. Il est 9h40 je suis presque flat ( PV d'1 pt exactement) avec un total de 10 trades.
Mais je suis quand même pris d'un doute car le déroulé des trades me surprend : chacun dure environ 4 mn et à chaque fois qu'un est fermé, un autre est ouvert peu de temps derrière.
Or de par mon backtest/analyse manuel précédent je sais bien qu'il n'y pas autant de trades en si peu de temps avec une telle chronicité (et très rare que BDC déclenche aussi vite un signal de trade après la cloture d'un précédent).
Je décide donc d’arrêter manuellement proorder. Bien entendu avec la version mobile d'IG on a pas accès à la platerforme prooder, et je suis donc contraint de laisser se déclencher le 11e trade afin de le déboucler manuellement (ce qui a pour conséquence d'arrêter l'algo de BDC).
C'est chose faite : le trade est débouclé au moment où il passe à une PV d'1pt). Algo arrêté.
A ce stade je devrais être content (PV totale de 2 pts ;) ), mes SL et TP étant respectés.

Le retour

De retour à la maison ce soir je démarre ma plateforme pour analyser les trades de ce matin.
Je démarre BDC figurant dans proorder puis je le backtest via PRT..... et là le résultat est tout à fait différent de celui vécu ce matin sur proorder.
J'analyse donc BDC manuellement......et effectivement le résultat de mon analyse manuelle est similaire à celle du backtetst PRT que je venais de faire : BDC indique un 1er signal de déclenchement de trade à 10h04 et aucun trade entre 9h et 10h04 (aucun doute dessus j'ai bien analysé/examiné).
Alors pourquoi Proorder a t'il déclenché 11 trades successifs entre 9H et 9h45 avec ce même indicateur BDC ?

J'ai de gros doutes sur la fiabilité du module proorder et sur un fonctionnement aléatoire à l'identique du module PRT.

Je m'adresse donc à ceux qui auraient utilisé proorder en réel : avez vous constaté de tels bugs,à savoir des écarts de trades entre ceux passés par PRT et une analyse de ces trades réalisés manuellement par vous même ?

Autre détail qui peut avoir une importance : Quand vous lancez une strategie via proorder, avec stops et objectifs compris, attention Proorder fonctionne de manière séquencée en 3 temps :
1) l'ordre est tout d'abord déclenché (ouvert)
2) L'ordre ouvert est ensuite modifié : placement du stop
3) L'ordre ouvert est ensuite modifié : placement du TP

Merci de votre retour.

Re: Proorder de PRT fonctionne t'il correctement ?

par plataxis » 13 Juin 2016 21:34

Moi j'ai seulement tenté en démo. Je n'aurais jamais fait tourner en réel avant d'avoir un peu de recul en démo. Et j'ai été plutôt faignant pour décortiquer ce qu'il a fait (pas gagnant = poubelle direct)

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 13 Juin 2016 22:16

Merci plata.
Ma stratégie est éprouvée sur le papier, et verrouillée (stop, exposition limitée en lot, possibilité d’arrêter manuellement l'algo => c'est pour ça que je suivais en direct) donc le risque était limité. Et puis j'aime bien essayer mes stratégies en réel dès lors qu'elles sont bien abouties.

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 14 Juin 2016 07:40

Bon je crois que j ai intuitivement (mais restera a confirmer ce soir par la vérification) un début de réponse au dysfonctionnement de proorder, car il y a bien eu dysfonctionnement
.....

Constat du probleme :
Proorder s est mis à declencher un 1 er ordre a 9h01. Des que le tp ou le stop etait touché, la position.etait fermee.et la.minute suivante un ordre etait declenché, et ainsi de suite pendant 1 ordre consecutif jusqu à ce que j arrete proorder dans le 11e trade.

Donnees du probleme :
Mon module bdc fonctione.selon 3 variables qui doivent etre verifiees cumulativement.
1) condition de plage horaire : "if time" compris entre 9h00 et 17h30 alors 1 sinon 0 (1 permettant le declenchement d un trade).
2) condition de cours : du style "if close> close (1) alors vente" / "if close <close(1).alors achat
3)condition d indicateur BDC. Ici proorder recherche mes 2 indicateurs faits "maison" : "signal bdc achat" et "signal.bdc vente" qui sont tous 2 binaires (le 1 declenchant le trade).
Dans cette variable prooder prend en.compte 2 éléments :
A=signal bdc achat
B=signal bd vente

Deroule du programme prooder :
J ai in finé les 2 lignes d achat/vente sujvantes :

Condition pour ouvrir une position longue :
Si close<close(1) ET "if time"=1 ET A=1 alors achete 1 contrat

Condition pour ouvrir une position courte
Si close>close(1) Et "if time"=1 ET B=1 alors vend 1 contrat

De ce que je pense comprendre, c est que proorder declenche les ordres sur la base des 2 premieres variables et zappe la 3 e variable (indicateur maison) comme s il n existait pas.
Je verifierais ce soir.

Re: Proorder de PRT fonctionne t'il correctement ?

par Benoist » 14 Juin 2016 07:43

C'est peut-être un problème de if et if then

Re: Proorder de PRT fonctionne t'il correctement ?

par DarthTrader » 14 Juin 2016 07:53

integre ton code BDC dans proorder c est plus propre que l appel de fonction externe je trouve

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 14 Juin 2016 07:59

Merci Benoist je verifirais ce soir.
Peut etre que tu as raison : je me.demande si on peut ecrire un ordre d achat avec 3 variables et un seul if /then comme je l ai ecrit :
If A and B and C then
Buy 1 contract at market
Endif

Re: Proorder de PRT fonctionne t'il correctement ?

par kero » 14 Juin 2016 08:01

Je ne sais pas si ça peut aider, mais peut-être une piste.

Quand je construit un indicateur avec ProBuilder, la référence des cours utilisés pour les données comme Close est celle de la bougie en cours. En revanche, lorsque j'utilise ProScreener, le code prend en référence la bougie précédente. Ainsi Close dans ProBuilder et dans ProScreener ne se réfère pas à la même bougie.

Si t'as une même décorrélation entre ProBuilder et ProOrder, ça pourrait peut-être expliquer ?

Note que si dans ProScreener j'appelle une fonction ProBuilder, il utilise également la bougie précédente et pas actuelle.

Pour tester tout ça il faudrait que tu débug ton code: le faire fonctionner en observant le moment où il se déclenche et en testant les données qu'il utilise/ses résultats intermédiaire. À l'évidence ce travail de débuggage n'a pas été fait.

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 14 Juin 2016 08:01

Oui darth c etait la piste que j envisageai : je pencherai pour un "pb d appel externe" de BDC et j envisage son integration.dans proorder.

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 14 Juin 2016 08:16

Merci pour ton aide kero et ton explication.
Je ne pense pas que ce soit un probleme lié au close mais en lien avec la 3e variable "bdc" qui n est pas prise en compte pour le dclenchement du trade.
Comme BDC fonctionne bien en tant qu indicateur independant mais est ignore lorsqu il est inclu en reference externe comme 3 e indicateur.dans proorder, je pencherai pour les 2 pistes evoquees :
- pb d IF/then (Benoist)
- pb de reference externe a bdc (comme darth et moi le pensons)

Autre question : avec 3 variables, plutot que de ne mettre qu 1 seul IF/then et les 3 variables separees par "And", est ce que je ne devrais pas plutot mettre 2 If/then ou bien 1 if/ then + 1 elsif ?

Articles en relation
Alternative à ProOrder
par Stark » 24 Fév 2016 13:16 (4 Réponses)
PRT / ProOrder n'accepte pas les ticks
par libertarian » 29 Juil 2016 20:31 (5 Réponses)
ProOrder ; au sujet de la taille de position max
par Stark » 04 Mar 2016 03:06 (9 Réponses)
ProOrder Breakout on French cac40
par falex » 26 Juil 2016 13:15 (1 Réponses)
Sorties partielles avec ProOrder
par Benoist » 02 Déc 2016 14:26 (1 Réponses)
Quand ProOrder exécute des ordres qui n'ont pas été demandés
par Jim » 21 Juin 2016 13:59 (2 Réponses)

ProRealTime

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