Why not? There are the coders, and there are the traders. Coders are coding and traders are trading. Coders can sell. Besides, there are some profitable EAs which were uploaded for free (on this thread for example).
Members are having different forex specialization so I do not see any strange if some coder will sell profitable EA. Because trading is very hard job even if you will use EA, but selling is commercial activity.
Coders are having different "forex mentality" than traders. Because if coder is selling something so he will sell his product, or some version of his product. Coder can code for free just to promote his name and his skills, or for any other reason.
Traders are trading. If 'Trading for Living' so it is very hard job. Of course, every professional trader should understand mql4 and mql5 codes. But they will never be good coders by forex specialization for example.
can earn money from the market
No I don't think they sell profitable EA that cheap. It just does not make any sense, to sell something that makes money in exchange for some less money.
Looking at some of the EA's on offer that have made a profit, are unrealistic in losses, without going into to much detail, you have to look at an individual loss, yes you have to look at multiple too but the individual is the most important.
In any one loss it's no good if you can be wiped out so on a multiple scale its just not happening, however, multiple losses capped with a small loss building over time are not good either but at least you can evaluate as you go.
without being too much of a critic (who am I ?) but your trades are extreme in loss in accordance with your actual profit, if any one chance your trade closes out you will loose a large %age of what you make profit, I created a similar system, the trades would have a large draw down of funds until a profit was met, nothing short of tossing a coin and waiting, no offence intended but the graph looks great, just getting there is a journey in itself.