This. I regularly feel that I'm just one more 20 hour day from getting the thing finished so I can relax. It's starting to look like there is no such thing. There will always be things to tweak, new features to add, things that break, et al. It's exhausting, and there is no escape from it at 5:00pm.
Of course there's no such thing. Working twenty hour days destroys your ability to think clearly. It ends up being - clinically, not just metaphorically - the equivalent of coming into work blind drunk every day. How can you possibly hope to get your job done that way?
Actually getting your job done and being a martyr are two different things, and you need to decide which you want. If you want the former, then when five p.m. comes around, stand up and walk away from the computer. Your work will still be waiting for you tomorrow either way, but this way you'll be fit to do it.
Have you never been so engrossed in building something that you stayed up all night to work on it? I certainly don't put in 20 hours every day, but I know many very talented coders that go on similar coding marathons.