Asked on 13 May 2020
Hello there! When you make an investment, I believe there should an investment objective in mind. One of the possible investment objectives could be to make down payment of a house where you invest in x company so that you can have y return in 5-10 years. When your investment objective has been met, I would say it could be time for you to sell. To be very honest, it is really difficult to know for sure one is a "good company" given that things might be different 10, 20 years down the road.
Holding on to a stock long term, yes, but not forever. As decades pass, norms/cultures/habits/technology will change and that will impact the industry and the markets. It is also likely more competitors will emerge as time goes.
Keep holding onto the stock until fundamentals change or better competitors available.