Aleksandar's example is pretty good.
I'd simplify things one more notch in the firewall by going into interface lists, creating a list called WAN, and then adding all 10 of the VLAN interfaces to that group.
Finally, in the IP > Firewall > NAT rules, remove 9 of the masquerade rules and on the remaining rule, replace "out-interface=xxxxx" with "out-interface-list=WAN"
As for the ECMP suggestion, that's going to be the easiest thing to do. For all WAN interfaces assigned dynamically, you will receive a default gateway route (dst=0.0.0.0/0) so make sure they all have the same administrative distance so they get balanced.
Otherwise, you'll need to make quite a lot of mangle rules to get it working.
Another suggestion was to bundle the interfaces using some kind of bonding protocol. If your links are all to the same ISP and they're all PPPoE, then you can ask the ISP if they'll offer MLPPP, which if they do, that's the easiest of all - just put pppoe-client on each vlan interface (and set the pppoe-outXX interfaces as interface group WAN, and remove the physical vlan interfaces)
This will give you the ability to actually achieve single-thread downloads at the combined speed of your links. If they're just load-balanced with different public IP addresses, then nobody will be able to download faster than the available bandwidth of whichever link the connection happened to get assigned to.
Furthermore, coming up with a link testing configuration for 10 links is going to get very ugly too.... so if they can do MLPPP then give thanks to god/the universe/your guardian angel/your ancestors watching over you/luck/whatever you would give thanks to..... your life will be so much better.
When given a spoon,
you should not cling to your fork.
The soup will get cold.