Welcome to NexusFi: the best trading community on the planet, with over 150,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- see if you qualify for a discount below.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
Prices come thru as doubles, so they are unformatted numbers. The numbers from the exchange will be fine. This is an operating system specific issue.
Without looking at the code, I would guess there's some number formatting going on that won't work on PCs with European operating systems where the "," and "." are swapped.
To ensure you get the right separator, you need to use System.Globalization.NumberFormatInfo.CurrentInfo.NumberDecimalSeparator
Freaking commas instead of decimals.. what are you Europeans smoking over there?? lol
Now it makes sense to me why some people were having that crash. I kept thinking, this is impossible what is going on but somehow the process is getting through my coding statement So I changed my code to not kick out the length exception problem by using a Case statement with string compares. Which obviously has stopped the crash but this is still getting through, I'm assuming your TickSizes on instruments show like this then. 0,01?
Thank you for this DionysusToast.
Phillip can you do me one more favour so I can confirm and don't go on a wild goose chase. Can you open your instrument manager and search for Bund and then screen shot it so I can see what your tick size setting looks like in there? I am hoping it is this 0,01.
In the mean time I will start adding some code to catch it.
Well - I'm English - we use the 9,999.99 format. It's the rest of Europe smoking the left handed cigarettes.
The Instrument.MasterInstrument.TickSize in Ninja will still be a regular double which will be fine. A number is a number, regardless of the Operating System. It'll be number formatting more than likely that gives you issues.
Are you using String.Format or Bars.Instrument.MasterInstrument.FormatPrice anywhere?
Most likely thing is a String.Format with a hard coded "." instead of the System.Globalization.NumberFormatInfo.CurrentInfo.NumberDecimalSeparator
Bund on my US Operating system shows up with 999.99 format.
I tried to change my region to European so that I could replicate and see exactly how it is coming through in the TickSize column but it doesn't seem to alter my ninja settings so I've taken a flying guess I figure the Ticksize can only come through in 1 of 3 ways for Bund:
1. 0.01 (my format)
2. 0,01 (European maybe) - I would've guess this
3. 001 (European maybe) - DionysusToasts comment leads me to think it may be this also.
I have written code to catch all three now so lets see if that solves it. outside chance it puts it through as some other weird conversion but lets see.
With Level 2 data coming from a TT connection, there is a problem as shown below:
(After I refresh the chart, the erroneous asks below, and bids above, the last price disappear; but then start appearing again as the last price moves.)
Go to the options menu, down to the performance area and switch on the IB option. That might sort it. There is a feed specific issue in OnMarketDepth where for some feeds, it does not automatically fire a clear event. This happens on IB, I have never tested the TT feed but it is likely the same problem. Just set it to True and let me know. I'm quite certain that will sort it. I will amend that option to say IB/TT - can you confirm for me?