Todibus: Don't forget elevation changes - they will have a major impact as well.
There isn't a magic formula - the only way to get good is to practice, practice practice!
A formula that actually works would definitely have to account for elevation changes, as they are indeed very important.
Regarding the effectiveness of formulas, they're certainly a lot better than just guessing. :)