When you draw your bow you'll notice the targeting reticle getting smaller. To get the most accuracy wait until it is at its smallest and then release the arrow. Letting go too early has very bad aim. If you hold too long, the reticle starts opening up again and releasing it at that point has much less accuracy. At higher skill levels the reticle will stay at the smallest point for a decent amount of time, but at lower skill levels it doesn't stay small for very long.
Arrows are affected by gravity. The further away your opponent is the higher you have to aim. Additionally, you have to lead your targets. The distance you have to lead is dependent on how fast your target is moving and the angle they are moving relative to you. If they are coming straight toward you, you just don't have to aim quite as high. If you've got a mounted unit galloping perpendicular to you 300 yards away, you've got a tough shot. (I got a 12.3 difficulty on one like that with a crossbow.)
Moving lowers your accuracy. To get the most accuracy you'll want to stop. The faster you are moving the lower your accuracy is. This is especially the case on foot. At higher proficiency and horse archery levels this becomes less of an issue when you are mounted.
If you are on foot, you'll want a high athletics skill and ... well ... allies or another weapon. You aren't going to last long on foot against other soldiers that get close. So, try to pick them off at a distance and either switch to a weapon or get your allies to protect you if they come too close (use the Hold command).
If you are on foot and have a mounted unit coming at you. Draw your bow and let the arrow loose right before you get charged. This will break the units attack and you shouldn't get hit (try to sidestep so the horse doesn't hit you). You can usually turn around and plant another arrow in the unit's back while he is getting away.
For a horse archer you'll want high riding and horse archery skills. You can take unshielded enemies out at your leisure at whatever distance you like. You'll want to keep moving when there are other ranged units so you don't get hit as much.
Enemies with shields pose the most problems for pure archers. There are a few tactics to get around those shields. Hitting them until they are destroyed is not efficient and unless you have a ton of arrows in your pack or are fighting very few enemies and have a lot of patience, that isn't the way to go.
You can wait till they strike (as mentioned in a previous post). This is probably the easiest method. This can be done for both foot and mounted units. For mounted units just run a bit ahead of them, you'll have to let them get close enough to "think" they can hit you. Then release your arrow. Pretty much the same thing for ground units, but you don't have to move very fast. Make sure not to run into obstacles in either case (boulders, trees, other units). This brings you to a stop and could be followed by a painful lesson. Finding an open field is the best way to go, you can just circle the field picking your opponents off.
Also remember that you can pretty much only shoot to your left when mounted. If the reticle disappears it means you are aiming too far to the right. You'll want to circle in a counter-clockwise direction.
There are other ways to get around shields. Shoot the units in the back if they are going after other enemies. Charge them and release the arrow as you are going by and they try to strike you.
You also may want to practice shooting with a crossbow on foot. When using crossbows the reticle doesn't grow after it reaches its smallest point. This allows you to take your time and aim as you wish. Good for practicing distance shots, but on the horse your going to have to rely on that bow.
Practice makes perfect...