I don't consider myself to be a short term investor - I typically buy something with a 1-3 year mindset, after I've looked at it and decided it is undervalued. However, I have sold a couple of purchases in the past within a year, after it went down still further, and I decided chances of recovery were low.
That said, if something goes up 40% or more, I start to get a little nervous. I usually only hold out for a 20% to 30% return before selling. However, BP seemed horrifically oversold/undervalued. Trouble is, I can't seem to find anything else that undervalued to replace it with at this point.