#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
// This namespace holds all strategies and is required. Do not change it.
namespace NinjaTrader.Strategy
{
/// <summary>
/// orden limit
/// </summary>
[Description("orden limit")]
public class ordenlimitV2 : Strategy
{
#region Variables
// Wizard generated variables
private int time = 93000;
private int takeP = 10; // Default setting for TakeP
private int stopL = 10; // Default setting for StopL
private int desplazamiento = 10; // Default setting for Desplazamiento
// User defined variables (add any user defined variables below)
#endregion
/// <summary>
/// This method is used to configure the strategy and is called once before any strategy method is called.
/// </summary>
protected override void Initialize()
{
SetProfitTarget("ShortLimitOrder", CalculationMode.Ticks, TakeP);
SetStopLoss("ShortLimitOrder", CalculationMode.Ticks, StopL, false);
CalculateOnBarClose = true;
}
/// <summary>
/// Called on each bar update event (incoming tick)
/// </summary>
protected override void OnBarUpdate()
{
// Condition set 1
if (ToTime(Time[0]) >= time)
{
EnterShortLimit(1, GetCurrentAsk() + Desplazamiento * TickSize, "ShortLimitOrder");
}
}
#region Properties
[Description("")]
[GridCategory("Parameters")]
public int TakeP
{
get { return takeP; }
set { takeP = Math.Max(1, value); }
}
[Description("")]
[GridCategory("Parameters")]
public int StopL
{
get { return stopL; }
set { stopL = Math.Max(1, value); }
}
[Description("")]
[GridCategory("Parameters")]
public int Desplazamiento
{
get { return desplazamiento; }
set { desplazamiento = Math.Max(1, value); }
}
#endregion
}
}
This strategy does not work backtesting in strategy analyzer with 1 range bars type. It seems as it enters the limit order but is canceled immediately, not letting the price touch the limit price to fill this order. The situation is different when I try time based bars type, but I'm interested in range bars.
Thanks
Comment