[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[amibroker] Re: Rather Confused Newbie



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/