The exchange banks on main street of Sosua today are giving $20.10. Where I change money is giving more. That means in the Santo Domingo area you should get 20.40 or more at the exhange banks.
As golo said, stay away from commercial banks, which give less, and the guys roaming the streets, all of whom have ways to cheat you.
In response to ArJay, I'd recommend bringing dollars (but there is a risk is having large amounts of cash) or travelers checks. Either will give you a better rate than the ATMs by the time you deduct the bank fees. Also, their rate tends to be around the international rate shown on internet, rather than the actual rate if you are changing money in the DR.