You forgot the biggest and most likely cause, RUMORS.
The best trading is done in the morning before 10AM and the last hour of the day. Midday trading is generally the worst. Usually boredom plays that don't do much of anything. I wish I didn't make them, but I'm a junkie for action I can't...