Setting BarZone back to the very first value (ET) at the end of the script fixes Error 030 but does not really change internal Zorro 'market hours' - they are still in the ET timezone, and therefore trades for GDAXI are allowed from 930 to 1600 ET, not WET.

Code
function run() {
	
	set(LOGFILE);
	NumYears=1;
		
   BarPeriod=15;
	
	BarZone=ET;
	
	Verbose=3;
	
	StartWeek=71800;
	EndWeek=51701;
		
BarMode = BR_WEEKEND+BR_ASSET+BR_LEISURE;

MaxLong=-1;

	asset("EUR/USD");	  
	  
	  AssetMarketZone=ET;
	
		AssetMarketStart = 1800;
		AssetMarketEnd = 1701;
		
		BarZone=AssetMarketZone;
	
		StartMarket=AssetMarketStart;
		EndMarket=AssetMarketEnd; 	
				
	  vars prcI= series(priceC(0));
	
	   printf("# cls1=%.5f,Assmark1end=%i, market=%i, susp=%i",prcI[0],AssetMarketEnd,market(ET,0),suspended());
             
           //tradeSys1();
	
	asset("GDAXI");	
		
	AssetMarketZone=WET;
	
	AssetMarketStart = 0930;
	AssetMarketEnd = 1601;	
	 
	BarZone=AssetMarketZone;
	
	StartMarket=AssetMarketStart;
	EndMarket=AssetMarketEnd; 
	
	vars prc= series(priceC(0));
	
	printf("# cls2=%.2f,mark2end=%i, market=%i, susp=%i",prc[0],AssetMarketEnd,market(WET,0),suspended());
	
		
	LifeTime=8;
	if (prc[0]>prc[1]) enterLong();
	
	BarZone=ET;
}