While safety may be the REASON that you need her closer to you, the actual ISSUE imho, is that she's not listening to you at all.
With my son, he didn't get a choice from the beginning, so we won't use him as an example. One of my closest friend's child, who I watched for 6 months last year (at 5), would NOT hold hands to cross the street, stay near us in stores, ran ahead and hid, ran ahead and RAN... oh my GAWD, talk about a HUGE pain in the keister. He would literally run out into the street into oncoming traffic, or through a store knocking things over as he went.
So I MADE him. He would hit, spit, yell, cry, and throw a fit... but he either held hands or was carried. And then we went home, for throwing a fit, but darnit... we crossed that street.
His parent's didn't believe that children should be "physically coerced" (aka picked up and carried if they were misbehaving or doing something dangerous) because it would make them feel "small". The also didn't believe that the adult should react to fits or being hit/kicked. (AKA, no punishment for it. And I'm not talking physical, I'm talking no time outs and no talking to and no going home from the park.) They believed that their child should be reasoned with.
Now I'm all for talking and explaining (Laughing... we do that A LOT as parents don't we? Like breathing, we're explaining the why's and why not's, how's, when's, where's, colors, numbers, history, my gawd do we ever shut it?) but I'm ALSO of the opinion that I can be explaining that we don't hit other kids as I'm strapping them back into a car seat and going home. Tie into a little remorse in that conversation.
I can be explaining that cars and strangers are dangerous, and that it is MY responsibility to keep them safe and there is NO WAY I'm setting them down to run off again. If they want to try holding hands, then they can try on the way home.
By the end of the six months the little boy would hold my hand crossing the street, stay within 5 feet of me in stores (and not knock things over), stop when I said "stop" and wait for me (driveways mostly), and come running back across the field when I whistled.
He also quit hitting other kids at parks, and throwing fits to get his own way (ha, okay, the caveat on that is on ridiculous things that he knew was wrong, like throwing fruit at people at the grocery store... or crossing the street without me).
BUT guess what? All of that still happens with his parents. He runs ahead out into streets, hits other kids on the playgrounds, screams at the top of his lungs, gets lost in stores and listens not. at. all.
I didn't teach him how to DO those things. I taught him how to LISTEN TO ME, and that BOYOHBOY things were super fun when he listened. He doesn't have to listen to his parents, so he doesn't. To this day a whole year later at 6 he still acts like a 2 year old screaming, hitting, biting, and running away from them. But with his au pair, he holds hands, listens, asks nicely, and isn't a bully on the playground.
Did I ever hit him? Nope. Hurt him? Nope. Yell at him? Well when he ran away, one has to yell for distance, but yell at him when he WASN'T far away or his name when he was about to do something dangerous? Nope.
Just clear consistent consequences and results. Stay close, or hold hands. Hold hands or get carried. Fit = Going home. Not listening = not getting what you want. His au pair does the same thing. His nanny did the same thing. And he still listens to all 3 of us. His parents? MY GOOD FRIENDS, his parents? Nope. Doesn't listen one bit. They've never given him any reason to.