Maybe Steam doesn't let you use certain characters? Btw there are 3 places in Steam where you can enter a name;
User ID= Which is what others use you request joining your friends list, and for logging on. In-game name= The name other players and friends will see you as. Change this anytime you want. This can definitely have the @ sign. Community page= I don't think these are fixed, but it's just the name for your page where stats are saved. Mine being http://steamcommunity.com/id/tsol, as an example.