what is the good way to pricing american option on bond future? From bonk fixed income securities 3rd by Tuckman, I understand how to pricing European option on bond future, but I still have no clue how to pricing american option.
American Options are a tricky subject and pricing them is almost never easy. A lot depends on the model etc.
Assuming you that you a familiar with monte carlo and that you know the risk neutral dynamics of your porcess - you could use monte carlo least squares.
The paper on the topic is easily accesible and not too technical.
Suggested reading: Valuing American Options by Simulation: A Simple Least-Squares Approach
Pricing a bond futures contract is already a very difficult task (because of the embedded delivery option), not to mention an American option on it. Bottom line, you'll need to build either a tree/lattice or run some monte carlo simulations. Here's a sketch of how you could go about doing it –
1) Using a term structure model, generate the distribution of the yields/prices of all the deliverables between the price date and the last delivery date. You may want to have time slices on at least the spot settlement date, some potential exercise dates, the last trade date of the futures, the first delivery date, and the last delivery date.
The term structure model can be as simple as a short-rate model (e.g., Vasicek or Hull-White) and you can build trees/lattices following standard literature. The model can be calibrated using either on-the-run bonds or cheapest-to-delivers. In practice, however, many people diffuse bond yields directly (Tuckman alluded to it in his book) – starting from today's spot yields, you can use 2-3 principal component factors to diffuse the yields into the future.
2) Once you have a grid of bond deliverable prices, you can price the bond futures contract using backward induction. If you ignore the end-of-month option (bond futures expire one week before the last delivery date) and timing option (bonds can be delivered any time between the first delivery date and the last delivery ate), you could assume that delivery happens on the last delivery date. In this case, it's trivial to see which bond should be delivered on each node in a tree or path in a MC simulation (the cheapest one). This allows you to compute the bond futures' price throughout the grid.
3) Finally, given the bond futures tree/lattice/MC simulated paths, it should be straightforward to price the option on the bond futures.
These models can be super complex. The delivery option part is particularly tricky and you should work closely with market makers with regard to the assumptions. For example, what volatility should you use to calibrate the model; do you want to model unauctioned bonds too; etc.