To start this off, there a billions of timings against each race that you need to learn and become aware of in SCII. Being at a "near diamond" level, you should be aware of the timings in the following list: Here on teamliquid
If there is no expand at 5-6 minutes, according to the current meta game, it means youryou're being cheesed or allinedall-in'ed. Possibilities include 4-gate, 2-Gate(Zealot cheese), cannon rush(forge hidden in base), proxy gateway(zealot cheese), and there isn't much else the toss'toss could be doing unless he simply doesn't know how to play. To check for the cheese send the overlord into his base to check.
The basic guidelines are, if you don't see gas at the opponents natural at around 6 minutes, youryou're going to see aggression soon. I can't possibly hope to go into detail on the types of aggression protossProtoss can do with different gas timings. This is something you should look into, Teamliquidteamliquid.net is a great resource for this type of stuff. If protossProtoss takes more gas, then typically it means less chance of immediate aggression. EqualyEqually important, if not more-so, isare timings on his third base. If you notice the protossProtoss does not take a third, it means aggression is coming very soon.
To react
Against early aggression, instead of taking the standard three bases, only take two straight off, build spines and units as needed.
Against late game aggression you should do the standard three bases, and react to what you believe is coming. I cannot post the answers to each of the different compositions and what you should make against them. The standard is to go ling'ling, roach, into late game infestor/brood tech. Some protossProtoss builds are now countering this style and there are ling'ling/muta styles as well against protossProtoss. I recommend checking out TL to find out the different builds they can do and what the counters are.