PureBytes Links
Trading Reference Links
|
I think I have fixed the NASDAQ volume problem thanks to Bob Scott and David
Jennings giving me the cause. Apparently Ts2ki cannot handle numbers in GS
exceeding a certain limit. Bob and David tell me that 2,147,483,647 is the
largest 4 byte (32 bit) number that can be held in C++. Im not sure what
the limit is in Ts4 which is a 16 bit program as opposed to Ts2k which is a
32 bit program.
I use eSignal which sends NASDAQ total vol under the symbol $TVOLQ. Lately
NASDAQ total vol has exceeded 2.147 billion shares which produces a value
over the number limit noted above on several occasions. Ts2ki handles this
symbol in a strange manner. In GS/Edit Symbol/Edit Data/Trade Record 1 Day
the values are stored normally in the Open, High,Low,Close fields. For some
unknown reason the Close value is also stored in the Tot Volume field. This
is true only for Trade Record 1 day and not minute or tick data. It is in
the Close and Tot Vol field that GS was giving me wierd negative values when
total vol went over 2.147 Bil shrs. Also when the limit was exceeded
charting would show zero in the Data Window for the Close field and it would
also display the negative number if you plotted a volume study.
Anyway I fiddled with the scaling and multiplier settings in the Symbol
Dictionary and in GS Edit Data/Settings Tab to no particular avail. The
price multipliers and price scale settings in the Symbol Dictionary seem to
have no effect whatsoever. The price scale setting in GS Edit
Symbol/Settings Tab does affect charting but it would not eliminate the
negative values in charting if you plotted $TVOLQ. Strangely again if I
plotted $TVOLQ as an indicator[plot1 (C Data1) with $TVOLQ as Data1] the
indicator plot became positive and the values were correct if I set the
price scale to 10 instead of As Is but the value now had 11 digits instead
of 10 which made it impossible to scale since charting can only scale a
number with a max of 10 digits.
The solution that works and allows me to plot $TVOLQ as a symbol and as an
indicator both with correct positive values is to eliminate the last digit
on all values in GS by using a .1 price multiplier. This is done by
selecting the symbol then applying the multiplier in GS Edit Symbol/Edit
data. The procedure is fairly obscure but it is correctly described in
Omega's Knowledge Base Document ID 647 dated 7/27/2000. Its pretty long or
I would just copy it here. Here is the link:
http://www.tradestation2000i.com/support/knowledge_base_full.asp?DocumentID=
647
After applying the multiplier the symbol charts with a 9 digit number which
is obvioulsy not correct since the actual number is in billions not
millions. You can simply assume the last digit is rounded off or plot the
symbol as an indicator and mulitply it by 10 which restores it to a full 10
digit number. Why this works I have no idea since I am now back to a 10
digit number exceeding 2.147 billion.
This procedure does not change the data stored in GS it merely temporarily
modifies it and you can delete the price multiplier any time you want.
Hopefully this will work for other feeds also.
Bill Wood
-----Original Message-----
From: Phil Lane [mailto:patterntrader@xxxxxxxxxx]
Sent: Saturday, March 24, 2001 6:53 AM
To: Bob Scott; Omega-List; William Wood; David Jennings
Subject: Re: Strange $TVOLQ Problem
Hi guys,
here are some images of my settings and also the spotty nasdaq volume plot.
I hope they're small enough to make it through. Anyway changing the scaling
to "10" didn't work.
It occurs to me that possibly the number must be within range BEFORE it gets
scaled. In that case it would be un-fixable. I hope I'm wrong!
rgds, phil
|