enemy[i].x=-50+Math.random()*1100
enemy[i].y=-50+Math.random()*700
//50 pixel tolerance each side
really? think about it. Lets only work on the x axis and you will soon see your mistake.
Math.random forms a number between 0 and 1. there for Math.random*1100 means it lowest number is 0, and highest 1100, and unless your stage width is a negative value, it will apear on screen. how about this (assuming your stage is 1000 pix wide)
(Math.random*1000)+1000
will spawn a x position between 1000 (on your stage tip) and 2000 (far from stage tip)