PureBytes Links
Trading Reference Links
|
One thing I have discovered is that if I am having problems doing
something in regular AFL, try using a loop. It may be slower but with
fast computers it rarely makes a big difference unless you are
running a huge optimization run. Now what you are asking for may be
possible without loops, but I decided to show it with loops.
I hope this works for you,
Cey
// I am assuming no reversals. So no closing a long trade and entering a short trade
// on the same bar
Buy = ExRem(Buy,Sell);
Sell = ExRem(Sell, Buy)
Short = ExRem(Short, Cover);
Cover = ExRem(Cover, Short);
fInLong = fInShort = false;
for (i=0; i < BarCount; i++)
{
if (fInLong)
{
// if we are in a long position then remove all Short and Cover signals
Short[i] = 0;
Cover[i] = 0;
if (Sell[i])
fInLong = false;
}
else if (fInShort)
{
// if we are in a short position then remove all Buy and Sell signals
Buy[i] = 0;
Sell[i] = 0;
if (Cover[i])
fInShort = false;
}
else
{
// we are not in any position. See if we have a Buy or Short signal
if (Buy[i])
{
fInLong = True;
Short[i] = 0;
Cover[i] = 0
}
else if (Short[i])
{
fInShort = True;
Buy[i] = 0;
Sell[i] = 0;
}
}
}
--- In amibroker@xxxxxxxxxxxxxxx, Noah Bender <knowabender@xxx> wrote:
>
> After spending weeks on trying to solve this problem I have come up
> with the following answer. I want to know if you all agree agree. I
> want my chart to display the buy,sell,short,cover arrows when 1
> occurs in the corresponding array. That I can accomplish.
>
> But I have short arrows occuring while I am in the middle of a long
> trade and long arrows occuring in the middle of a short trade. I have
> tried a whole bunch of solutions to this problem but at the end of the
> day to no avail.
>
> I saw that zeek/mike had and excahnge about this and so did barry.
>
> I have tried
>
> a) the exrem function- but that does not solve much even if i do
> buy=exrem(buy,short or sell); as u suggested in an earlier email
> .because then a buy can still occur once a short has occured or even i
> change to cover a buy can still occur if there are 2 short trades in a
> row.
> b) i tried setting static vars - but can't backtest them or see them
> in exploration. so that does me know good.
>
> c) I tried using the backtester interface to plot only real trades.
> that does plot real trades and there are no conflicting signals
> plotted. but in real time I still get a 1 in the short array while in
> the middle of a long trade.
>
> d) i even tried the flip funciton. but it will always be reset to zero
> when the code reproccesses the array bc it needs to be initialized.
>
> Is there anyway to avoid getting a 1 in the short array while the last
> signal in the buy/sell array was one in the buy array ( meaning in the
> middle of a long trade).
>
> I am starting to think there is not.
> PLease correct me if I am wrong. I have seen posts on the forum with
> similar frustrations.
>
> 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
<*> 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@xxxxxxxxxxxxxxx
mailto:amibroker-fullfeatured@xxxxxxxxxxxxxxx
<*> To unsubscribe from this group, send an email to:
amibroker-unsubscribe@xxxxxxxxxxxxxxx
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|