This code give a compile error at this line:
Buy = Buy_Cond1;
The reason is Buy_Cond1 is undefined because it is inside a function and
is local to that function.
Add this line as the last line of your function:
return Buy_Cond1:
Then change your function call to:
Buy = rule1(10,1.5,1.005);
--
Terry
-----Original Message-----
From: [email protected] [mailto:[EMAIL PROTECTED] On
Behalf Of soundscribe_studios
Sent: Saturday, May 27, 2006 15:24
To: [email protected]
Subject: [amibroker] Problem with using "function" in AFL
I need to call a function with parameters, but for some reason I can't
get it to work when using the variables passed into the function. In
the code below, if I explicitly set the variable values, the function
works fine -- executing about 80 trades. If I have them commented out
(and the passed in values are used), the system doesn't execute any
trades. I make no other changes.
I've plotted the values when passed in and they appear to be correct.
What am I missing here? This is AB 4.80.1 although it behaves the same
on older versions as well.
What's also odd is if I plot the "Buy" array, it looks exactly the
same whether or not the variables are explicitly set -- just no trades
get executed when the passed in values are used. At a loss here...
/////////////////////////////////
... some code to read from a file ...
function rule1(aver,width,percent)
{
//aver =10;
//width=1.5;
//percent=1.005;
Bbot = BBandBot(Close,aver,width);
Buy_cond1 = Close < BBot /percent;
BuyPrice = Close;
}
if (p11 = 1)
{
//rule1(p12,p13,p14);
rule1(10,1.5,1.005);
}
.... some other code -- nothing touching Buy_cond1 or Buy ....
entrybar = -1;
//Buy = Buy_cond1 AND Buy_cond2 AND Buy_cond3;
Buy = Buy_cond1;
// exit code
for( i = 0; i < BarCount; i++ )
{
if( entrybar == -1 AND Buy[ i ] )
{
entrybar = i;
}
if( entrybar != -1 AND i > entrybar AND Close[ i ] > Close[
entrybar
]+0.02 OR i-entrybar>=20 )
{
Sell[ i ] = 1;
SellPrice[ i ] = Close[ i ];
entrybar = -1;
}
else
{
Sell[ i ] = 0;
}
}
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 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 other support material please check also:
http://www.amibroker.com/support.html
SPONSORED LINKS
| Investment management software | Real estate investment software | Investment property software |
| Software support | Real estate investment analysis software | Investment software |
YAHOO! GROUPS LINKS
- Visit your group "amibroker" on the web.
- To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
- Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
