le t/p ne fonctionne pas correctement

 
ticket=OrderSend(Symbol(),OP_BUY,0.1,Ask,3,0,Ask+0.01,"BFS_Orders",0,0,Green);

ticket=OrderSend(Symbol(),OP_SELL,0.1,Bid,3,0,Bid-0.01,"Second_Orders",0,0,Green);

Bonjour,

J'utilise le testeur de stratégie. Je place des ordres en utilisant le code ci-dessus en EURUSD. Ici, je fixe un objectif de 100 pips pour chaque transaction. Mais je ne l'obtiens pas. Parfois, j'obtiens 102, -10, 78 etc...

232 2009.12.08 13:20 t/p 120 0.10 1.4762 0.0000 1.4762 98.96 21356.75

233 2009.12.11 14:30 t/p 113 0.10 1.4662 0.0000 1.4662 59.44 21416.19

234 2009.12.15 08:29 t/p 109 0.10 1.4562 0.0000 1.4562 26.16 21442.35

235 2009.12.17 02:02 t/p 104 0.10 1.4460 0.0000 1.4460 -5.04 21437.31

236 2009.12.17 09:46 t/p 103 0.10 1.4360 0.0000 1.4360 -6.08 21431.23

237 2009.12.22 15:47 t/p 102 0.10 1.4258 0.0000 1.4258 -10.24 21420.99

239 2010.01.04 01:44 t/p 121 0.10 1.4257 0.0000 1.4257 87.52 21508.51

301 2010.08.02 13:45 t/p 155 0.10 1.3130 0.0000 1.3130 129.70 23807.02

302 2010.08.03 08:14 t/p 154 0.10 1.3230 0.0000 1.3230 130.03 23937.05

304 2010.08.05 12:42 t/p 156 0.10 1.3230 0.0000 1.3230 100.00 24037.05

305 2010.08.06 14:08 t/p 153 0.10 1.3330 0.0000 1.3330 132.01 24169.06

Pourquoi cela se produit-il ? Merci d'avance.

-Krishna.


 

Je ne peux pas expliquer le -10 mais pour les autres...hmmm, peut-être ceci ? Je ne suis pas sûr.. :

L'OP_BUY semble correct puisque vous payez le spread immédiatement en achetant au prix Ask, mais votre OP_SELL ne tient pas compte du spread. Vous "vendez" au prix de l'offre, le prix de l'offre baisse à Bid-0.1 (moins 100 pips), puis vous "rachetez" au prix de l'offre, de sorte que le spread mange une partie de ces 100 pips. Si le courtier a un spread fixe, vous pouvez définir le TP comme Bid-0.1-MarketInfo(Symbol(),MODE_SPREAD).

En dehors de cela, les petites erreurs comme 102 etc. peuvent être expliquées par :

1. un slippage sur l'ordre initial (puisque le prix du TP est calculé à partir du prix avec lequel vous demandez l'ordre, et non le prix réel avec lequel l'ordre est exécuté ).

2. le prix peut dépasser votre TP en 1 tick

3. le prix peut bouger à nouveau pendant que votre ordre de clôture est exécuté.

 
alladir:

Je ne peux pas expliquer le -10 mais pour les autres...hmmm, peut-être ceci ? Je ne suis pas sûr.. :

L'OP_BUY semble correct puisque vous payez le spread immédiatement en achetant au prix Ask, mais votre OP_SELL ne tient pas compte du spread. Vous "vendez" au prix de l'offre, le prix de l'offre baisse à Bid-0.1 (moins 100 pips), puis vous "rachetez" au prix de l'offre, de sorte que le spread mange une partie de ces 100 pips. Si le courtier a un spread fixe, vous pouvez définir le TP comme Bid-0.1-MarketInfo(Symbol(),MODE_SPREAD).

En dehors de cela, les petites erreurs comme 102 etc. peuvent être expliquées par :

1. un slippage sur l'ordre initial (puisque le prix du TP est calculé à partir du prix avec lequel vous demandez l'ordre, et non le prix réel avec lequel l'ordre est exécuté).

2. le prix peut dépasser votre TP en 1 tick

3. le prix peut bouger à nouveau pendant que votre ordre de clôture est exécuté.


Bien. Mais pourquoi les valeurs -ve(Loss) sont là.
 
krishna_gopal_2:

Bonjour,

J'utilise le testeur de stratégie. Je place des ordres en utilisant le code ci-dessus en EURUSD. Ici, je fixe un objectif de 100 pips pour chaque transaction. Mais je ne l'obtiens pas. Parfois, j'obtiens 102, -10, 78 etc...

232 2009.12.08 13:20 t/p 120 0.10 1.4762 0.0000 1.4762 98.96 21356.75

233 2009.12.11 14:30 t/p 113 0.10 1.4662 0.0000 1.4662 59.44 21416.19

234 2009.12.15 08:29 t/p 109 0.10 1.4562 0.0000 1.4562 26.16 21442.35

