Is that correct Herman ? Does the code really do what it should do ? Every time
when running the AFL the report shows me the 'Current Symbol' and not my
selected WatchList as coded in the AFL. Of course after following modifications
in the code :
if ( ParamTrigger( "Run Com BT", "BT" ) )
{
WLN = 0; // the watchlist to backtest
BRS = 100; // Number bars to test
AB = CreateObject( "Broker.Application" );
AA = AB.Analysis;
AA.LoadFormula( "C:\\Program
Files\\AmiBroker\\Formulas\\Systems\\Example.afl" );
AA.ClearFilters();
AA.Filter( WLN, "watchlist" ) ;
AA.ApplyTo = 1;
AA.RangeMode = 1;
AA.RangeN = BRS;
AA.Backtest();
AA.Report( "" );
}
Rather weird for me because AA.RangeN is being set correctly where the
AA.Filter does not do what it should do. I still don't follow ... BTW I know
that I should not do this from within an AFL. But the reason why this is not
possible still for me is a open question ...
I am also getting syntax errors when using the code from the help file for
setting the Watchlist. So "AA.Filter( 0, "market" ) = 0;" produces a syntax
error and frankly for me the above instruction seems to be rather straight
forward ... Gives no syntax error but does not do what it should do -)
So yes, it produces a nice BT report. But the question is, if that's the report
you want to get. I could not make it work in the way I wanted it to work ... At
least not from within an AFL ...
Regards, Ton.
----- Original Message -----
From: Herman
To: Tomasz Janeczko
Cc: [email protected]
Sent: Saturday, May 17, 2008 2:28 PM
Subject: Re: [amibroker] Can someone fix this OLE code?
OK Tomasz, but the code produces a nice BT report each time i click the
Trigger. Seemingly flawless. Seems only a tweak would be required to make it
work robust.
I am going through all this trouble just to be able to access the Backtester
stats from an indicator (I was going to extract the last value from the report
on bar-by-bar BTs!).
System analysis in the time domain is frustrated/impossible because basic AB
users (non professional programmer) can't retrieve and plot the Backtester
stats, like UPI, %Winners, Number of trades, etc. Thus there is a big void wrt
system analysis - see my suggestion #1335 and support tag [#49377].
I wish that formulas for these functions were made public so that they can be
used in indicators. This Would open up a whole new world to evaluate, analyze,
and design trading systems. The single numbers in the AA give very limited
information. With all respect, please do not mention the CBT... that solution
is for less than 10% of users and I don't have enough days left to learn all
that stuff.
best regards,
herman
Saturday, May 17, 2008, 8:10:10 PM, you wrote:
>
But... the example in help
a) works
b) presents OUTSIDE ***JScript*** code
http://www.amibroker.com/guide/objects.html
c) does not contain
AA.Analysis.RangeN (wrong line)
Again I want to stress that out that Analysis COM object must not be
used form
AFL level. The functionality is provided to control Automatic Analysis
from OUTSIDE
of AmiBroker.
Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message -----
From: Herman
To: dingo
Sent: Saturday, May 17, 2008 2:02 PM
Subject: Re: [amibroker] Can someone fix this OLE code?
won't do. Actually 99% of this code was copied from the AB help.
h
For tips on developing Real-Time Auto-Trading systems visit:
http://www.amibroker.org/userkb/
Saturday, May 17, 2008, 7:54:44 PM, you wrote:
>
ON the clearfilters() take off the () and try it.
d
------------------------------------------------------------------
From: [email protected] [mailto:[EMAIL PROTECTED] On
Behalf Of Herman
Sent: Saturday, May 17, 2008 7:49 AM
To: dingo
Cc: [email protected]
Subject: Re: [amibroker] Can someone fix this OLE code?
it runs fine except for the WLN and BRS changes i need.
h
For tips on developing Real-Time Auto-Trading systems visit:
http://www.amibroker.org/userkb/
Saturday, May 17, 2008, 7:46:35 PM, you wrote:
>
Maybe AB won't let you run a backtest within an indicator -
time to ask TJ.
d
------------------------------------------------------------
From: [email protected] [mailto:[EMAIL PROTECTED]
On Behalf Of Herman
Sent: Saturday, May 17, 2008 7:40 AM
To: dingo
Cc: [email protected]
Subject: Re: [amibroker] Can someone fix this OLE code?
Hi d, I tried that initially but No go.
thanks,
herman
For tips on developing Real-Time Auto-Trading systems visit:
http://www.amibroker.org/userkb/
Saturday, May 17, 2008, 7:35:20 PM, you wrote:
>
On the lines that give the error substitute a number
constant for the variable and see if it works. If it does then it looks to me
like it thinks the variables are arrays.
d
------------------------------------------------------
From: [email protected] [mailto:[EMAIL
PROTECTED] On Behalf Of Herman
Sent: Saturday, May 17, 2008 7:01 AM
To: AmiBroker User Group
Subject: [amibroker] Can someone fix this OLE code?
Can someone help me fix the code below so that when
triggered in an Indicator, it:
1) Backtest all tickers in watchlist WLN?
2) Use range of BRS bars
3) Output ONLY the one line BT Report?
Many thanks!!!!
herman
if ( ParamTrigger( "Run Com BT", "BT" ) )
{
WLN = 0; // the watchlist to backtest
BRS = 100; // Number bars to test
AB = CreateObject( "Broker.Application" );
AA = AB.Analysis;
AA.LoadFormula( "C:\\Program
Files\\AmiBroker\\Formulas\\Systems\\Example.afl" );
AA.ClearFilters();
AA.Filter( 0, "watchlist" ) = WLN; //
This gives syntax error...
AA.ApplyTo = 1;
AA.RangeMode = 1;
AA.Analysis.RangeN = BRS; // This
gives syntax error...
AA.Backtest();
AA.Report( "" );
}
No virus found in this incoming message.
Checked by AVG.
Version: 8.0.100 / Virus Database: 269.23.16/1448 -
Release Date: 5/16/2008 7:42 PM
No virus found in this incoming message.
Checked by AVG.
Version: 8.0.100 / Virus Database: 269.23.16/1448 - Release
Date: 5/16/2008 7:42 PM
No virus found in this incoming message.
Checked by AVG.
Version: 8.0.100 / Virus Database: 269.23.16/1448 - Release Date:
5/16/2008 7:42 PM