Saturday, May 5, 2018

A little too exciting in spots, but still 100% wins ... Also Kelly Criterion vs Monte Carlo

On Thursday a.m. early I thought the winning streak might come to an end:


But as you can see, the early morning a.m. plummet created a bounce up into the profitable zone ... I was short the 2610 strikes for Friday and it never got close again.

I am keeping track of the return I'm getting on this page, but I've been thinking about the limitations of the Kelly Criterion to use in evaluating trades.

The Kelly Criterion assumes that when you lose, you lose 100%. This is OK for some trades where this is in fact the case, or nearly so. But my widen the strikes revelation from 2 weeks ago made me realize that with this kind of trading there will be a spread of losses as wide as the wing width. Until I have a loss with this system (no hurry!) I don't even have a dot to put on that map.

But with a Monte Carlo simulation one can write a computer program to use the data that one has for this kind of loss, or just to program various kinds of reasonably expected loss instances.

I have been maintaining such a program for a while now; it runs 20000 simulations of a trade with various parameters (win rate & amount one up until recently) ... and now with a function I added failcalc() to estimate the spread of losses. Source code:

def failcalc():
    # 80% chance of getting the "notsobaddest" 20% of the spread
    spreadone = random.random()
    spreadtwo = random.random()
    if spreadone >= 0.8:
        loss = (1.0 - spreadone) * spreadtwo
    else:
        loss = spreadtwo

    return loss

That is, I assume that losses will be clustered 80% in the 20% smallest loss end of the spread's wing.

Other assumptions: 95% win rate, making 9.31% on every win, risking 15% of the account on every trade, 3 trades per week. Run is from now to the end of 2020.

The simulation using these assumptions gives this result, starting with $50000 today:

Minimum: $405740.16
Mean (average): $3,565,303.20
Maximum: $13,469,500.00
Standard Deviation: $1,584,992.10

Standard deviation is based on this curve:

The Standard Deviation symbol is the greek letter sigma ... basically the standard deviation shows the 68.2% chance of being that amount above or below the mean. So the most likely result (assuming the simulation parameters are correct!) is (roughly) between $2.0M and $5.0M ... 

Let's change the parameters back to a 5-wide wing. This would give a higher return (let's assume 13.5%) but much more likely to give a 100% loss (assume 80% of the time you have a 100% loss, with the rest randomly spread along the [tiny] width of the wing).

Results of this run:

Minimum: $144644.16
Mean (average): $9165858.0
Maximum: $109293100.0
Standard Deviation: $7361821.0

Clearly this one is much more volatile ... and subject to being much more likely to lose 2 in a row (which is not captured in the assumptions, I don't think.)

One think the Kelly Criterion can do is point us to the amount of risk we should be taking on every trade. Currently the Kelly is suggesting we risk 41.2% for the trades we have on our page ... 

Going back to the original run (wide wings, spread of losses wide again), but risking 20% on each trade, gives us:

Minimum: $897,867.06
Mean (average): $14,407,274.00
Maximum: $66,243,100.00
Standard Deviation: $8,207,564.00

So with this one I'm most likely to wind up with $6M to ... $22M ... anything in that range would be OK, really!

I'll be sorely tempted to start this in June, but I am going to stick with 15% risk per trade in May as previously I said ...

What will I do if there's no flaw in my analysis and I do wind up with $10M or so by the end of 2020? This, for sure:


... build a zero-energy house that my Lovely Wife will find acceptable ...

                                                   

No comments:

Post a Comment