Dont worry about getting Russian currency. They love Euros and especially US dollars (prices will also be shown in these currencies) but make sure the notes are clean and untorn. The majority of the shops will take credit cards. We didnt go to the ballet but spoke to fellow passengers who had gone and they all said it was a fantastic evening. Check with your Shipping Line for advice regarding dress code for this trip. Enjoy.
We were in St Petersburg last year and did not use and currency other that dollars and Euro.