In trading there are these stop-loss and take-profit concepts. The former is a necessary pain, the latter is an unnecessary long-term pain, masked as a short-term joy.
A stop-loss is an order to sell if the price falls too far below compared to the price of purchase. This is to prevent losing too much in a single trade.
A take-profit is an order to sell if the price has risen to the point of considering the purchase a success and just get out of it.
However the price moves continuously and there's a high risk of missing more potential profit, simply because one has decided that a, for example, 3% is good enough for the day.
In trading more than anything, if you're not earning you're losing, to settle today for a limited profit means to have a negative balance a few months down the road. All missed profits add up and make a sensible difference on the long term balance of a fund.
One intuitive solution is that of using a take-profit and then make it follow with another buy once the price drops, so that one is still inside the trade, and now even with more assets/margin. The problem is that the price may as well just go up instead, and then one will be forced to buy again, but at a higher price, losing precious buying power. Then the price may eventually just drop anyway and force the trade into a loss.
Of course there may be cases where it makes sense to sell before what the main indicator may suggest... this however should be done under the reasonable expectation that price will drop indeed. Momentum of the market should be taken into consideration, instead of simply settling for a quantity of profit.
One way I do this is at known price levels (calculated by the concentration of past trading volume) that may be a point of resistance. Even then, it's very easy to stumble into false positives. I use this in my algorithms, but very sparsely.
It sometimes works, but only because there's indication that the price may indeed drop, not simply because there's a sense that x% ought to be good enough for now.
Above are two examples of selling at a significant level while expecting a rejection. This is more sophisticated than simply selling after a certain amount of profit, but it can still fail and have an adverse effect on the total balance. What happens when a level is reached could be a rejection as well as an upwards rally.