How do you write a soldier move in xiangqi notation?

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

A soldier move is written as its piece letter or character, its starting file, and a direction: 進 or + for advancing straight ahead, or, once it has crossed the river, 平 or = for a sideways step, followed by the destination file or, when advancing, simply the count of one point.

Before and after the river

An uncrossed soldier only ever advances, so its notation only ever uses the forward-move symbol. Once it crosses, sideways moves become possible too, and notation for a crossed soldier can show either the forward symbol or the sideways one, depending on which way it actually moved that turn.

Why soldier notation looks simple compared to other pieces

Because a soldier always moves exactly one point, its advance count is always one, with no real distance to work out the way there is for a chariot or cannon travelling several points down a line. The direction, plus the destination file for a sideways move, is enough to fully describe it.

Related questions

Can a soldier's notation show a retreat?

No, there is no backward symbol used for a soldier, since it can never move backward under the rules.

Is the soldier symbol the same in Chinese and WXF notation?

No, Chinese notation uses 兵 or 卒 depending on colour, while WXF notation uses the single letter P for both.

Try it on a real board

Reading an answer is one thing; playing it is another. Free, instant, and nothing to install.