If I understand correctly you want to be able to have an actual $ in the filename. Sadly you will need a \ for each shell/subshell that it's processed through. You may need multiple \ to get through all shells, eg;
In that case the first \ escapes the second \ and the third \ escapes the $ so the following survives;
The next shell would then have the $ correctly escaped. Quotes will only help to escape the $ in the current shell.
It's difficult to tell if this is actually what you're after without any code example or more info but I hope it's clear enough to help a little