what method for thresholding?
I guess you had some misunderstandings. 

First, strong edges correspond to wavelet coefficients with large magnitudes in high pass bands. Thus, instead of keeping small coefficients, you should keep large coefficients. 

Secondly, in a high pass band, there should be a large number of coefficients with magnitude close to zero. This means edge pixels would almost impossible account for more than 50% of all pixels. Thus, the usage of 50% in your assumption is also doubtful. 

Finally, the difficulty of edge detection often lies in differentiating weak edges from noise, but not the detection of strong edges. 

I suggest to you to take look at the MATLAB source code of Canny Edge Detector, whose parameter adaption part ( when you do not provide the two canny thresholds to matlab ) might give you some thoughts on to automatically pick some good thresholds. Its idea is based on examining the edge histogram and determines threhsolds according to this distribution dynamically.