My two cents on this… I rarely enter a trade with a predetermined length of time that I will stay with it. If the price action indicates I can stay with it and am comfortable holding over a period of time, i.e. a few days, then I hold on. If the price action gives me reason to lack confidence, I take profits, whether it be after a few hours, a day, or whatever.
But the way I trade, I really don't pay any attention to the news. I trade primarily continuations, and reversals. The daily, 4 hour and 1 hour charts all have to agree in one way or another.
I find the news usually just causes a spike or dip, then the price just goes back to what it was doing before the news came out.
So, basically, if you are basing your trades on H1 time frame and higher, the news shouldn't really matter too much, in my opinion. Over the past several weeks, I was only stopped out once or twice because of news spike, then I just waited till it settled down, then jumped back in - in the same direction as I was in before the news, and ended up making up the loss, and additional profits.
I average about 20-30 trades per week. So, only getting stopped out a couple times over past 6 weeks or so, I think speaks to the relatively non affect of the news when trading H1 and above time frames. One key is to set your stop loss appropriately. If you are trading a very volatile pair, then you have to have a larger SL.
The other keys are timing and entry point. I typically enter the market very close to strong support/resistance areas. But regardless of how close my trade is to the support/resistance, I trade away from these areas. So If the support/resistance is strong enough, even a news announcement probably won't pierce it.
Another point that is related is that many make the mistake (in my opinion) of setting their stop loss according to the last swing high/low indiscriminately. This may or may not be good. Was the last swing high/low near enough to any critical support/resistance level? If it was not near enough to any critical support/resistance level, then it may not hold as support or resistance for your SL. Very likely any spike would take out that SL, and head for the stronger support/resistance level before it bounces…
Hope this helps.