There has been a lot of work in the openwrt world to make the cake autorate feature work better over here.
https://forum.openwrt.org/t/cakes-autorate-ingress/108848/
It’s not ported to mikrotik yet, nor do I know how we would do that as yet. The math is shaping up, at least.
See also: http://forum.mikrotik.com/t/some-quick-comments-on-configuring-cake/152505/1