An overactive thyroid can cause you not to gain weight as can alot of other things, like stress (this can cause you to burn calories) also irritable bowel syndrome & other simial things can cause you to not metabolise the nutrients etc in your food.
You need to get your thyroid checked also your serotonin levels (if these are high (i think that's right) it shows you're overstressed & your body hs stopped producing 5htp from tryptophan (you can buy 5htp - 50 mg pd to start). Dhea may also put on weight. You can look these things up on a search engine try tryptophan, 5htp, dhea & also try asking for causes of weight loss or conditions that prevent weight gain etc.
If oyu're not getting periods you should also have your hormone levels checked.