Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

chrisleonard

Help with Numtostr

Recommended Posts

hi

 

im trying to turn the Average true range to show the movement in the market for the stock im looking at!!

 

im having trouble as the decimals for price are always different yet the ATR always seems to be 4 decimal places..

 

The code im using is!!

 

variables:
   Decimals( Log(PriceScale) / Log(10) ),
   decimal(0);

if decimals = 2 then decimal = 10;
if decimals = 3 then decimal = 100;
if decimals = 4 then decimal = 1000;
if decimals = 5 then decimal = 10000;

ID = Text_New(D,T,L-Range, "movement: " + numtostr(ATR*decimal,0) );

 

this gives me a value which is fine for GBPUSD but then it starts to mess up on say

@cl.c

 

Anyone got any ideas how to maybe change my code to do what i need it to?

 

I think im nearly there!!

 

Thanks

Share this post


Link to post
Share on other sites

hmm i think i thought of a way

 

using numto string how could i change the ATR value using the decimals value

 

So could i put something like this to change the atr decimal places to the same as the price?

 

ATR2 = numtostr(ATR,decimals);

Edited by chrisleonard

Share this post


Link to post
Share on other sites

hmm i think im nearly there but now i need to multiply this value by 1000

 

can someone plz help???

 

ID = Text_New(D,T,L-Range, "ATR: " + numtostr(ATR,decimals) ); < ----- need to multiply by 1000 after the ATR has had its decimals corrected?????

Edited by chrisleonard

Share this post


Link to post
Share on other sites


variables:
   Decimals( Log(PriceScale) / Log(10) ),
   decimal(0),
   ID(-1);

Value1 = XAverage( close, 200 ) ;

if decimals = 2 then decimal = 10;
if decimals = 3 then decimal = 100;
if decimals = 4 then decimal = 1000;
if decimals = 5 then decimal = 10000;


if Value1 > Value1[1] then begin
ID = Text_New(D,T,L-Range, "movement: " + numtostr(ATR,decimals) ); 
end;

 

this will display the atr with the same number of decimals as the price!!

 

I now need to multiply this by value "decimal" to give a number.

 

Im just trying to achive the number of point movement in a number relivant to the price

 

Thanks

Share this post


Link to post
Share on other sites

at the moment this will give a value of 0.53 for @cl.c but this needs to be multiplied by 100 to make the value correct..

 

 

gbpusd will give 0.00175 if i multiply by 10000 then it gives 17.5 which is cool!!

 

 

 

basically before the text is diplayed i need to multipy it by the value "decimal"!!

Edited by chrisleonard

Share this post


Link to post
Share on other sites

chris,

 

have you searched or asked on the TS forums? I blve I have a seen a solution for this up there.

Have you tried using the round function instead of assigning to decimal var?

Will look at it later if I have time.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.