It should be possible. So you have to compute the average profit on winning trades and the average profit on losing trades, then just divide them and use record(). I'm not totally familiar with realized profit/loss, but Quantopian has already taken commission into account on trades so I think profit/loss here is automatically realized profit/loss, but I could be wrong. Anyway, your process order should be something like this:
- Detect when a trade begins and store the starting price.
- Detect when a trade ends, and calculate either the gain or loss. Maybe have two lists, one with gains and one with losses that you append results of each trade to.
- With those lists you can calculate p/l.
With multiple stocks it gets more complicated, but it can still be done with two dimensional lists, etc. I suggest looking into either deques or Quantopian's batch_transform to work with data more easily.
Does that help? Let me know if you have any more questions.