Kenneth G. Wilson (1923). The Columbia Guide to Standard American English. 1993.
shake the head, nod (the head)
These are idioms describing the head gestures most native speakers of English use to express disagreement or agreement, to communicate no or yes either without speaking or to reinforce speech. To shake your head is usually understood to be a side-to-side movement; it means no or I wont or I disagree. To nod your head is usually an up-and-down movement; it means yes, I will, I understand, or I agree.
The usage problem is with He shook his head yes. Most people will take the statement to be a description of an affirmative nod, and its not even a contradiction, since the generalized meaning of the verb shake is to move rapidly in any direction or in all directions. Nevertheless, the phrase can be confusing, and it may cause you to shake your head no, regretfully.