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
>
>
>