Well it depends on the detail of set-up. There's the issue of routing your browser's page request to the correct server IP (which does appear to be happening because of the response you're getting). Then, as you're probably running two servers (instances) - myshop.com and trade.myshop.com - on the same underlying machine/IP, you need to be using host headers (in received page requests) to work out which one should respond.
If you were wanting to accept requests for both servers, but redirect those for the latter one to myshop.com/trade, you'd want to be rewriting the requests received so that requests to trade.myshop.com could be served from myshop.com (again, because they are different addresses). That rewrite might be happening unintentionally, given what you describe, but it's hard to tell. If you have set up two servers, then it's probably true that there isn't a /trade page/folder in myshop.com and hence the error? An easy test would be to put a temporary page there with a message, and see whether that gets served.
So how are the two server (instances) configured? And are they Apache or IIS?