When tick data is requested using RequestHistory, it should arrive as double precision numbers which the API can obtain by examining BarData. It appears that the double precision numbers for dTickBid, dTickAsk and dTickTrade are arriving with the two words that make up the double precision number reversed. Examples are set forth below. I am using eSignal 10.6.2124.1086 (10/25/2010), and examining the data with Delphi 10. With the same setup, I have been receiving other BarData fields, which also arrive in double precision format, correctly for several years.
The examples below are all from the symbol RF, chosen because it trades at a slow pace, and were captured this morning. The stock traded in a range of 7.20-7.30, and the following examples were repeated several times --
When the stock traded to 7.24, my software captured the double precision numbers dTickTrade as -1.10707273898053E-234 and dClose as 7.24. If one takes the dTickTrade number and converts it to hexadecimal, it is 8F5C28F6 401CFFF1. The hex value of 7.24 is 401CF5C2 8F5C28F6. Note that the two hex numbers are nearly identical if the two words are reversed. Rounding explains the small differences.
Here are similar examples --
trade price 7.25 = hex 401D0000 00000000
dTickTrade received 5.31439236186186E-315 = hex 00000000 401D0A3D
trade price 7.26 = 401D0A3D 70A3D70A
dTickTrade = 3.94265077742761E234 = hex 70A3D70A 401D147E
trade price 7.28 = hex 401D1EB8 51EB851F
dTickTrade = 4.27698109103153E86 = hex 51EB851F 401D1EBF
The dTickBid and dTickAsk numbers arrive reversed in the same fashion.
Please let me know if there is anything else that I can provide to help get this fixed.
Thanks,
Don
The examples below are all from the symbol RF, chosen because it trades at a slow pace, and were captured this morning. The stock traded in a range of 7.20-7.30, and the following examples were repeated several times --
When the stock traded to 7.24, my software captured the double precision numbers dTickTrade as -1.10707273898053E-234 and dClose as 7.24. If one takes the dTickTrade number and converts it to hexadecimal, it is 8F5C28F6 401CFFF1. The hex value of 7.24 is 401CF5C2 8F5C28F6. Note that the two hex numbers are nearly identical if the two words are reversed. Rounding explains the small differences.
Here are similar examples --
trade price 7.25 = hex 401D0000 00000000
dTickTrade received 5.31439236186186E-315 = hex 00000000 401D0A3D
trade price 7.26 = 401D0A3D 70A3D70A
dTickTrade = 3.94265077742761E234 = hex 70A3D70A 401D147E
trade price 7.28 = hex 401D1EB8 51EB851F
dTickTrade = 4.27698109103153E86 = hex 51EB851F 401D1EBF
The dTickBid and dTickAsk numbers arrive reversed in the same fashion.
Please let me know if there is anything else that I can provide to help get this fixed.
Thanks,
Don
Comment