Optimising returns weighted by Sharpe ratio in the context of Supervised Learning

In the Kaggle Jane Street market prediction competition we are put in a Supervised Learning Framework to deal with 'trade opportunities'. That is, we are given instances of previous trade opportunities with associated (anonymised) features, a 'weight' for the trade and a realisation ('resp') that can take negative values. We will be given other trade opportunities with associated features and weights and we have to determine a binary outcome for each trade : take action or pass.

The goal is to optimise an utility function that is the sum of profit, weighted by a clipped Sharpe ratio.

More formally, we need to optimise on a test set :

$$u = min(max(t,0),6) \Sigma p_i$$

Where :

$$p_i = \sum_j action_{i,j} * weight_{i,j} * resp_{i,j}$$

And :

$$t = \frac{\Sigma p_i}{\sqrt{\Sigma p_i^2}} * \sqrt{\frac{250}{|i|}}$$

( $$|i|$$ being the number of day in the test set.)

From publicly available ressources, most people have taken a purely statistical learning path. That is : determining a binary target by taking 'resp' above 0 (profitable trade) and using pretty standard classifiers to predict that outcome and output a binary action, without even acknowledging the sharpe ratio ponderation. Some people started to take the ponderation into account by using a higher threshold for accepting a trade, but that's it.

I am trying to bridge the gap between this ML formulation and my (old) background in quantitative Finance.

I have considered three different routes :

• Keeping a simple binary target and an associated loss that doesn't take into account the sharpe ponderation, then somehow build 'portfolios' and an optimal risk frontier that would allow me to take trade that are near it.

• Keeping a simple binary target but integrating the utility function as an optimisation target. I am not even sure this could unfold as most optimizer seems to rely on gradient / hessian.

• Redesigning a target that would take into account that ponderation. However that appears difficult as most features are anonymised, so that I can't really identify some measure of variance at an individual trade level.

Are there any ressources to deal with such a formulation of a trading problem ?