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

Re: [amibroker] Re: Rounding up the BuyPrice to the nearest 0.25 point



PureBytes Links

Trading Reference Links



Friday, July 20, 2007, 8:06:15 PM, you wrote:


>> BuyPrice = something - ( something % 0.25 );


>> Multiply your number by 4.

>> Round it to an integer

>> Divide it by 4 to a decimal.


> These two operations give exactly the same result (within the limits

> of possible float rounding errors) but in a slightly different way.


> The modulo operator (%) gives the remainder after dividing by the

> modulus (0.25), so the first statement is saying take the number and

> remove any remainder after dividing the number by 0.25. That will

> force the number to be a multiple of 0.25. To make it more obvious,

> imagine the modulus is 10 and the number 363. 363%10 is 3 and 363-3 is

> 360, a multiple of 10 as expected.


> The second method does the same thing but involves a multiplication as

> well as a division, whereas the modulo method only involves a division

> and a subtraction. Subtraction is generally less computationally

> expensive than multiplication, and depending on how it's implemented,

> the modulo operation may not require doing the full division just to

> get the remainder (it's been quite a while though since I looked at

> how things like division and modulo are implemented at a low level,

> and here it's with floating point numbers as well).


> If you want it to round up or down depending on the next decimal

> place, the second method is probably more obvious, since you just add

> 0.5 before taking the integer part. For the first _expression_, you need

> to add half the modulus before doing the modulo operation:


> somethingElse = something + 0.125;

> BuyPrice = somethingElse - ( somethingElse % 0.25 );


> Again, it's easier to see with a modulus of 10, where half would be 5:


> 363+5=368, 368-8=360

> 364+5=369, 369-9=360

> 365+5=370, 370-0=370

> 366+5=371, 371-1=370


> Regards,

> GP



> --- In amibroker@xxxxxxxxxxxxxxx, "sslack88" <jzzpiano88@xxx> wrote:


>> I actually found it in the "AFL Reference Manual - Basics", it's in 

>> the same section where all of the operators are being discussed "++, -

>> -, [], ^, etc."


>> I still don't understand Tomasz code, but at least I know what "%" 

>> operator does now.



>> --- In amibroker@xxxxxxxxxxxxxxx, "dingo" <dingo@> wrote:

>> >

>> > Ok duude!

>> > 

>> > Here's a minor gripe of mine: In the help file how can I find out 

>> where the

>> > "%" operator is discussed?   A search on the % character does not 

>> work.

>> > 

>> > d 

>> > 

>> > > -----Original Message-----

>> > > From: amibroker@xxxxxxxxxxxxxxx 

>> > > [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of Tomasz Janeczko

>> > > Sent: Friday, July 20, 2007 1:21 PM

>> > > To: amibroker@xxxxxxxxxxxxxxx

>> > > Subject: Re: [amibroker] Rounding up the BuyPrice to the 

>> > > nearest 0.25 point

>> > > 

>> > > something = Param("Test", 10, 9, 11, 0.01 ); 

>> > > BuyPrice = something - ( something % 0.25 ); 

>> > > 

>> > > Title = ""+BuyPrice; 

>> > > 

>> > > Best regards,

>> > > Tomasz Janeczko

>> > > amibroker.com

>> > > ----- Original Message ----- 

>> > > From: "dingo" <dingo@>

>> > > To: <amibroker@xxxxxxxxxxxxxxx>

>> > > Sent: Friday, July 20, 2007 6:12 PM

>> > > Subject: RE: [amibroker] Rounding up the BuyPrice to the 

>> > > nearest 0.25 point

>> > > 

>> > > 

>> > > > You write the AFL:

>> > > > 

>> > > > Multiply your number by 4.

>> > > > 

>> > > > Round it to an integer

>> > > > 

>> > > > Divide it by 4 to a decimal.

>> > > > 

>> > > > d 

>> > > > 

>> > > >> -----Original Message-----

>> > > >> From: amibroker@xxxxxxxxxxxxxxx 

>> > > >> [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of dingo

>> > > >> Sent: Friday, July 20, 2007 12:00 PM

>> > > >> To: amibroker@xxxxxxxxxxxxxxx

>> > > >> Subject: RE: [amibroker] Rounding up the BuyPrice to the 

>> > > >> nearest 0.25 point

>> > > >> 

>> > > >> Oops = that was less than helpful..  I didn't see the .25... 

>> > > >> I'll look into

>> > > >> my math magic resources..

>> > > >> 

>> > > >> d 

>> > > >> 

>> > > >> > -----Original Message-----

>> > > >> > From: amibroker@xxxxxxxxxxxxxxx 

>> > > >> > [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of dingo

>> > > >> > Sent: Friday, July 20, 2007 11:56 AM

>> > > >> > To: amibroker@xxxxxxxxxxxxxxx

>> > > >> > Subject: RE: [amibroker] Rounding up the BuyPrice to the 

>> > > >> > nearest 0.25 point

>> > > >> > 

>> > > >> > Multiply by 100 and use the round function then divide by 

>> 100.

>> > > >> > 

>> > > >> > d 

>> > > >> > 

>> > > >> > > -----Original Message-----

>> > > >> > > From: amibroker@xxxxxxxxxxxxxxx 

>> > > >> > > [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of sslack88

>> > > >> > > Sent: Friday, July 20, 2007 10:05 AM

>> > > >> > > To: amibroker@xxxxxxxxxxxxxxx

>> > > >> > > Subject: [amibroker] Rounding up the BuyPrice to the 

>> nearest 

>> > > >> > > 0.25 point

>> > > >> > > 

>> > > >> > > How do you round your BuyPrice up to the nearest 0.25 

>> > > point?  For 

>> > > >> > > example:

>> > > >> > > 

>> > > >> > > I want to buy (intraday) when the price breaks the 

>> (Open+Some 

>> > > >> > > Value) so 

>> > > >> > > my formula states to buy when the price is 1280.53 or 

>> higher. 

>> > > >> > >  However, 

>> > > >> > > I am trading the ES so I can only buy at 1280.75.  

>> > > >> > > 

>> > > >> > > How do I set the BuyPrice to 1280.75?  Right now the 

>> BuyPrice 

>> > > >> > > is being 

>> > > >> > > set to the (Open+Some Value) price (1280.53) which is not 

>> > > >> > possible in 

>> > > >> > > real trading.

>> > > >> > > 

>> > > >> > > Thanks,

>> > > >> > > Steve

>> > > >> > > 

>> > > >> > > 

>> > > >> > > 

>> > > >> > > Please note that this group is for discussion between 

>> > > users only.

>> > > >> > > 

>> > > >> > > To get support from AmiBroker please send an e-mail 

>> > > directly to 

>> > > >> > > SUPPORT {at} amibroker.com

>> > > >> > > 

>> > > >> > > For NEW RELEASE ANNOUNCEMENTS and other news always 

>> > > check DEVLOG:

>> > > >> > > http://www.amibroker.com/devlog/

>> > > >> > > 

>> > > >> > > For other support material please check also:

>> > > >> > > http://www.amibroker.com/support.html

>> > > >> > >  

>> > > >> > > Yahoo! Groups Links

>> > > >> > > 

>> > > >> > > 

>> > > >> > > 

>> > > >> > > 

>> > > >> > 

>> > > >> > 

>> > > >> > 

>> > > >> > Please note that this group is for discussion between users 

>> only.

>> > > >> > 

>> > > >> > To get support from AmiBroker please send an e-mail directly 

>> to 

>> > > >> > SUPPORT {at} amibroker.com

>> > > >> > 

>> > > >> > For NEW RELEASE ANNOUNCEMENTS and other news always check 

>> DEVLOG:

>> > > >> > http://www.amibroker.com/devlog/

>> > > >> > 

>> > > >> > For other support material please check also:

>> > > >> > http://www.amibroker.com/support.html

>> > > >> >  

>> > > >> > Yahoo! Groups Links

>> > > >> > 

>> > > >> > 

>> > > >> > 

>> > > >> > 

>> > > >> 

>> > > >> 

>> > > >> 

>> > > >> Please note that this group is for discussion between users 

>> only.

>> > > >> 

>> > > >> To get support from AmiBroker please send an e-mail directly 

>> to 

>> > > >> SUPPORT {at} amibroker.com

>> > > >> 

>> > > >> For NEW RELEASE ANNOUNCEMENTS and other news always check 

>> DEVLOG:

>> > > >> http://www.amibroker.com/devlog/

>> > > >> 

>> > > >> For other support material please check also:

>> > > >> http://www.amibroker.com/support.html

>> > > >>  

>> > > >> Yahoo! Groups Links

>> > > >> 

>> > > >> 

>> > > >> 

>> > > >> 

>> > > > 

>> > > > 

>> > > > 

>> > > > Please note that this group is for discussion between users 

>> only.

>> > > > 

>> > > > To get support from AmiBroker please send an e-mail directly to 

>> > > > SUPPORT {at} amibroker.com

>> > > > 

>> > > > For NEW RELEASE ANNOUNCEMENTS and other news always check 

>> DEVLOG:

>> > > > http://www.amibroker.com/devlog/

>> > > > 

>> > > > For other support material please check also:

>> > > > http://www.amibroker.com/support.html

>> > > > 

>> > > > Yahoo! Groups Links

>> > > > 

>> > > > 

>> > > > 

>> > > > 

>> > > >

>> > > 

>> > > 

>> > > Please note that this group is for discussion between users only.

>> > > 

>> > > To get support from AmiBroker please send an e-mail directly to 

>> > > SUPPORT {at} amibroker.com

>> > > 

>> > > For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:

>> > > http://www.amibroker.com/devlog/

>> > > 

>> > > For other support material please check also:

>> > > http://www.amibroker.com/support.html

>> > >  

>> > > Yahoo! Groups Links

>> > > 

>> > > 

>> > >

>> >






> Please note that this group is for discussion between users only.


> To get support from AmiBroker please send an e-mail directly to 

> SUPPORT {at} amibroker.com


> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:

> http://www.amibroker.com/devlog/


> For other support material please check also:

> http://www.amibroker.com/support.html

>  

> Yahoo! Groups Links


> <*> To visit your group on the web, go to:

>     http://groups.yahoo.com/group/amibroker/


> <*> Your email settings:

>     Individual Email | Traditional


> <*> To change settings online go to:

>     http://groups.yahoo.com/group/amibroker/join

>     (Yahoo! ID required)


> <*> To change settings via email:

>     mailto:amibroker-digest@xxxxxxxxxxxxxxx 

>     mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx


> <*> To unsubscribe from this group, send an email to:

>     amibroker-unsubscribe@xxxxxxxxxxxxxxx


> <*> Your use of Yahoo! Groups is subject to:

>     http://docs.yahoo.com/info/terms/

>  

__._,_.___

Please note that this group is for discussion between users only.

To get support from AmiBroker please send an e-mail directly to
SUPPORT {at} amibroker.com

For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/

For other support material please check also:
http://www.amibroker.com/support.html





SPONSORED LINKS
Investment management software Investment property software Investment software
Investment tracking software Return on investment software

Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___