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

Re: [amibroker] Re: How to Skip Empty Symbols when looping through wishlist


  • To: Paolo Cavatore <amibroker@xxxxxxxxxxxxxxx>
  • Subject: Re: [amibroker] Re: How to Skip Empty Symbols when looping through wishlist
  • From: Herman <psytek@xxxxxxxx>
  • Date: Wed, 19 Nov 2008 06:11:16 -0500

PureBytes Links

Trading Reference Links

Title: Re: [amibroker] Re: How to Skip Empty Symbols when looping through wishlist

symbols are strings, try


Count = Count + (myforeign != "");



Wednesday, November 19, 2008, 4:35:18 AM, you wrote:


> Having changed 

> IIf(IsNull(myforeign), Count, Count++);

> into

> Count = Count + IIf(IsNull(myforeign), 1, 0);

> is not working either.


> It really seems like IsNull function doesn't return True for empty 

> symbols.


> New entire code below


> // EmptySymbols finder

> // retrive comma-separated list of symbols

> // from Group 0

> list = CategoryGetSymbols(categoryGroup, 0);


> Count = 0;


> for( i = 0; ( sym = StrExtract( list, i ) ) != ""; i++ )

> {

> SetForeign(sym);

> myforeign = C;

> RestorePriceArrays();


> //if the symbol is empty Count is not increased

> Count = Count + IIf(IsNull(myforeign), 1, 0);


> _TRACE("symbol " + sym);

> _TRACE("Count " + Count);

> _TRACE("IsNull " + IsNull(myforeign));


> }



> --- In amibroker@xxxxxxxxxxxxxxx, "Mike" <sfclimbers@xxx> wrote:


>> Actually, you are running into a documented side effect of IIF 

> usage. 


>> Specifically; the IIF statement always executes BOTH the true and 

> the 

>> false branches of the code. So, you will always have your Count++ 

> code 

>> executed regardless of the value of the IsNull _expression_.


>> Refer to the user guide for details:

>> http://www.amibroker.com/guide/afl/afl_view.php?id=72


>> Mike



>> --- In amibroker@xxxxxxxxxxxxxxx, "Paolo Cavatore" <pcavatore@> 

>> wrote:

>> >

>> > Does anyone know how to skip empty symbols when looping through a 

>> > list of them?

>> > 

>> > The code below shows that IsNull function doesn't return TRUE for 

>> > empty symbols.

>> > 

>> > Thanks,

>> > 

>> > paolo

>> > 

>> > // EmptySymbols finder

>> > // retrive comma-separated list of symbols

>> > // from Group 0

>> > list = CategoryGetSymbols(categoryGroup, 0); 

>> > 

>> > Count = 0;

>> > 

>> >    for( i = 0; ( sym = StrExtract( list, i ) ) != ""; i++ ) 

>> >    { 

>> >         SetForeign(sym);      

>> >     myforeign = C;

>> >     RestorePriceArrays();

>> >     

>> >     //if the symbol is empty Count is not increased

>> >     IIf(IsNull(myforeign), Count, Count++);

>> >         _TRACE("symbol " + sym);

>> >         _TRACE("Count " + Count);

>> >         _TRACE("IsNull " + IsNull(myforeign));

>> > 

>> >     }

>> >





> ------------------------------------


> **** IMPORTANT ****

> This group is for the discussion between users only.

> This is *NOT* technical support channel.


> *********************

> TO GET TECHNICAL 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/



__._,_.___

**** IMPORTANT ****
This group is for the discussion between users only.
This is *NOT* technical support channel.

*********************
TO GET TECHNICAL 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

*********************************




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

__,_._,___