PDA

View Full Version : I want a "Cross" condition to be valid for more than one bar


NinjaTrader_Ray
06-08-2007, 07:08 AM
Question:


I have been running my ninja script for the past 7 days. The first condition is a Move. Ave cross, then some RSI, ADX, etc ... conditions.

My question is if the moving average condition "crosses", but the other
conditions have NOT been met (yet), how long will the first condition stay
"True" to allow the additional conditions time to happen and trigger the trade ?

If the second or third condition takes 5 more minutes, I still want the
trade to execute. I am wondering is there a maximum length of time the "Cross Over" and "Cross Under" conditions are valid? (I would prefer not to use the ">" and "<" conditions, as the resutls are much less).


Answer:

The CrossAbove() and CrossBelow() methods have a signature such as:

CrossAbove(series1, series2, lookBackPeriod)

Where "lookBackPeriod" sets the number of bars where the cross must have occured within for the method to return a true value.

Therefore, if you want to check if the Cross of two MA's occured within the last three bars, you would write:

if (CrossAbove(SMA(10), SMA(20), 3))
// Do something

dwalls
11-26-2007, 08:47 PM
Hello Ray,
I what to use the CrossAbove of two MA's. One SMA using a 5 period close and the other SMA using a 5 period open. How would I do that based on your example below?

if (CrossAbove(SMA(10), SMA(20), 3))
// Do something

Would it be something like this?:
if (CrossAbove(SMA(5 close), SMA(5 open), 1))
// Do something

Thanks

zoltran
11-26-2007, 09:27 PM
if (CrossAbove(SMA(Close,5), SMA(Open,5), 1))
// Do something

Should do it.

Take a look at the strategy tutorial .. http://www.ninjatrader-support.com/HelpGuideV6/helpguide.html

In particular .. step 3. See the box in the diagram called InputSeries - 'Default Input' ?

YOu can click that, and then refer to any price/indicator you want.. For example, Close, Open, Typical .. or even another indicator.

Very powerful.