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

RE: I think I have to change my opinion from bad precision to bug gy c alculations


  • To: Jack Griffin <omega-list@xxxxxxxxxx>
  • Subject: RE: I think I have to change my opinion from bad precision to bug gy c alculations
  • From: "Bengtsson, Mats" <mats.bengtsson@xxxxxxxx>
  • Date: Tue, 17 Jul 2001 01:27:20 -0700

PureBytes Links

Trading Reference Links

Ok, sorry for that. Of course you know the calculation was based on high,
low, and close. Let me motivate myself in another way then:

When running the DMI calculation through chartscanner, on 200 different
stocks, this problem occurs 414 times over the data I have. 

With the problem, I refer to a problem where the difference between two
price values in the DMI calculation should become zero but becomes a
rounding error (I compare absvalue of the difference to 0.000001). And this
is in the standard DMI calculation only, similar comparisons are all over
the place in the indicators, even if many of them only results in an error
of the precision difference itself, not a whole accumulator addition as in
the case of DMI. Since the DMI is read only, I can not correct this so it
works in all places using DMI, I can only make a copy and see to that I
myself call my copied function which works, but there are so many other
indicators still using the faulty code...

If I have 414 errors in 200 stocks in one single indicator, already using a
multiplier of 1000 as is the default setting, I will get same kind of errors
no matter what multiplier I select, only at other places. The problem arises
not from the selected multiplier, the example I sent was only one example
there are many others. The problem arises from Omegas precision being far
worse than even single precision, and from Omegas indicator code not taking
this into account.

If the error would occur where standard single precision errors occur, then
I could understand it. If Omega had protected the accumulator code in the
indicators by safeguarding their comparisons so errors did not occur, then I
would know I still got the correct results no matter what happens inside
Tradestation and that would be quite well. 

But currently, the case is that whenever you compare price values, you might
get something else than you think, where any standard single precision would
get the correct results. This happens even though we already get other
problems caused by Omega converting all price values to integers (presumably
to get a possibility to make good comparisons since integers always are
exact in comparisons). The current effect is that we lose price data
accuracy when converting to the internal integer representation in
Tradestation, and at the same time we get comparison errors since the
Tradestation engine does math in some totally non standard way resulting in
accuracy problems far beyond single precision.

I can not solve that with a multiplier, that has to be solved by Omega in
the Tradestation code.

> -----Original Message-----
> From: Jack Griffin [mailto:jack_2231@xxxxxxxxx] 
> Sent: den 17 juli 2001 03:20
> To: Bengtsson, Mats; Eskimo Omega List
> Subject: RE: I think I have to change my opinion from bad 
> precision to bug gy c alculations
> 
> 
> --- "Bengtsson, Mats" <mats.bengtsson@xxxxxxxx> wrote:
> > Making the internal numbers bigger is not a solution
> > since the data involved
> > in calculation is high/low/close. You might be right
> 
> Gee, I thought you were computing the dmi of the time.
>  Stupid me.
> 
> Using the global server, insert a 1950 price
> multiplier field of 1000.
> 
> Jack
> 
> 
> 
> __________________________________________________
> Do You Yahoo!?
> Get personalized email addresses from Yahoo! Mail 
http://personal.mail.yahoo.com/


This message contains information that may be privileged or confidential and is the property of the Cap Gemini Ernst & Young Group. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message.