I normally think about what direction I want the train to go in at one side or another, just like road systems. Then I think about whre I want the train to stop, so that it does not block other train in the intersaction, or so that it will wait for another train to pass. If the section after a light is occupied, the other train will stop and wait until the coming section is free.
Note that having too many signals may allow trains to get very close to each other – meaning that the second train might catch up with the first. so I often prefer having one having to wait at the station until the previous train has arrived at the next station, or is very close to. This spreads the trains more out, without having to make them wait for full load, which will make passenger tired and not use the line.
Singal + direction of light: [<s] or [s>]
Intersection: \ or /
—-/—-[<s]—————[<s]–\—-[single track station, etc.]
Signal in this example has “one way” toggled on (click on the signal, toggle “one way” on):
——————————————-[s>]— Train will go <-
–[<s]——————————————– Train will go ->
It’s usually smart to make a signal with one way toggled on just after the intersection, on each end. Explained: I want the train to go on the right side. To do that, I toggle “one way” on, at the first signal pointing towards the train on the RIGHT track, AFTER the intersection.
Hope this helps. 🙂