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

Re: Proorder de PRT fonctionne t'il correctement ?

par Stark » 14 juin 2016 08:45

Salut G'sT, j'utilise tous les jours ProOrder en réel, et mes résultats sont semblables à mes backtests. Je pense qu'il faut que tu intègres tes indicateurs maisons directement dans ton robot ProOrder.

N'hésite pas si tu as besoin d'un coup de main ;)

Re: Proorder de PRT fonctionne t'il correctement ?

par Benoist Rousseau » 14 juin 2016 09:25

vu ce que tu décris c'est un problème de if G'sT, perso je n'ai pas de soucis avec proorder

les if then else if ça me rappelle le turbo Pascal et ses boucles infinies :)

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 14 juin 2016 11:38

Msg recu Stark ;-)
J examinerai tout ca ce soir. Merci a tous pour votre collaboration collective.
En y reflechissant a nouveau, je viens de prendre conscience (grace a vous ;-) ) de la necessite d alleger, de simplifier mon "code proorder".

Effectivement ma 3e variable (signal.bdc achat") fait appel a un indicateur maison binaire qui lui meme fait appel (puisqu il est binaire) a un autre indicateur maison externe "bdc".

Proorder fait donc reference a 2 indicateurs externes imbriques.
De meme l'indicateur "signal bdc achat", contient aussi un if/then qui entre peut etre "en conflit" avec mon if/then dans proorder.
Idem pour une nomenclature "A=" qui intervient dans BDC / signal bdc achat / et proorder... d ou peut etre une confusion des genres....

Je vais simplifier mon code proorder et je vous tiendrai informés

Re: Proorder de PRT fonctionne t'il correctement ?

par Jim » 14 juin 2016 11:43

Hello G'sT,

Je suis un utilisateur régulier de ProOrder, et je suis souvent agacé par des différences avec PBT. Les conséquences peuvent être très lourdes. A titre personnel, pour un même système de trading, j'ai un code spécifique pour PBT et un code spécifique pour ProOrder.

J'ai lu que tu utilises des Close et des Close[1] dans ton code, et là je dis : Aïe ! Perso, quand je passes de PBT à PO, je remplace les Close par des Close[1], et les Close[1] par des Close[2].
En effet, PBT fait un test de condition en fin de chandelier, et si le test est positif il ouvre une position en début de chandelier suivant. PO fait un test de condition en début de chandelier, et si le test est positif il ouvre une position immédiatement.
En conséquence, tu te retrouves avec Close = Close[1] (si absence de glissement).

Re: Proorder de PRT fonctionne t'il correctement ?

par Stark » 14 juin 2016 12:10

Jim a écrit :En effet, PBT fait un test de condition en fin de chandelier, et si le test est positif il ouvre une position en début de chandelier suivant. PO fait un test de condition en début de chandelier, et si le test est positif il ouvre une position immédiatement.
Chez moi, ProOrder ne prend position qu'en clôture de bougie, je suis surpris de ça Jim.

Re: Proorder de PRT fonctionne t'il correctement ?

par Jim » 14 juin 2016 12:29

Stark,
Ca m'intrigue aussi ce que tu me dis. Il faut croire qu'on fait une utilisation différente de ProOrder, ou bien on a des éléments de langage différents.

Je vais te donner un bout de code, et tu me diras si tu obtiens le même résultat :
IF TIME = 130500 THEN
BUY 1 CONTRACT AT MARKET
ENDIF
En ut 1 min, ProOrder effectuera le test entre 13h05m00s et 13h05m02s environ, puis ig essaiera d'ouvrir une position dans la foulée. Si ig rejette l'ordre, il retentera de passer l'ordre vers 13h05m05s. Bref, l'ordre est exécuté au début de la Bougie qui va de 13h05m00s à 13h06m00s.

En tout cas, Stark, si tu disposes d'une méthode pour exécuter les ordres en fin de Bougie, je suis très intéressé !

Re: Proorder de PRT fonctionne t'il correctement ?

par Stark » 14 juin 2016 12:32

Ok je vais essayer. Après j'utilise l'ut 10 secondes pour mes codes, peut-être que cela joue.

Re: Proorder de PRT fonctionne t'il correctement ?

par kero » 14 juin 2016 16:21

Bah 2 IF/THEN ou un IF+ELSIF, ça ne donne pas le même algorythme.

En fait, le mieux serait de le voir, ce code.

Re: Proorder de PRT fonctionne t'il correctement ?

par plataxis » 14 juin 2016 17:00

c'est surtout que Jim ouvre une position sans autre condition que l'heure. Peut-être Stark met-il une condition de prix ou d' indicateur ou de n'importe quoi qui fait que prt attend la cloture d'une Bougie ?

Re: Proorder de PRT fonctionne t'il correctement ?

par Stark » 14 juin 2016 17:10

Oui c'est tout à fait ça plataxis, j'ai des conditions en mode CLOSE, donc forcément mon code attend la fin de la Bougie pour déterminer si les conditions d'entrées sont réunies, et seulement à l'ouverture de la Bougie suivante il rentre.

Voilà pourquoi on a une différence Jim ;)

