My understanding of “stop hunting” is that the market always seeks liquidity, i.e., where lots of resting orders are present. Even though I am not sure how it happens the reality is it happens more often than one thinks.
Basically, the market is merely an order matching engine where market orders cross with limit orders continuously. As such, it's completely neutral, impersonal and doesn't seek to do anything beyond what it's supposed to do:
matching orders according to the rules that govern that market or exchange. A market facilitates trading. That's all. How prices move are entirely up to the players participating in that market as represtented by the orders they put in.
If more market orders are coming into a market than can be absorbed by available liquidity (limit orders) at a given level - the market will see an up tick or a down tick. Market orders represent urgency. If the next level is depleted for liquidity as it still can't absorb all the market orders being submitted, it will move to the next level. If that level offers sufficient liquidity, price stops, but if not, it will move to the next level after that and so on.
But theoretically, if the amount of limit orders available for any given level was unlimited, the market wouldn't move one single tick regardless of how many market orders that hit that market. Usually not the case, though, but still important to understand.
A market only exists when there are constant transactions or buy/sell trades in the financial markets. That’s why 90% stops get hit sooner or later. Very rarely a stop rests at the top/bottom and never gets triggered.
No.
You can have illiquid markets where there's still a bid/ask, but little or no trading going on.
Stop orders (market orders) get hit when the market trades at the price where it's submitted. That's all there is to it.
If a player experiences that he's getting stopped out constantly, it's that player whose at fault for not playing well enough. It's most certainly not the market that's out to get him.