Why is the horse worth less than the cannon at the start?
These answers restate the rules implemented by our open-source engine, which follows the WXF laws for movement, checkmate and both repetition rulings: a side that forces a repetition by perpetual check or perpetual chase loses rather than drawing. The chase half has not been validated against the official casebook. Where an answer refers to a specific position, that position lives on the linked reference page, where the build verifies it before publishing.
Direct answer
Because a full board is full of screens. In the opening a cannon attacks from a distance, is hard to approach, and always has something to jump — so it rates about 4.5 against the horse's 4. By the endgame the ranking reverses, for exactly the same reason inverted.
The crossover
Every trade removes a potential screen and removes a potential leg-blocker at the same time. So the cannon weakens and the horse strengthens with every exchange, and somewhere in the middlegame they cross.
The practical rule: if you are heading for an endgame, trade your cannon for their horse, not the other way round.
Where the rule breaks
If the enemy general still has both advisors, a cannon retains value late because the palace is exactly where screens survive longest. And a horse that cannot reach the action in four moves is worth less than its number regardless of how empty the board is.
Related questions
Can a lone horse mate?
Yes, against a bare general: a horse and its own general win every one of 4,590 positions. A lone cannon cannot, because it has nothing to jump.
Which should I keep in an attack?
Usually the horse, because it covers escape points around the palace that nothing else reaches.