Sort these bond ratings

ES6, 71 65 bytes

a=>a.sort((b,c)=>r(b)>r(c)||-1,r=s=>s.replace(/[^A-z]*$/,"z$&,"))

By inserting a z after the letters and suffixing a , we just have to sort the strings lexically.

Edit: Saved 6 bytes thanks to @user81655.


Bash + GNU utilities, 45

Credit is due to @Neil for the approach.

sed s/$/e/|tr +-3 d-l|sort|tr -d e|tr d-l +-3

In my locale sort order, numbers sort before letters and - sorts before +. So these characters are transliterated into the alphabet range so they sort in the right order.

Try it online.