# How would you frame this as a machine learning problem?

I have a trading software that buys and sells loans. There's an auction site where borrowers ask for some money and lenders bid on them until the borrower is fully funded and the auction ends. There's lots of information on each loan request. My trading bot always bids at the highest possible interest rate, if it is outbid, then it just re-bids slightly lower. Once I win the loan parts, I can sell them at a markup. Right now, I sell at the minimum markup, so that with fees I barely make a profit.

What I'm not sure is what markup I should sell? The lower the markup the faster my loan parts sell, but I will get less profit too. On what loans should I bid? Should I bid on a loan auction with a higher interest rate, but which is not going to end for several days, thereby leaving my money stale, or should I bid on an auction with a lower interest rate, but which is going to end very soon. Sometimes in the former case, the borrower might decide to take the loan and not wait until the end of the auction, thereby I could secure a better interest rate than just bidding on the loan auction due to end soon.

I was thinking of framing this problem as reinforcement learning, but I'm not sure how to do it. My goal is to maximiz the profit I make from trading loans. Any ideas?

As the user above points out, this is not simply an issue of choosing a machine learning method and letting it go wild on the data. Particularly, the introduction of decision theory (even in a basic form) is vital. While the inclusion of something like "decision theory" might seem a bit complex, this really only means in your case that you are not simply estimating a quantity and figuring out if you are right; that is, not every wrong solution is "equally wrong", in the sense that you'll need to take into account your profit and your funds left in reserve.

A general approach is difficult to recommend without intimate knowledge of the data. However, it sounds like you'll need to formalize the aspects of your model. Think about the following questions as you decide on your model:

1. What is the quantity I am trying to predict? (In this case, it sounds like you are looking for the particular markup at which you should sell, and/or the price at which to buy so that a profit can be made, which is just as much optimization as it is machine learning).
2. What examples can I use to train my model, and what are my inputs? What market factors can I train my model with to predict the quantities in (1)?

As a final point, it is really quite unlikely that reinforcement learning is the approach you'll want to take in this case. Reinforcement learning is quite powerful in certain situations, but is somewhat unpredictable (depending on the particular formulation), and tends to make an awful lot of errors before it gets anything right (something that likely is not an option when there is money on the line). As I said, try to figure out which quantities you want to estimate, then figure out what market factors might affect those quantities.

Your problem would seem to be much more than a Machine Learning exercise which is primarily concerned with building a model (supervised or unsupervised) for your data. The issues you are exploring would appear to need Game Theory, and Decision Theory.

• That's true, I'm still at the problem definition stage. You have any ideas? I was thinking of Markov Decision Process, but I mostly have background in regression, so not sure. – siamii Aug 16 '13 at 16:12

This looks like a very exciting problem to solve. but, i think there are too many problems you can solve. so, the first step is to fix on one or two key problems.

and, then determine the factors which will be essential to solve that problem.

i don't think we should talk about any model till then.