I have a simple strategy when Ema>Sma enter long and Ema<Sma enter short.
I want initialy a stop loss fix and i want to trail the stop loss every tick.
The problem is, my strategy not work.
What is wrong?
protected override void Initialize()
{
SetStopLoss("", CalculationMode.Ticks, StopLoss, false);
SetProfitTarget("", CalculationMode.Ticks, 0);
CalculateOnBarClose = true;
}
/// <summary>
/// Called on each bar update event (incoming tick)
/// </summary>
protected override void OnBarUpdate()
{
if (Position.MarketPosition == MarketPosition.Flat)
{
SetStopLoss("", CalculationMode.Ticks, StopLoss, false);
}
else if (Position.MarketPosition == MarketPosition.Long)
{
if (Close[0] > Position.AvgPrice + 1 * TickSize)
{
SetTrailStop("", CalculationMode.Ticks, 1, true);
}
}
if (Position.MarketPosition == MarketPosition.Flat)
{
SetStopLoss("", CalculationMode.Ticks, StopLoss, false);
}
else if (Position.MarketPosition == MarketPosition.Short)
{
if (Close[0] < Position.AvgPrice - 1 * TickSize)
{
SetTrailStop("", CalculationMode.Ticks, 1, true);
}
}
// Condition set 1
if (EMA(Ema)[0] > SMA(Sma)[0])
{
EnterLongLimit(DefaultQuantity, 0, "");
}
// Condition set 2
if (EMA(Ema)[0] < SMA(Sma)[0])
{
EnterShortLimit(DefaultQuantity, 0, "");
}
}
Comment