The following is a plot of a response (y) variable. It's a continuous variable (one month future returns on a set of stocks). I'm particularly interested in predicting the tails.
Many machine learning algorithms optimize on something like mean square error (mse). They equally weight the error of each observation. In this set of 2850 returns we care more the roughly 3-6% of the observations at the extremes than the others. Let’s say we are going to buy the 50 stocks with the highest predicted returns and short the 50 with the lowest. We really want these rankings to be correct. Yet most algorithms will care as much about the 95% as the 5%.
My main question/request is should this be treated as anomaly detection? And please point me to links or references to dealing with this sort of problem.
Here's what I'm hoping to learn. Is there a way to weight some observations more than others? Is there a way to create a custom cost function? I've heard of boosting. Is there a way to boost the model specifically at the extremes?