I have more than 5 questions record and running this query on my id (in Unix) says that I have well over 0.5 of "positive question record". But the badge has not been awarded anyway.
What am I missing ?
I believe you're missing the deleted questions.
(total questions - negative questions - closed - deleted)/total questions >= 0.5
and plugged in your numbers (according to my interpretation, which counted duplicates as also being closed) and came up with a number less than 0.5. I based my "duplicate" decision on Jon Ericson's comment:
@PRY: I considered making an exception for duplicate questions, but decided that worked against the spirit of the badges. Duplicates sometimes help people find the information they are looking for, but the goal of the badge is to encourage new questions.
I think that badges are awarded on a daily basis, so if my assumptions are wrong, it's also possible that you simply need to wait 24 hours for the next cycle.
Forgot to mention: the query in SEDE may have misled you because it doesn't include deleted posts (e.g. questions), thus hiding some of the factors in the calculation.