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