I think there is nothing wrong with you. I'm like that too. If I don't get enough sleep, I'll be grumpy, unfocused and generally not very happy. Staying up late one night (such as going out partying in the weekend), can easily affect me for days. A good diet, meditation and exercise can all help, but I've found the best way is to keep a very regular sleep pattern and get enough sleep every night. Preferably it should be so that you wake up naturally, before your alarm clock goes off.