This is wrong, you are missing a parameter . . .
if(OrderSelect(SELECT_BY_POS,MODE_TRADES)==true) // <---- which order are you selecting ?
you are missing the index parameter.
Thanks RaptorUK for your response
The First Order, I mean the Original order which i open Opposite order for it
This is wrong, you are missing a parameter . . .
you are missing the index parameter.
TP, SL, TakeProfit, StopLoss and Dig are not defined... so you must have more code than you posted.
You will need to add Print ("TakeProfit: ",TakeProfit); just before and just after you modify it.
sn
Thanks serpentsnoir for your response
I already define it but this is a part which include the error only and i try to print Takeprofite and Stoploss and get what i post it it my topic (Sometimes 20 and Sometimes 2000)
Just add in the first the below two lines
extern double TakeProfit = 20;
extern double StopLoss = 0;
So your TP is . . .
TP = OrderOpenPrice()-(TakeProfit*Dig)*Point; or TP = OrderOpenPrice()+(TakeProfit*Dig)*Point;
both based on TakeProfit which you claim is set at 20.
From the code you have shown TP will be either OrderOpenPrice() +/- 20 * Point or OrderOpenPrice() +/- 200 * Point . . . NOT OrderOpenPrice() +- 2000 * Point
If your testing shows that TakeProfit*Dig = 2000 (please show a copy/paste from the Journal to show this) then you have not shown the code that makes this happen.

- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
You agree to website policy and terms of use
Dear's,
Kindly i need your help me on the below as it's open oppsite trade for one trade exsit,but while i test it it some time calculate take profie (Open Order Price-20 point) and this right and sometimes (Open Order Price-2000 point) calculate and this wrong
Please Heeeeelp