Re: Proorder de PRT fonctionne t'il correctement ?

par Jim » 14 juin 2016 19:01

les amis, vous êtes parvenus à me faire douter :?

Etant persuadé que ce n'est pas une affaire de Close ou autre, j'ai lancé le système suivant sur le DOW, en UT 1 min :

DEFPARAM CumulateOrders = True
if close >0 then
buy 1 contract at market
endif


Le système a été lancé à 12h42m15s (heure US). Le résultat obtenu est décrit dans le tableau ci-dessous.
On voit clairement que les positions sont ouvertes en début de bougie.


Donc je maintiens que ProOrder ouvre une position en début de bougie quelque soit la condition d'entrée.
Alors c'est vrai que souvent il y a du glissement. Le record que j'ai obtenu est de 75 secondes pour fermer une position sur le indice anglais. :shock:
Fichiers joints
Nouvelle-image-8-ConvertImage.jpg
Nouvelle-image-8-ConvertImage.jpg (41.46 Kio) Vu 1422 fois

Re: Proorder de PRT fonctionne t'il correctement ?

par Stark » 14 juin 2016 19:17

Tu es sur un compte démo ou réel pour faire ton test ?

Re: Proorder de PRT fonctionne t'il correctement ?

par Jim » 14 juin 2016 19:21

Je suis bien entendu sur un compte démo pour ce test...

Re: Proorder de PRT fonctionne t'il correctement ?

par ladefense92800 » 14 juin 2016 20:31

Merci jim pour ces indications qui me sont tres utiles .

ça pourrait bien resoudre mes soucis .

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 14 juin 2016 23:02

Bon voilà je viens de terminer le bricolage de la machine.

J'ai opté pour tout réécrire dans une version "prooder V2" dans l'optique dans un 1er temps de la backtester et comparer ce backteste avec celui de la V1 ; ça va le résultat du backtest de cette réécriture est le même que la V1.

Pour réécrire cette V2 j'ai suivi vos 2 recommandations principales :
1) j'ai inclus les indicateurs en lien externes dans prooder sous formes de calculs
2) j'ai conçu les 3 variables différemment afin d’alléger le If/then et n'avoir plus qu'un seule variable associé à 1 seul if/then dans la ligne de l'ordre d'achat/vente.


Ainsi le code se présente sous "l'architecture" suivante :

//REM CALCUL BDC SIGNAL D'ACHAT
Signaldachat=0
IF
ici je mets une formule qui calcule BDC
then
Signaldachat=1
endif

//REM CALCUL BDC SIGNAL DE VENTE
Signalvente=0
IF
ici je mets une formule qui calcul BDC
then
Signalvente=1
endif

