I too have a very active, very physical 4 year old. I have a few suggestions for you, and hope that one or more will help.
First, we have noticed a very definate connection between Nick's behaivor and the amount of sugar he consumes. We limit processed sugar to a minimum. No candy, ice cream, syrup, sweet granola bars, fruit snacks, etc (unless it is a special occasion and we are prepared for the ensuing behaivor).
Second, we make sure he has time every day where it is okay to be physical. If for some reason we have a day without any release, he gets very difficult by the evening.
Third, I have found that the best way to remind him to not use his body when he is frustrated is to talk about how it feels to the other person. I often remind him of a time when another child hurt him, asking him to remember how that felt. "Do you like it when someone hits you?" "How do you think your sister feels when you do that to her?" "Do you think she is going to cooperate now?"
Finally, I always go back to 2 books when I find I am at my wits end. The Discipline Book by Dr. Sears. And Redirecting Children's Behaivor by Katherine Kvols. Both of these books are full of good ideas, and help me to remember good ways of reacting to him.
Gotta run, crying little person... good luck...