I have been taking lessons and my coach and I have been discussing an important philosophy. In squash there are no winners, just open spaces.
If you accept that philosophy what does mean to the game? Well very simply it means that your opponent can get to your next shot so the best you can do is make him work for it. Hit to somewhere he is not to do that. Get him running the diagonal. Take satisfaction from making your opponent really struggle to get your shots. He will likely get them all in the beginning but typically later in the match he will start to make more errors as you wear him down physically.
How does this strategy work against a shooter? It will work quite well actually. Keeping the ball away from a shooter will make it much more difficult for his attempts to outright win points to be successful. Hitting pinpoint shots when you are late to the ball is much more difficult than if you are setup early.
How about with a retriever? Once again well but it takes commitment. A retriever will very happily go chasing after everything you throw at them and is undoubtedly fit so will get pretty much everything. The reason you really need to be committed to this strategy with a retriever is that you have to accept that they are going to get everything and that you may truly not hit any winners. Accept it, make the retriever's life difficult by hitting to the open spaces and stick to the plan. Do not get frustrated by the ball coming back.
Accept that in squash, especially as you play better and better players there are no winners, just open spaces to hit the ball to and watch your results improve.