Try ProClean, its really aimed at the dirt bike segment but it is ideal for road bikes as well, its the real McCoy.....
But be warned, do not put it on to a dry bike or alloys and DONT leave it on to long otherwise it will cause lots of messy streaks which you will not be able to get rid of.
Make sure that the bike is wetted all over and simply spray it on and wash it off, works better combined with a jet wash than a hose to be fair.
I have been using it for years now and am really happy with it, but I would suggest that you water it down a little from its raw state.
One litre of water to four litres of ProClean, it still works just as good.
Buy it in the 25 litre bottles rather than the normal 5 litre bottles and you will save a fortune.
Alan