the time i hold a pennystock depends totally on who it looks TA-wise (TA = Technical Analysis).
if TA shows me it is having a great run i dont see a sign of turn i hold to make more profit. if TA shows it will go down, like breaking a supportline, i sell.
sometimes we hold stocks not more than 1 or 2 days, sometimes we hold em for a week or two. but rarely longer than that.
dont forget, most pennystocks are crapcompanies which we just trade, we dont invest

broker: i think zecco looks good, i use lowtrades.com, they are cheap but dont offer any real software.