235 2009.12.17 02:02 t/p 104 0.10 1.4460 0.0000 1.4460 -5.04 21437.31

236 2009.12.17 09:46 t/p 103 0.10 1.4360 0.0000 1.4360 -6.08 21431.23

237 2009.12.22 15:47 t/p 102 0.10 1.4258 0.0000 1.4258 -10.24 21420.99

239 2010.01.04 01:44 t/p 121 0.10 1.4257 0.0000 1.4257 87.52 21508.51

301 2010.08.02 13:45 t/p 155 0.10 1.3130 0.0000 1.3130 129.70 23807.02

302 2010.08.03 08:14 t/p 154 0.10 1.3230 0.0000 1.3230 130.03 23937.05

304 2010.08.05 12:42 t/p 156 0.10 1.3230 0.0000 1.3230 100.00 24037.05

305 2010.08.06 14:08 t/p 153 0.10 1.3330 0.0000 1.3330 132.01 24169.06

Pourquoi cela se produit-il ? Merci d'avance.

-Krishna.


D'où viennent ces chiffres ? C'est vous qui les calculez ? Comment ?
 

Aucune idée :/ J'ai cependant quelques questions :

C'est peut-être juste mon courtier, mais je ne peux pas régler le TP avec OrderSent, je dois ouvrir l'ordre puis régler le SL et le SP avec OrderModify ensuite.

Et que se passe-t-il avec les traders perdants ? Ils restent ouverts pour toujours ?

 
alladir:

Et que se passe-t-il avec les traders perdants ? Ils restent ouverts pour toujours ?


J'attends que la transaction se termine avec un bénéfice.
 
angevoyageur:
D'où viennent ces chiffres ? C'est vous qui les calculez ? Comment ?

krishna_gopal_2:

J'attendrai que la transaction se termine avec un profit.

Vous n'avez donc pas besoin d'explication puisque vous ne répondez pas.
 
alladir:

Je ne peux pas expliquer le -10 mais pour les autres...hmmm, peut-être ceci ? Je ne suis pas sûr.. :

L'OP_BUY semble correct puisque vous payez le spread immédiatement en achetant au prix Ask, mais votre OP_SELL ne tient pas compte du spread. Vous "vendez" au prix de l'offre, le prix de l'offre baisse à Bid-0.1 (moins 100 pips), puis vous "rachetez" au prix de l'offre, de sorte que le spread mange une partie de ces 100 pips. Si le courtier a un spread fixe, vous pouvez définir le TP comme Bid-0.1-MarketInfo(Symbol(),MODE_SPREAD).

En dehors de cela, les petites erreurs comme 102 etc. peuvent être expliquées par :

1. un slippage sur l'ordre initial (puisque le prix du TP est calculé à partir du prix avec lequel vous demandez l'ordre, et non le prix réel avec lequel l'ordre est exécuté).

2. le prix peut dépasser votre TP en 1 tick

3. le prix peut bouger à nouveau pendant que votre ordre de clôture est exécuté.

Le spread est effectivement payé à la sortie de la transaction. Il n'y a pas de slippage dans le Strategy Tester, sauf si vous utilisez un outil tiers pour le faire. Le prix ne peut pas bouger pendant le traitement d'un ordre... c'est le Strategy Tester.
 
krishna_gopal_2:

Bonjour,

J'utilise le testeur de stratégie. Je place des ordres en utilisant le code ci-dessus en EURUSD. Ici, je fixe un objectif de 100 pips pour chaque transaction. Mais je ne l'obtiens pas. Parfois, j'obtiens 102, -10, 78 etc...

232 2009.12.08 13:20 t/p 120 0.10 1.4762 0.0000 1.4762 98.96 21356.75

233 2009.12.11 14:30 t/p 113 0.10 1.4662 0.0000 1.4662 59.44 21416.19


Où prenez-vous en compte le spread dans vos calculs ? Vous comprenez qu'un OP_BUY est fermé par une vente ? et qu'une vente se fait à l'offre ?
 
RaptorUK:
Le spread est effectivement payé lorsque la transaction est sortie. Il n'y a pas de slippage dans le Strategy Tester, à moins d'utiliser un outil tiers pour le faire. Le prix ne peut pas bouger pendant le traitement d'un ordre... c'est le Strategy Tester.

C'est ce que je veux dire, avec le OP_SELL, il prend 100 pips et paie ensuite le spread, donc le profit final ne sera pas de 100 prévu.

L'OP_BUY est bien puisqu'il commence à calculer à partir du prix initial de l'Ask.

RaptorUK:
Il n'y a pas de slippage dans le Strategy Tester à moins d'utiliser un outil tiers pour le faire. Le prix ne peut pas bouger pendant qu'un ordre est traité... c'est le Strategy Tester.

Ah oui, j'avais oublié ça, je n'ai pas encore utilisé le back testing :o
 
Bien. Maintenant, que dois-je faire pour obtenir plus ou moins 100pips. Existe-t-il une formule pour calculer le Spread ?