For cancelled trades, you automatically set
amount = total / price;
However, this is invalid as some trades can be partially complete, such as 5% or 90% before they are cancelled. If this case happens, then the amount and total are set as if it was 100% completed.
In the makes array, there can be a trades array. You can get a total filled_amount and want_amount by summing up these variables for each element in the trades array.