The instinct for hiding your price from the general public is essentially a basic defensive measure – competitors can’t undercut you if they don’t know your prices in the first place.
The downside of such a practice is that you also hide your price from potential clients, who are then left to their own devices to realize the level of expertise you actually represent.
As a consequence, some potential clients may run away prematurely, thinking that your lack of clear pricing indicates that “if you have to wonder about the price, you can’t afford this. But at the same time, you may get pestered by time-wasters trying to see if they can get away with rock-bottom payment levels with you since you have not set any clear boundaries.
In general, as an expert service provider, it’s best to show at least your minimum level of engagement (the total sum below which you don’t really want to talk to a potential client).
This will hamper most attempts at undercutting as you are only showing your minimums, which is not much to go by – the competitor can never be sure how much above that would you actually charge. A clearly expressed minimum will also keep the penny-pinchers at bay, and provide the respectable crowd with some idea of your confidence level, without disabling you from adapting your price to the value of the project when appropriate.