[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: PriceScale -- ND, NQ, NDX



PureBytes Links

Trading Reference Links

> BMI is transmitting bad data for nd and nq this eve.  There is a
> sudden rise of 645 points on the graph to 4670, but the price
> listed in text is still within the prior scale at at 3993.  When I
> changed the scale for ND to 1/10, it did not solve the problem.  I
> did not see any other resolution listed here.  Did you get it
> worked out or what have others done? 

I have no problems with my data.  The problem isn't with BMI, but 
with the TS implementation.

TS apparently stores intraday prices as offsets from the opening 
price.  They use a 16-bit integer to store these offsets, multiplying 
the 16-bit integer times the PriceScale set up for that symbol.  
Thus, TS can handle a maximum offset from the open of 2^16/2 * 
PriceScale.  If your ND / NQ / NDX / etc is set at the default 
PriceScale of 1/100, that maximum offset is 327.68.  If you exceed 
that maximum offset, the 16-bit integer overflows and you get a 
sudden jump of 2^16 * PriceScale = 655.36.

The open for ND0M yesterday was 4350, so the minimum price TS could 
store with a 1/100 PriceScale was 4350 - 327.68 = 4022.32.  The price 
hit went below 4022 at 4:00 yesterday.  Any ticks below 4022.32 would 
have been stored with a value 655.36 too high.

Charts that are open when the price exceeds the 327.68 maximum offset 
still look just fine.  The data is received fine from BMI, and that's 
what the chart displays.  But the data is STORED incorrectly in the 
TS database.  Any new charts that you open must be read from the 
database, and they will show the error.

After this happened in the ND last week, I changed the PriceScale for 
the affected symbols to 1/10.  This means I lost the .05 minimum 
resolution in the ND, but that's not too much of a loss these days.

I'm not sure what process Hango is using, and I don't understand how 
it can work.  If you don't change the PriceScale, the data still gets 
stored incorrectly.  If you change the PriceScale AFTER the error, 
then you still have incorrect data in your database.

The only way I know to fix this is to
 1. Change your PriceScale to 1/10
 2. Paste in correct data to fix the bad days

I've uploaded clean 4/10/00 data for @CCO, ND0M, ND0U, NQ0M, NQ0U, 
and NDX to my FTP site:  ftp://ftp.frii.com/pub/fritz/Nd0410.omz

Gary