There's no good solution for this that is also widely supported. 
Some people try to put lists in the direction tag like direction=90;90;270 and traffic_sign = maxspeed;speed_camera;maxspeed.
Others use traffic_sign:forward and :backward - but if the node is not connected to a road this can't be evaluated easily.

It seems to be better to keep two nodes like you did.