Point isn't logged correctly?

 

Hi there,


I'm running the following code in my EA which is attached to EURUSDH1:


Print("Trailing Stop is : ",TrailingStop);
Print("Ask is : ",Ask);
Print("Point is : ",MarketInfo(Symbol(),MODE_POINT));
Print("Ask+Point*TrailingStop is : ",(Ask+Point*TrailingStop));

Print("OrderStopLoss is : ",(OrderStopLoss()));


Point is alway displayed as 0 in the Journal and the tester log file (see below):



Point displayed as 0 in Journal

I was expecting Point to be displayed as 0.00001. And if you do the math, Ask+Point*TrailingStop proves that Point is in fact 0.00001.

Can any one tell me why Point isn't displayed or logged correctly?


Regards,


Wilbur

 

Print() outputs doubles to 4 decimal places.

Use this instead:

Print("Point is : ",DoubleToStr(MarketInfo(Symbol(),MODE_POINT),8));


CB

 
cloudbreaker:

Print() outputs doubles to 4 decimal places.

Use this instead:

Print("Point is : ",DoubleToStr(MarketInfo(Symbol(),MODE_POINT),8));


CB

Hi CB,


That worked although it did place some unnecessary zeros after the 1.

Thank you very much.


Wilbur

 
wilbur:

Hi CB,


That worked although it did place some unnecessary zeros after the 1.

Thank you very much.


Wilbur

I just noticed the 8 on the end of the code. I changed this to 5 and it is perfect.

 
wilbur:

I just noticed the 8 on the end of the code. I changed this to 5 and it is perfect.

Don't use 8 or 5, use Digits.

 

I put the 8 in on purpose in order to show you exactly what the value of Point was.

WHRoeder - I'm quite aware of the Digits variable; I just didn't want the poster wondering what other "1s" might be lurking beyond that level of precision.


CB