Haven't tried a macro with a pre-made shape (although I'd just make my macro have an input and feed the roto you want if it doesn't work).
I too have tried linking expressions to rotoshape points. From my experience the only sort of linking I've been able to do is from a tracker node (like Shake sets up when you tell it to attach tracker points to rotoshape points). I've tried manipulating the tracker data with simple math like trying to move it up 10 pixels, but the rotoshape ignores the math and just leaves it locked to the tracker. So it looks like it can only be locked to trackers, but nothing else expression wise. I don't think you can pipe rotoshape point x/y info into other expressions either. If you find out otherwise, I'd love to know because I've been waiting for that feature.