It depends how you bot that determines your detection rate. If you bot on less crowded areas, get bots with antibans, schedule breaks often & dont have a flagged ip you are safer & less prone to be caught & banned.
As for how long you can bot without getting caught, if you are training a personal account, your combined botting+playing time shouldn't exceed 8 hours a day
For botting, I choose RiD because they're generally the best, never let me down before. Only advantage is that performance costs, so you'll have to pay.