Best advice I can give is to have directed roads and watchtowers.
Basically, you have specific avenues that FORCE the merchants to follow particular paths into your fortress. I like to use statues spaced every few tiles so that wagon's can't get through them. You an also use walls, channels, or anything else that tickles your fancy. As long as it's impassible, it'll work.
Like so:
s = statue
+ = road square
s s s
+++++++
+++++++
+++++++
s s s
You can see from the above that wagons (3x3) can't fit in between the statues.
This forces them to get to the same point to every time to get to my road and into my fortress. Most maps, that means I have only 4 areas that I really need to worry about. Depends on the map, but doing this usually forces the traders to show up right at the start of the road, since they can't get to your fortress any other way. Just make sure that road NEVER gets blocked off, otherwise they'll just bypass your site.
At the start of each road I have watchtowers manned with military dwarves to help out with any ambushes that show up. The trick here is have their beds IN the watchtower (even barracks beds can be assigned). I usually have a few levels of living quarters, as it were. Beds, tables, chairs, food stockpiles, etc. Oh, and put up some archery targets for your marksdwarves so they stick around when training as well. All of this usually keeps that squad in the area even when off duty. You also get the occasional fortress guard wandering over as well, which can make them useful for a change.
This isn't foolproof, of course. Sometimes the towers just get overrun. Sometimes the goblins manage to sneak past the tower and attack the merchants halfway along the road. But most of the time it gives me the opportunity to save them.
Oh, and my watchtowers usually use drawbridges as their entrance. I started doing this after a few doors got suck open by dropped items or corpses, and the poor marksdwarves inside got slaughter during the next ambush because I couldn't lock the doors. If it's just going to be marksdwarves stationed there (safer, but not always as effective) you can have a sealed tower that only has access through underground tunnels to your fortress.