Dynamic TP
One possible way to protect your account from big loss is through dynamic TP (of course, this is not the Holy Grail). One of the simplest ways is to correlate TP with the number of open positions. The more open positions, the smaller the average TP should be. In extreme cases, when 5, 6 positions are open, the TP should also be negative. Maybe by this quadratic equation:
TP = BasicTP * (extern int Optimized number of Orders-OrdersTotal) * OrdersTotal / 3
Something is wrong in your formula, but idea is clear.
Let's reduce TP after each deal by some value (input parameter) and also change this value by some coefficient (another parameter).
For example, with TP = 50, ReduceTP = 10 and ReduceCoeff = 1.1:
For 1 deal TP will be = 50
For 2 deals: 50 -10 = 40
For 3 deals: 50 - 10*2*1.1 = 28
For 4 deals: 50 - 10*3*1.1*1.1 = 13.7
For 5 deals: 50 - 10*4*1.1*1.1*1.1 = -3.24
And so on. What do you think?