OK, at the risk of dragging this on :-) my
disappointment was due to:
1) The inability of experienced users to
look beyond traditional TA. imo, System Performance Indicators
(SPI), that is what my initial OLE code was working towards, should
be part of all system design. SPIs should not be separated from
traditional indicators and only be used for static reporting. They
should be used dynamically and integrated into system design. Today
we have plenty of computer power to do so. This would introduce an
entirely new category (AFAIK) of indicators and, especially if they
are provided with arguments like period and input arrays, they may
prove to be extremely useful. Tomasz' new code will allow users to
play with this idea.
2) Some people knowingly underestimating
the amount of work required to provide a general solution, and/or
to learn OLE, CBT, GFX, etc. Spending time learning new tools takes
away from system development and can set the average part-time user
back a year or more - and prevent him/her from ever excelling in
any area. It is far more expedient to just learn, use, and know
well, a single language (AFL). Diversification requires you to
divided your time (and mental resources) over several areas.
Remember that after age forty your mind starts to lose its edge :-)
if you deny this you may be in for a surprise.
But no hard feelings: I still love
everyone :-)
Tomasz' solution is very elegant, and it
is a very nice demonstration/introduction to using the CBT. I
love it and I thank him for it. However regretfully it does not
solve my problem; it does not allow me to access equity-derived
performance metrics, in arrays, from an indicator window without
running the AA. I need in-line calculated values that are refreshed
as the chart is refreshed and that can be called from inside a
ticker-loop.
Best regards,
herman
For tips on developing Real-Time
Auto-Trading systems visit:
http://www.amibroker.org/userkb/
Monday, May 19, 2008, 5:43:28 PM, you
wrote:
> There wasn't any frustration in it
for me.
> I was disappointed that Herman was
disappointed.
> My general point is that it is quite
hard to communicate via boards
> like this, especially if the subject
is complex or has nuances to it.
> An undertone of miscommunication is
the norm and we should allow for
> that.
> Half the time I haven't got a clue
what you are talking about but put
> me down for a copy of the book.
> Before AB I used Metastock.
> I couldn't get the backtester to do
what I wanted it to do so I ended
> up using their explorer as a pseudo
backtester.
> The fact is that in many respects it
worked quite well.
> That is how I know that it would be
relatively easy to use the AB
> indicator panes as a 'visual'
backtester without the need for
> complicated code.
> The actual sticking point, which is
why I left MS, is that the
> metrics were cumulative metrics (at
least the way I did it anyway) so
> I couldn't get individual trades, as
a series, to do distributions or
> account for wild outliers etc.
> The other challenge in MS was
actually modelling the trades because
> their program didn't have the levels
of customisation I needed for my
> entries and exists.
> Other than that it worked fine and if
I could have done those things
> I would probably still be there now,
not knowing any better.
> Of course now that I am at AB I am
happy that the program is bigger
> than me. It was rather scary, to me,
that a person with my background
> and experience outgrew MS in under a
year.
> I don't see how anyone can complain
because Tomasz has given us the
> CBT, OLE methods etc but at the same
time I have my own preferences
> for and I don't mind sticking up for
them.
> brian_z
> --- In amibroker@xxxxxxxxxps.com, Dennis Brown <see3d@xxx> wrote:
>> Brian,
>> As frustrating as threads like
this can turn out for most involved,
> I
>> really like to see this type of
discussion online. We can all
> learn a
>> lot through thrashing out our
conceptions and misconceptions --
> though
>> it might be better on a smaller
forum with a narrow set of
> interests.
>> I am keenly aware that this list
has thousands of readers, most of
>> which are still working towards a
basic understanding of AB/AFL.
>> I have gotten into
"trouble" in the past by posting to make a
> general
>> point, and obliquely mentioning
some thing or principle that I am
>> working on. I mentioned
them without details, because I didn't
> want
>> to encourage a discussion about
them. They were only meant as an
>> example of why I was motivated to
post.
>> Laughably, sometimes I find that
the thing I was not trying to make
> an
>> issue becomes a target instead of
the real issue I was trying to
>> address. Sometimes I learn
something valuable in the exchange
> anyway,
>> and sometimes it is just a
distraction.
>> There were a lot of apples being
thrown and oranges being thrown
>> back. I am glad you found
one of the fruits to your liking.
>> I am happy with my BT approach
and my reasons for it. The
> discussions
>> here, though valuable for general
understanding, will not change
> my
>> approach to indicator mode single
equity backtesting which is the
>> backbone of my day-trading
platform. I would not expect someone
> to
>> understand what I am doing
without a lot of screenshots and
>> explanations, which would take
too much time for a casual post on
>> someone's else's thread.
>> BR,
>> Dennis
>> On May 19, 2008, at 4:02 AM,
brian_z111 wrote:
>> > No disrespect but when guys
like you and Dennis, who are working
> in
>> > specialist areas, post you
can't expect us to pick up your train
> of
>> > thought with only partial
explanations (if you had given me a
>> > screenshot of a spreadsheet
mockup and mini-tutorial I could have
>> > bought in to your search a
lot easier).
>> >
>> > By the same token I think
you misunderstood the value of what I
> was
>> > talking about (maybe for the
same reasons although I have talked
>> > about it before).
>> >
>> > First I am talking about
something more generic that has added
> value
>> > if pursued (I only gave the
starting point).
>> > It leads on to inline
MoneyManagement and plotting trade series
>> > frequencies etc.
>> >
>> > Second, from my point of
view, I don't understand why you would
> want
>> > to have indicators as
backtesters BUT if you do want that then you
>> > can have it without new
functions (if I understand you correctly
> but
>> > I am saying that under the
assumption that you agree with Dennis's
>> > defintion of an inline BT).
>> >
>> > By my proposition if you
know the trade% and you know the time in
>> > trade you can calculate any
equtiy metric OR moneymanagement
> outcome
>> > you want. Since, for
individual stocks, you do have that then it
>> > should be do-able without
megacode.
>> >
>> > (Keep in mind that I might
not fully understand your needs and
> that
>> > we are live i.e. speculating
- if it looks like I am making a
> mistake
>> > I will throw in my hand).
>> >
>> > Also, I appreciate
Fred's/Tomnasz's answers because, while I think
>> > that another approch offers
far more long term value, they taught
> me
>> > something and it is
something I can use right now (I have a
> policy to
>> > get on with it with what I
have OR do it myself i.e. code or
> plugins
>> > which for me is all about
pragmatism. I am only sidetracking a
> little
>> > bit here and there to give
Tomasz my two cents as I have too much
> to
>> > do to make a career of it).
>> >
>> > As I said, no disrespect.
>> >
>> > I think the topic is worth
my honest input.
>> >
>> > brian_z
>> >
>> >
>> >
>> >
>> >
>> >
>> > --- In amibroker@xxxxxxxxxps.com, Dennis Brown <see3d@> wrote:
>> >>
>> >> Herman,
>> >>
>> >> Actually, your needs and
my needs are closely aligned in this
>> > regard:
>> >> The need for a high
speed BT on a single ticker in an indicator
>> > that
>> >> refreshes on each new
tick (more than 1 per second).
>> >>
>> >> If I had these functions
as built-in, I might not have needed to
>> > write
>> >> my own AFL version.
>> >>
>> >> However, since it can be
done in AFL, we should not rule out the
>> >> #include option as a
first viable choice.
>> >>
>> >> I doubt that what I have
written so far qualifies as a useful
>> > general
>> >> purpose solution for
others, but it is more like 100 lines than
>> > 1000
>> >> lines of AFL.
>> >> However, if I had a good
#include to start with, I would likely
>> > have
>> >> used it as a base to work
from, only adding my unique needs to
> it.
>> >>
>> >> I am still debugging my
last rewrite of my equity function, but I
>> > am
>> >> willing to share what I
have privately with a good AFL coder who
>> > can
>> >> make something more
general purpose to share with all.
>> >>
>> >> Best regards,
>> >> Dennis
>> >>
>> >> On May 19, 2008, at
11:23 AM, Herman wrote:
>> >>
>> >>> Hello Paul,
>> >>>
>> >>> you are absolutely
correct, it ought to be as simple as running
>> > this
>> >>> code in an
Indicator:
>> >>>
>> >>> ....systems code...
>> >>>
>> >>> E =
Equity(1);
// This function would be
>> > called
>> >>> once only
>> >>> NP =
NetProfit(E);
// New AFL functions that
>> > return
>> >>> ARRAYs based on the
equity Array
>> >>> NPP =
NetPercentProfit(E)
>> >>> CA = CAR(E)
>> >>> RA = RAR(E)
>> >>> MaxTradeDD = ... and
so on for all performance metrics.
>> >>>
>> >>> ... second level of
systems code using the above metrics for
>> > system
>> >>> analysis, signal
generation, position scoring, position sizing,
>> >>> etc. ...
>> >>>
>> >>> The so called
solutions discussed in this thread either do not
>> >>> provide the above
arrays for use in auto-refreshing indicators,
>> > or
>> >>> require a thousand
lines of code written by a professional
>> > programmer.
>> >>>
>> >>> best regards,
>> >>> herman
>> >>>
>> >>>
>> >>>
>> >>> For tips on
developing Real-Time Auto-Trading systems visit:
>> >>> http://www.amibroker.org/userkb/
>> >>>
>> >>> Sunday, May 18,
2008, 10:50:31 PM, you wrote:
>> >>>
>> >>>> Herman,
>> >>>> I think I know
where you are coming from. The difference
> between
>> >>>> using indicators
vs scripts is that indicators continue to
>> >>>> recalculate ( or
in this case backtest) as new data arrives.
>> >>>
>> >>>> One way to
broker the impass with Tomasz is consider simple
>> > profolio
>> >>>> backtesting as
an AFL function. Rather than using OLE, This
>> > option
>> >>> is
>> >>>> write a function
similar to Equity() in which the symbols in a
>> >>>> watchlist is
read and backtested.
>> >>>>
>> >>>> I think this
function could be done in AFL today using the
>> > various
>> >>>> functions
already available. ie CategoryGetSymbol to get the
>> >>> symbols,
>> >>>> foreign to set
foreign symbol, the equity() function to get rid
>> > of
>> >>>> excess signals
etc. Of course, you have to do your own
>> >>> ositionscoring
>> >>>> and position
sizing. Since Fred has done this before, may be he
>> > can
>> >>>> comment further
or if he is generous enough, dig out his code
>> > and
>> >>>> post it again.
>> >>>
>> >>>> Essentially,
this function can be called in your indicator afl.
>> > In
>> >>>> that way, you
can have your pie and eat it as well. I'm sure if
>> >>>> Tomasz sees a
use in it, he will incorporate in his list of
>> >>> functions
>> >>>> to do in the
future.
>> >>>
>> >>>> What do you
think?
>> >>>> Regards
>> >>>> Paul.
>> >>>
>> >>>
>> >>>
>> >>>> ------------------------------------
>> >>>
>> >>>> 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@xxxxxxxxxps.com
> mailto:amibroker-fullfeatured@yahoogroups.com
> <*> To unsubscribe from this
group, send an email to:
> amibroker-unsubscribe@xxxxxxxxxxxxcom
> <*> Your use of Yahoo! Groups
is subject to:
> http://docs.yahoo.com/info/terms/
|