At the end of the day even if have a plan, selling early would make everyone upset. If we bought at 7k and sold at 21k, that would be 3x return, but when we see price hitting 40k we will still be upset about it no matter what. So, that is why selling early regrets will happen no matter what. What we can do about it is, basically never sell until we want to get out completely.
I understand that many people do not get in crypto with huge sums, so they can't get retirement amount of money that easily, if you invested 100 dollars when bitcoin was 1000 dollars (5 years ago) and sold today at around 40 thousand dollars, you would have 4 thousand dollars right now. That is a 5 year wait on 40x return, and even though that is a great return, you are still not retiring with 4000 dollars. But if you keep investing and keep waiting you may end up retiring with it, and do not sell until that moment. After that, you are retired with a lot of money, doesn't matter if you missed more money.
This is why we need to learn to let go of our feelings when we are trading, it is obvious that in the scenario that you are giving a person is going to be mad by not being able to maximize their profits, but at the end of the day you got profits which is way better results than what most traders and investors are getting when they invest in bitcoin.
After all if you have more money than what you had at the beginning of a trade now you have more opportunities to keep multiplying that money regardless of whether the market keeps going up or not, that is way better than the alternative which is to have no money because you lost it all when you were trading and now you are unable to take advantage of the next movements of the market.