Buying signals can be expensive, and I need a lot of them for my subway. One 65 x 24 inch module has 14 signals of varying types. I devised a method using 1/4 inch styrene deep channels by Plastruct (part #90585) and used a jig consisting of three 7/32 inch diameter aluminum tubes for precise hole cutting using a 3/8 inch drill bit to be placed in the tubes. I then add depth to the sides using .040 inch square styrene. Placed and glued in each hole is a colored lense for 3mm LEDs. The LEDs are wired using thin magnet wire which is piped through a 1/8 inch diameter aluminum tube. The signal is then enclosed at the top and back using thin styrene strips. This signal housing is mated to the aluminum tube.
Here is a photo of the build process showing the jig and the styrene cuts.
Finished signal on layout. This was my first iteration. The base uses a small cut of 5/32 inch diameter aluminum tubing which the 1/8 inch tubing slides into. The bottom is an O-ring for the LED lenses which was used on the old layout signals, but is not required here. So I found another use for them. No wires are visible.