PureBytes Links
Trading Reference Links
|
Terry,
Steve,
Thanks to both of you. Your suggestions were right
on the money.
Wayne
--- In amibroker@xxxxxxxxxxxxxxx, "Terry" <MagicTH@xxxx> wrote:
>
>
>
> Wayne,
>
>
>
> Cross is true only on a single day. It is NOT a flag that remains True
> after the day of the Cross. Odds of all 3 crossing same day (or same
> bar) is low so I wouldn't be surprised if you never get a Buy signal.
> Better, when you have multiple conditions, is a simple test like this:
>
>
>
> Buy = RSI(15) > 50 AND MACD() > Signal() AND EMA(C,5) > EMA(C,20);
>
>
>
> The only trouble with this is you will get multiple continued Buy
> signals. You can "correct" these if you wish (back tester handles them
> just fine) using ExRem with an opposite signal if, for example, any of
> the signals turn down:
>
>
>
> Sell = RSI(15) < 50 OR MACD() < Signal() OR EMA(C,5) < EMA(C,20);
>
> Buy = ExRem(Buy,Sell); //Removes extra Buy conditions between first Buy
> and first Sell.
>
> Sell = ExRem(Sell,Buy); //Same for Sell signals.
>
>
>
> You could also use some form of barssince() if you really want to use
> Cross(), but this would get overly complex when the above works.
>
>
>
> Also, be careful with = and == as your following line of code will fail:
>
>
>
> Buy=SignalTrue=1 AND Cross(RSI(15),50) OR Cross(MACD(),Signal()) OR
> Cross(EMA(C,5),EMA(C,20));
>
>
>
> The reason it will fail is you are forcing SignalTrue to ALWAYS be True
> because you are setting it to True with =1. You should use ==1 to test a
> value. In fact, for a True test you don't need anything because when a
> value is True it is equal to 1 and you can simply say:
>
>
>
> Buy = SignalTrue AND Cross.etc.
>
>
>
> Note: ANY NON-Zero value is True. So -1, 10000, -3456, 1 are all True
> while only 0 == False.
>
> --
>
> Terry
>
> -----Original Message-----
> From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On
> Behalf Of wlandry01
> Sent: Wednesday, November 30, 2005 15:42
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: [amibroker] Rather Confused Newbie
>
>
>
> Hi,
>
>
>
> I'm trying to set up a very basic system to determine if a stock
>
> has met the following conditions:
>
>
>
> 1. The RSI has crossed 50
>
> 2. The MACD has crossed its Signal
>
> 3. The EMA5 has crossed the EMA20
>
>
>
> The following code will find the dates that all three
>
> signals occur:
>
>
>
> Buy=Cross(RSI(15),50) AND Cross(MACD(),Signal()) AND
>
> Cross(EMA(C,5),EMA(C,20));
>
>
>
> I'm not concerned with whether the crossings take place on the
>
> same day, though. I am interested in knowing the day
>
> that the last of the 3 indicators does cross (assuming that
>
> that the first two have crossed). Following is
>
> an approach that I've developed, but it seems very clumsy:
>
>
>
> EMACross=Cross(EMA(C,5),EMA(C,20));
>
> MACDCross=Cross(MACD(12,26),Signal(12,26,9));
>
> RSICross=Cross(RSI(15),50);
>
>
>
> SignalTrue=IIf(EMACross==MACDCross==RSICross==1,1,0);
>
>
>
> Buy=SignalTrue=1 AND Cross(RSI(15),50) OR Cross(MACD(),Signal()) OR
>
> Cross(EMA(C,5),EMA(C,20));
>
>
>
> The first 3 lines set flags for the crossovers. I believe that
>
> I could simply put the crossover checks in the "IIf" statement
>
> but this format seems easier for me to read. In any case, I'm not
>
> much of a programmer, and it seems that there must be a more direct
>
> approach. I've burned myself out looking at other code and such,
>
> however, with no luck, and would appreciate if if someone with a
>
> better programming background could offer some insight.
>
>
>
> Thanks,
>
>
>
>
>
> Wayne
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> 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
>
>
>
> http://groups.yahoo.com/group/amibroker/
>
>
>
> amibroker-unsubscribe@xxxxxxxxxxxxxxx
>
>
>
> http://docs.yahoo.com/info/terms/
>
------------------------ Yahoo! Groups Sponsor --------------------~-->
Try Online Currency Trading with GFT. Free 50K Demo. Trade
24 Hours. Commission-Free.
http://us.click.yahoo.com/RvFikB/9M2KAA/U1CZAA/GHeqlB/TM
--------------------------------------------------------------------~->
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
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/amibroker/
<*> 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/
|