From what I see, you have a very good EA, the draw-down is reasonable. There's simply no need to tamper with it.
Personally I do not rely on back-tests, it isn't a true reflection of an EA's potential (my opinion).
If I were you, I would forward test it for a given time or number of trades and then check the results again.
Again I will say, if it's not broken (it looks very good) - don't try to 'fix' it. Over optimizing might end-up spoiling a good EA.

).
Obviously not, I did not include the rest of the code, because all I am interested in, is the trailing part (i.e after a buy or sell: how does the trailing option I used compare with the comments I made?, will it perform exactly as I described in the post?)