// REM CALCUL DE LA PLAGE DE TRADING
heuredebut =XXXXX
heurefin=YYYYY
heuretrading=0
if time>heuredebut and time<heurefin then
then heuretrading=1
endif

//REM CALCUL VARIABLE PRIX
variableprixachat=0
If
ici je met une formule spécifique
then
variableprixachat=1
endif
variableprixvente=0
If
ici je met une formule spécifique
then
variableprixvente=1
endif

//REM CALCUL POSITION
Achat=signaldachat+heuretrading+variableprixachat
vente=signalvente+heuretrading+variableprixvente


// Conditions pour ouvrir une position acheteuse

IF NOT ONMarket AND Heikin Ashi=3 THEN
BUY 1 CONTRACTS AT MARKET
ENDIF


// Conditions pour ouvrir une position en vente à découvert
IF NOT ONMarket AND VTE=3 THEN
SELLSHORT 1 CONTRACTS AT MARKET
ENDIF


// Stops et objectifs
SET TARGET PROFIT
SET STOP LOSS



Voilà j'essayerai cette nouvelle version demain.

Re: Proorder de PRT fonctionne t'il correctement ?

par Stark » 15 juin 2016 08:47

Un conseil, pour tes IF, utilise plutôt celui là :

IF (Ton calcul de BDC) THEN
Signaldachat = 1
ELSE
Signalachat = 0
ENDIF

Sinon tu risques d'avoir ton Signalachat qui reste bloqué à 1 dans certains cas (pareil pour tes autres variables).

Et Perso je raccourcirai comme suit :

IF NOT ONMarket AND Signalachat = 1 AND heuretrading = 1 AND variableprixachat = 1 THEN
BUY 1 CONTRACTS AT MARKET
SET TARGET PROFIT
SET STOP LOSS
ENDIF

(Et pareil pour la vente)

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 15 juin 2016 08:56

Ok merci du conseil Stark, je reverrais ca ce soir ; la je l ai lance hier soir, plus de possibilite de le changer via mon tel.

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 15 juin 2016 09:04

Bon il est 9h02 et ma V2 n a pas encore lancé de trade contrairement a ma v1 qui avant hier avait commencé les trades a 9h01...... ce qui semble etre de bon augure......

Re: Proorder de PRT fonctionne t'il correctement ?

par G'sT » 15 juin 2016 10:49

Super proorder a lancé un.trade et l a deboucle a son TP...
Ca marche :-)

Re: Proorder de PRT fonctionne t'il correctement ?

par Stark » 15 juin 2016 11:35

@Jim > C'est drôle je viens de tester ton code, effectivement en UT 1min, il se déclenche au bout de 5s en moyenne (latence ?).

Par contre, en UT 10s, il se déclenche très bien en temps voulu
Spoiler:
Test.jpg
Test.jpg (41.81 Kio) Vu 1360 fois

Sujets similaires
Détecter correctement une tendance
Fichier(s) joint(s) par Benoist Rousseau » 08 janv. 2020 10:03 (10 Réponses)
Exploiter correctement les volumes.
par Vaik » 01 avr. 2020 10:47 (0 Réponses)
Calculer (correctement) un rendement sur plusieurs années
par Sowee » 22 nov. 2020 10:02 (15 Réponses)
Comment écrire correctement sur une capture ?
Fichier(s) joint(s) par ChristelleP » 23 juil. 2023 11:07 (4 Réponses)
PRT ne fonctionne pas avec windows 10???
par ManiakTrader » 30 janv. 2016 01:09 (3 Réponses)
Gros Bugs PRT ProOrder trading automatique
par JUPITRADER » 19 nov. 2014 21:19 (11 Réponses)
PRT ProOrder Ordres Stop ignorés
par SebTrades » 31 mai 2016 01:00 (0 Réponses)
PRT / ProOrder n'accepte pas les ticks
par libertarian » 29 juil. 2016 20:31 (5 Réponses)