Playing a defensive macro style hasn't been working for me.
I started doing 1gate aggression, followed by SG and into a macro game, and have been doing pretty decent.
It's weird for me to be this aggressive, I felt like I never could be vs terran, but it really does pay off.
1 zealot 2 stalkers> 1 oracle> 4-5 phoenixes. It keeps your opponent busy, in their base, and denies map control and gives you a lot of time and scouting for you to tech and expand safely.
Try it out :P
Just take your first fast zealot/stalker/mcore and move out. He'll either have a few marines, or a reaper en route to your base(if he hasn't arrived already). Chrono out the next stalker to control the reaper.
But you can outright win some games just with the first zealot/stalker/mcore push, or even severely push him behind. This is a very effective attack that might even force him to pull SCV's just to deal.