OLE interface allows that already
http://www.amibroker.com/guide/objects.html
Best
regards,
Tomasz Janeczko
amibroker.com
----- Original Message
-----
From: "gmorlosky" <gmorlosky@xxxxxxcom>
To:
<amibroker@xxxxxxxxxps.com>
Sent:
Tuesday, June 09, 2009 7:16 PM
Subject: [amibroker] Re: Code needed to
always include a certain ticker in Explore ???
> I'd also like
to see something allowing the interaction with the "Apply To" include /
exclude, which will really shorten the
> processing time over
filtering...
>
>
> --- In amibroker@xxxxxxxxxps.com,
dingo <waledingo@x..> wrote:
>>
>> Your
RunNext() suggestion is a great idea! I also think that would
be
>> something TJ should add ASAP.
>>
>>
d
>>
>> On Tue, Jun 9, 2009 at 8:21 AM, bruce1r
<brucer@xxx> wrote:
>>
>> > Graham / Mike
-
>> >
>> > I'd like to briefly offer a couple of
suggestions about your comments
>> > regarding watchlists.
But, first the bottom line. Adding the symbol to
>> > your
watchlists in a two step (preferrably automated process) is
the
>> > best way to save yourself some grief. There are
several different ways
>> > to do this.
>>
>
>> > Mike - you were moving toward something I've used
for a while but have
>> > never shown because of the special
cases. I'd call it dynamic
>> > watchlsits. There is an easier
way, though. You were modifying the
>> > watchlist as it was
being processed. The easiest way to do this is
>> > simply
detect the watchlist that is used in the filter and use
>> >
CategoryWatchlist(). Because the entries are cached, the change
is
>> > reflected in the AA Filter loop. BUT, the issue is
this. The Filter
>> > loop processes issues in alpha order.
SO, the one(s) that you add need
>> > to be after stocknum 0
in the collating sequence. I have used the
>> > technique in
the past for app's that need to process dynamic watchlists.
>>
> Now, I just use a two step process, as it is more straightforward.
But
>> > since you went down that path, here's some test code
to show the
>> > technique -
>> >
>> >
OAB = CreateObject( "Broker.Application" );
>> > OAA =
OAB.Analysis;
>> > incwl = OAA.Filter( 0, "watchlist"
);
>> > ; The symbol added must be after the first symbol in
alpha order
>> > CategoryAddSymbol( "SPY", categoryWatchlist,
incwl );
>> > Filter = Status( "lastbarinrange" );
>>
> AddColumn( C, "C", 8.2 );
>> >
>> > Graham -
I totally agree with your conclusion about keeping it simple.
>>
> I think that the issue with your second suggestion about using a
sector
>> > or industry is that the long-known issue with the
Filter interface is
>> > the lack of an "OR" operation. If I
understand what you were suggesting
>> > correctly, you'll
find that multiple selections on the Include tab are
>> > an
"AND" operation. The Exclude tab effectively implements an "AND
NOT"
>> > operation. A simple "OR" interface has been long
needed.
>> >
>> > P.S. This usage pattern of
running a two step (AFL) job is so common,
>> > that I'd
really like to see Tomasz add a RunNext() command for newer
>>
> users that would execute a subsequent AFL after the current
one
>> > completes.
>> >
>> > --
BruceR
>> >
>> >
>> >
>> >
--- In amibroker@xxxxxxxxxps.com,
Graham <kavemanperth@> wrote:
>> > >
>>
> > The simplest way is to just add the index symbol to your
watchlist.
>> > > You will just tie yourself up into knots
otherwise
>> > > If you use this watchlist for other items
like trade system then just
>> > > include a condition eg.
Buy = BuyConditions AND Name() != "^GSPC";
>> >
>
>> > > Another simple method would be to have the
index symbol in its own
>> > > group, eg an unused
sector/industry. Then in exploring your watchlist
>> > >
you can add this sector to your analysis window filter.
>> >
>
>> > > --
>> > > Cheers
>>
> > Graham Kav
>> > > AFL Writing Service
>>
> > http://www.aflwriting.com
>>
> >
>> > >
>> > >
>> >
> 2009/6/9 Mike sfclimbers@:
>> > > > You can cheat,
explicitly doing what you are not supposed to do, by
>> >
writing code to use the OLE interface to add your symbol to
the
>> > watchlist as it is being iterated through, then use
the API to remove
>> > your symbol at the end of the
exploration.
>> > > >
>> > > > In my
quick try, adding the symbol seemed to work e.g. assuming
>> >
symbol AA and watchlist #2, add to watchlist on processing of
first
>> > symbol.
>> > > >
>> >
> > EnableScript("jscript");
>> > >
>
>> > > > if ( Status( "stocknum" ) == 0
)
>> > > > {
>> > > >
<%
>> > > > AB = new
ActiveXObject("Broker.Application");
>> > > >
Stocks = AB.Stocks;
>> > > > Symbol =
Stocks.Item("AA");
>> > > >
Symbol.WatchListBits |= 1 << 2;
>> > > >
%>
>> > > > }
>> > > >
>>
> > > I used JScript because AFL did not seem to natively support
the <<
>> > operator used in the example found in the
user guide
>> > > >
>> > > > http://www.amibroker.com/guide/objects.html
>>
> > >
>> > > > Trying to remove it afterwards
was not quite working in my quick
>> > test.
>> >
> >
>> > > > Seems like a lot of fuss. What about
writing a script to drive the
>> > OLE interface to include
the symbol in all the watchlists that you want
>> > before
running your exploration. Then run your explorations. Then run
a
>> > cleaning script to remove the symbol from the
watchlists after you're
>> > done?
>> > >
>
>> > > > Moving the code I provided above to an
"add to watchlist" script
>> > would probably do the job.
Repeat the line Symbol.WatchListBits |= 1 <<
>> >
??? for each watchlist you want it to appear in.
>> > >
>
>> > > > To remove from the watchlist try something
along the lines of:
>> > > >
>> > > >
<%
>> > > > AB = new
ActiveXObject("Broker.Application");
>> > > >
Stocks = AB.Stocks;
>> > > > Symbol =
Stocks.Item("AA");
>> > > >
Symbol.WatchListBits &= ~(1 << 2);
>> > >
> %>
>> > > >
>> > > > None of
the above is tested. And I have not spent the time to verify
>>
> its validity or even the wisdom of the approach. But if
you're
>> > determined to go down this road, it might
help.
>> > > >
>> > > >
Mike
>> > > >
>> > > > --- In amibroker@xxxxxxxxxps.com,
"gmorlosky" gmorlosky@ wrote:
>> > > >>
>>
> > >> Understood... bummer..we really access to the
Apply To: function.
>> > > >>
>> > >
>> --- In amibroker@xxxxxxxxxps.com,
dingo <waledingo@> wrote:
>> > > >>
>
>> > > >> > I already explained that to you
in my msg above. Read it again.
>> > > >>
>
>> > > >> > d
>> > > >>
>
>> > > >> >
>> > > >>
> On Mon, Jun 8, 2009 at 6:18 PM, gmorlosky <gmorlosky@>
wrote:
>> > > >> >
>> > > >>
> > If I do an _TRACE (Tickerlist) the addon ticker is
there.
>> > > >> > > I don't understand why it
shows up in the indicator, but not in
>> > an
Explore
>> > > >> > > ???
>> > >
>> > >
>> > > >> > >
>>
> > >> > >
>> > > >> > > ---
In amibroker@xxxxxxxxxps.com,
dingo <waledingo@> wrote:
>> > > >> > >
>
>> > > >> > > > by using the filter = 1
you're only going to get the tickers
>> > that are
in
>> > > >> > > the
>> > >
>> > > > watchlist - AB will only read from that
list.
>> > > >> > > >
>> > >
>> > > > Option 1. Use the watchlist and after the last
ticker use the
>> > foreign on
>> > > >>
> > a
>> > > >> > > > line by its
self. I don't know if this will actually work.
>> > You'll
have
>> > > >> > > to
>> > >
>> > > > figure out a way to detect that the last ticker in
the watch
>> > list had
>> > > >> >
> been
>> > > >> > > > read by using the
"Status" function.
>> > > >> > >
>
>> > > >> > > > Option 2. Process the
updated ticker list in a loop like
>> > you've
done
>> > > >> > > > before. When doing this
don't use the filter and watchlist -
>> > just
>>
> > >> > > current
>> > > >> >
> > ticker.
>> > > >> > >
>
>> > > >> > > > d
>> > >
>> > > >
>> > > >> > > > On
Mon, Jun 8, 2009 at 5:13 PM, gmorlosky <gmorlosky@>
>> >
wrote:
>> > > >> > > >
>> > >
>> > > > > My test is simply to set my Filter = 1; (at
the bottom of
>> > the code to
>> > > >>
> > > > include all tickers in the output). I get all the
watchlist
>> > tickers,
>> > > >> >
> but,
>> > > >> > > > > not the
additional ^GSPC ticker....
>> > > >> > > >
> Tried:
>> > > >> > > > >
>>
> > >> > > > > Tickerlist = Tickerlist + ",^GSPC";
// no results (included
>> > comma)
>> > >
>> > > > > tickerlist=tickerlist AND
Foreign("^GSPC","C"); // AND
>> > errors
>> >
> >> > > > > tickerlist=tickerlist +
Foreign("^GSPC","C"); // no results
>> > > >>
> > > >
>> > > >> > > > > Any
more ideas and what is a skew ?
>> > > >> > >
> >
>> > > >> > > > >
>>
> > >> > > > >
>> > > >> >
> > >
>> > > >> > > >
>
>> > > >> > > > > --- In amibroker@xxxxxxxxxps.com,
"Anthony Faragasso"
>> > <ajf1111@>
>> >
> >> > > wrote:
>> > > >> > >
> > >
>> > > >> > > > > >
TRY:
>> > > >> > > > > >
>>
> > >> > > > > > tickerlist=tickerlist and
foreign("^GSPC","C");
>> > > >> > > >
> >
>> > > >> > > > >
>
>> > > >> > > > > > -----
Original Message -----
>> > > >> > > > >
> From: gmorlosky
>> > > >> > > > >
> To: amibroker@xxxxxxxxxps.com
>>
> > >> > > > > > Sent: Monday, June 08, 2009
3:40 PM
>> > > >> > > > > > Subject:
[amibroker] Re: Code needed to always include
>> > a
certain
>> > > >> > > ticker
>> >
> >> > > > > in Explore ???
>> > >
>> > > > > >
>> > > >> > >
> > >
>> > > >> > > > >
>
>> > > >> > > > > >
>>
> > >> > > > > >
>> > > >>
> > > > > I have used Foreign for plotting, but I don't
want to
>> > manually add
>> > > >> >
> it
>> > > >> > > > > for each
column.
>> > > >> > > > > > I like the
idea of an addon to the ticker list. I
>> > tried:
>>
> > >> > > > > > Tickerlist =
CategoryGetSymbols( Tickercategory,
>> > ListNum
);//
>> > > >> > > existing
>> >
> >> > > > > code
>> > > >> >
> > > > Tickerlist = Tickerlist + "^GSPC"; // new
code
>> > > >> > > > > >
>>
> > >> > > > > > but still not picking up on
the extra ticker of ^GSPC
>> > (S&P500).
>> >
> >> > > > > >
>> > > >> >
> > > > Any other ideas on properly concatenating a ticker to
a
>> > list of
>> > > >> > >
tickers
>> > > >> > > > > ???
>>
> > >> > > > > >
>> > > >>
> > > > > --- In amibroker@xxxxxxxxxps.com,
"Anthony Faragasso"
>> > <ajf1111@>
>> >
> >> > > > > wrote:
>> > > >>
> > > > > >
>> > > >> > >
> > > > you probably do something like:
>> > >
>> > > > > > >
>> > > >> >
> > > > > InWatchList( listno ) and "your ticker
here";
>> > > >> > > > > >
>
>> > > >> > > > > > >
Anthony
>> > > >> > > > > > > -----
Original Message -----
>> > > >> > > > >
> > From: gmorlosky
>> > > >> > > >
> > > To: amibroker@xxxxxxxxxps.com
>>
> > >> > > > > > > Sent: Monday, June 08,
2009 3:08 PM
>> > > >> > > > > > >
Subject: [amibroker] Code needed to always include a
>> >
certain
>> > > >> > > ticker
>> >
> >> > > > > in Explore ???
>> > >
>> > > > > > >
>> > > >> >
> > > > >
>> > > >> > > >
> > >
>> > > >> > > > > >
>
>> > > >> > > > > >
>
>> > > >> > > > > > > I would
like to have a certain ticker (S&P500) always
>> >
included as
>> > > >> > > one
>> >
> >> > > > > of the tickers in the Explore. For
example, I choose my
>> > watchlist that
>> > >
>> > > has
>> > > >> > > > >
ETFs only, BUT I want the explore to also have the S&P500
>>
> ticker info,
>> > > >> > > for
>>
> > >> > > > > relevance.
>> > >
>> > > > > > > I want to have the reference in the
code, not include
>> > the S&P500
>> > >
>> > > > > ticker in the watchlist.
>> >
> >> > > > > > > Thanks.
>> >
>
>> >
>> >
>> >
>>
>
>> >
------------------------------------
>>
>
>> > **** IMPORTANT PLEASE READ ****
>> >
This group is for the discussion between users only.
>> > This
is *NOT* technical support channel.
>> >
>> > TO
GET TECHNICAL SUPPORT send an e-mail directly to
>> > SUPPORT
{at} amibroker.com
>> >
>> > TO SUBMIT SUGGESTIONS
please use FEEDBACK CENTER at
>> > http://www.amibroker.com/feedback/
>>
> (submissions sent via other channels won't be considered)
>>
>
>> > For NEW RELEASE ANNOUNCEMENTS and other news always
check DEVLOG:
>> > http://www.amibroker.com/devlog/
>>
>
>> > Yahoo! Groups Links
>> >
>>
>
>> >
>>
>
>>
>
>
>
>
>
------------------------------------
>
> ****
IMPORTANT PLEASE READ ****
> This group is for the discussion
between users only.
> This is *NOT* technical support
channel.
>
> TO GET TECHNICAL SUPPORT send an e-mail directly
to
> SUPPORT {at} amibroker.com
>
> TO SUBMIT
SUGGESTIONS please use FEEDBACK CENTER at
> http://www.amibroker.com/feedback/
>
(submissions sent via other channels won't be considered)
>
>
For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
>
http://www.amibroker.com/devlog/
>
>
Yahoo! Groups Links
>
>
>