protectedoverridevoid Initialize()
{
CalculateOnBarClose = true;
EntriesPerDirection = 1;
EntryHandling = EntryHandling.UniqueEntries;
}
///<summary>
/// Called on each bar update event (incoming tick)
///</summary>
protectedoverridevoid OnBarUpdate()
{
// Condition set 1 - RSI under 25 for two days
if (RSI(2, 1).Avg[0] < 25
&& RSI(2, 1).Avg[1] < 25)
{
EnterLong(10, "Entry1");
Variable0 = Close[0];
Variable1 = 0;
Variable2 = 0;
Variable3 = 0;
}
// Condition set 2
if (Close[0] < Variable0)
{
EnterLong(20, "Entry2");
Variable1 = Close[0];
Variable0 = 0;
Variable2 = 0;
Variable3 = 0;
}
// Condition set 3
if (Close[0] < Variable1)
{
EnterLong(30, "Entry3");
Variable2 = Close[0];
Variable0 = 0;
Variable1 = 0;
Variable3 = 0;
}
// Condition set 4
if (Close[0] < Variable2)
{
EnterLong(40, "Entry4");
Variable0 = 0;
Variable1 = 0;
Variable2 = 0;
Variable3 = Close[0];
}
// Condition set 5
if (RSI(2, 1).Avg[0] > 70)
{
ExitLong("", "");
Variable0 = 0;
Variable1 = 0;
Variable2 = 0;
Variable3 = 0;
}
}

Comment