Hello, I'm working my way through all these examples, try to learn how to program with Zorro. On this script, I keep running into an error (with Zorro 1.12.1) that I'm stuck on.

The error is:
(EURUSD::S) Error 010: Invalid stop limit 1.2823
(EURUSD::L) Error 010: Invalid stop limit 1.3034
(EURUSD::S) Error 010: Invalid stop limit 1.3059
(...etc)

What would cause a stop to be invalid? I thought maybe it was too tight in the spread, but that doesn't seem to fix the issue.

Here is the code I am working with so far:
Code:
function run()
{
	set(PARAMETERS+FACTORS+TESTNOW+NFA);
	BarPeriod = 5;
	StartDate = 2006;
	NumYears = 7;
	NumWFOCycles = 6;
	LookBack = 100;

	var* Close = series(priceClose());
	var* High = series(priceHigh());
	var* Low = series(priceLow());
	var* PLUSDI14 = series(PlusDI(14));
	var* MINUSDI14 = series(MinusDI(14));
	var* ADX14 = series(ADX(14));
	var* ATR11 = series(ATR(11));
	var* SMAATR11 = series(SMA(ATR11,21));
	plot("ADX14",ADX14[0],NEW,0x0000CC);
	plot("ATR11",ATR11[0],NEW,BLUE);
	plot("SMAATR11",SMAATR11[0],NEW,BLUE);

	if(lhour(UTC) >= 7 and lhour(UTC) <= 21)

	if(ADX14[0] > 25 && ATR11[0] > SMAATR11[0] && crossOver(PLUSDI14,MINUSDI14) && NumOpenLong == 0)
	{
		if(Low[1] + (2*PIP) < (10*PIP))
			Stop = 15*PIP;
		else
			Stop = Low[1] + (2*PIP);

		enterLong();
	}
	else if(ADX14[0] > 25 && ATR11[0] < SMAATR11[0] && crossOver(MINUSDI14,PLUSDI14) && NumOpenShort == 0)
	{
		if(High[1] - (2*PIP) < (10*PIP))
			Stop = 15*PIP;
		else
			Stop = Low[1] - (2*PIP);

		enterShort();
	}
}


Thanks if you can offer any tips on this error I'm getting.