here is my code if anyone needs to look at it.
#region Using declarations
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Xml.Serialization;
using NinjaTrader.Cbi;
using NinjaTrader.Data;
using NinjaTrader.Indicator;
using NinjaTrader.Gui.Chart;
using NinjaTrader.Strategy;
#endregion
namespace NinjaTrader.Strategy
{
[Description("THIS IS THE TEMPLATE FOR ALL MY NEW STRATEGIES")]
public class SIMPLETRIPLESCREEN : Strategy
{
#region Variables
private DataSeries HourlyCloses; //holds hourly data series
private DataSeries TenMinCloses; //holds Ten minute data series
double RcDeviation = 3.5;
#endregion
protected override void Initialize()
{
CalculateOnBarClose = false;
Add(PeriodType.Minute, 60);
TenMinCloses = new DataSeries(this); //sync primary ten minute series
}
protected override void OnBarUpdate()
{
double TenMinClose = Close[0];
double HourlyClose = Closes[1][0];
string Direction = "UNKNOWN";
bool SmaRising, MaUp;
if(CurrentBars[0] <= BarsRequired ||
CurrentBars[1] <= BarsRequired)
return;
//sync hourly data series
HourlyCloses = new DataSeries(SMA(BarsArray[1], 3));
if(BarsInProgress ==0)
{
//check if SMA is rising on the longer term chart
if(Rising(SMA(HourlyCloses,25)))
{
SmaRising = true;
}
else SmaRising = false;
//check is 8EMA is above 25SMA on the longer term chart
if(EMA(HourlyCloses, 8)[0] > SMA(HourlyCloses, 25)[0])
{
MaUp = true;
}
else MaUp = false;
//check if ten minute price is at extremes
//Determine directional bias--------------------------
if(SmaRising == true && MaUp == true)
{
Direction = "LONG";
if(TenMinClose < RegressionChannel(150, RcDeviation).Lower[0] &&
Position.MarketPosition != MarketPosition.Long)
{
EnterLong();
}
}
else
if(SmaRising == false && MaUp == false)
{
Direction = "SHORT";
if(TenMinClose > RegressionChannel(150, RcDeviation).Upper[0] &&
Position.MarketPosition != MarketPosition.Short)
{
EnterShort();
}
}
else Direction = "UNKNOWN";
if(Position.MarketPosition == MarketPosition.Long)
{
ExitLong();
}
else
if(Position.MarketPosition == MarketPosition.Short)
{
ExitShort();
}
else return;
//----------------------------------------------------
}
}
#region Properties
#endregion
}
}

Comment