Wow after digging around it seems you're right. It's even worse than I thought. I had thought it would be something like deducting a maximum of 20k of your losses against your profits, so you'd book 30k in taxable income in your example.
In reality it's actually worse. You're actually double taxed. You're taxed once on your profits, and then the 20k is deducted against the carry forward on your long side.
Holy shit.
It is asinine under a US tax law interpretation. I'd like to hear someone says he knows German tax law well to indicate it is. As I have no skin in the game, I'll take it at face value.
Otherwise, our best guess is that something is lost in the translation (or application). This would murder the market and should have been apparent in volumes traded.