your formula will overvalue power guys who walk a lot, but will undermine the Tony-Gwynn/Wade-Boggs type.
Basically, in your formula, a single = a walk (bad).
Also 1 HR+ 3 outs = 4 singles (really bad)
I would at least add hits in the left part of your formula, and then multiply BB by 1.5 (only in the left side of your formula)
hits+TB+1.5*BB+1.5*HBP+...
That being said, a very, very good formula, and simple, is to calculate:
1.2*onbase + slugging.