3 people are following this blog

Volume betting

20 Mar 12 01:26
For this post I am going to turn my attention to volume betting. I will construct a simple decision algorithm to bet blinding on a range of markets.

Obviously this method has no 'edge'. In theory it should lose money on average roughly in-line with what is expected because of loss to commission. In other words, net profit (negative, because it will lose money) and commission paid should be roughly equal.

I will be using the football market to make bets. I will initially use it for shadow betting, not betting in the live market to make sure I have not made any coding mistakes, then I will later attempt to use it 'live'. My reasoning behind using the football market is two-fold. Firstly it is easy to understand, there aren't often complications such as a tie voiding a market (as in cricket), and secondly because football has a wide appeal, and is much followed.

OK, so first we must make some assumptions.

We assume that a market with little or no overround (a 100% market) is efficient (or fair).
Any event we are betting on isn't being unfairly manipulated.

Having dealt with those assumptions, we could make our selections in any way, and our expectation doesn't change. What we do have a choice over now is the variance. One classic way to minimise variance is 'back the favourite'. Crunchyfrog on the cricket forum does an excellent analysis of this kind of betting.

A way to maximise variance is to artificially increase it via the use of multiples or accumulator bets. This is often done by people who like to make small bets on the high-street. With enough selections it is effectively a better value lottery ticket. (Even at high street odds, multiples are better value than a lottery scratchcard!)

One appealing way to increase the variance over the 'back the favourite' case is to back randomly according to the odds themselves. Let us suppose the home team is 1.41. This represents an implied likelihood of 70%. We can construct a random algorithm that backs this 70% of the time, and lays it 30% of the time. In fact we can take the back/lay spread into account so that we take this into account.

So now we just need a formula that takes back odds, lay odds, and then outputs whether to back, lay or no bet.

Let BackD and LayD be the decimal odds.

We can now calculate BackC and LayC which are the percentage implied times of winning. Note that LayC < BackC because laying is always longer odds than backing.

So now we take Rand() which is random(0,1) and say IF(Rand()BackC) THEN LAY ELSE NO BET.

If this is too hard to follow here is a couple of examples.

Let's suppose the market is:

1.01 / 1.02

BackD = 1.01
LayD = 1.02
BackC = 0.99009901
LayC = 0.9803921569

So now we constuct a random number between 0 and 1. If this is less than 0.9804 we will back, if it is greater than 0.9901 we will lay, and the rest of the time, roughly 1% of the time, we won't make a net.

This is a weakness with this system, because in a 1.01/1.02 market it is very unlikely that either backing or laying is good value, but at least the bigger the spread the less likely we are to back.

The following R code will construct a function that takes in the back and lay odds and tells you whether to back, lay or no bet. Please note this function doesn't call a SEED so make sure your RNG is seeded first.

backbot<-function(back,lay){x1<-runif(1,0,1);cat(x1);if(x1<1/lay){cat("\tback\n")} else if(x1>1/back){cat("\tlay\n")} else { cat("\tno bet\n")}}
Rate post:
0 (0 Ratings)
Share |
No Comments [ 752 views ]

IPL4 bets update

27 Mar 11 17:11
In my last post I put up what I considered the fair prices for the teams in the upcoming IPL 2011 competition.

Based on those prices I then put this money into the market:

Team Offering Asking
RCB 6.4 7.8
CSK 6.8 8.6
MI 6.8 8.6
KKR 7.4 9
Pune 7.4 9
Deccan 8.8 11
Delhi 8.8 11
RR 11 14
Kochi 17 22
KXIP 44 55

So far I've not had too much interest in what are admittedly fairly wide spreads. I got my back on Pune matched early, which I'm happy about, but after a slow week I've now also had most my lays on the favourites matched too.

Most concerning I think is my lay of KKR at 7.4. I also don't like the feeling that I have liabilities against most the favourites and larger 'green' on the outsiders, even if I'm happy with the prices I've got.

This is what I've had matched so far:

Back Your Odds Your Stake Your Profit Info
Pune Warriors 9 £2.00 £16.00 Ref: 14085028087 Bet matched:07:49 22-Mar-11
Rajasthan Royals 14 £0.91 £11.83 Ref: 14085028088 Bet matched:08:19 27-Mar-11

Lay Backer's Odds Backer's Stake  Payout Liability Info
Royal Challengers Bangalore 6.4 £2.00 £10.80 Ref: 14085068975 Bet matched: 09:40 27-Mar-11
Mumbai Indians 6.8 £2.00 £11.60 Ref: 14085068973 Bet matched: 06:35 22-Mar-11
Kolkata Knight Riders 7.4 £2.00 £12.80 Ref: 14085068972 Bet matched: 10:08 27-Mar-11

This leaves my book looking like:

Chennai Super Kings £3.09
Royal Challengers Bangalore -£9.71
Mumbai Indians -£10.51
Kolkata Knight Riders -£11.71
Pune Warriors £21.09
Deccan Chargers £3.09
Delhi Daredevils £3.09
Rajasthan Royals £15.83
Kochi Tuskers Kerala £3.09
Kings XI Punjab £3.09

I'm hoping my instinct on Pune proves correct!
Rate post:
0 (0 Ratings)
Share |
1 Comments [ 325 views ]
My first impressions are the top4 will be 4 out of  RCB, MI, CSK, Pune, KKR.

There's a huge amount of talent in this IPL,  it's clear why they increased the number of teams.

From my memory of IPL3, bowling matters more than batting, as long as you have some people who can hold a bat. Remember Harby clubbing everyone for sixes at the death out of nowhere? At the end of the day a bowler can hit and giggle the bat balls and claim the 5wides as they fly past, but your mongoose wielding stars can't pick up a ball and bowl a maiden at the 19th.

This isn't to discount batsmen, they're certainly important. Strike rates and personality comes into T20, you don't have time to piss around. A lesson that hopefully certain players have learned.

CSK: Strong bowling attack, with capable batting to back it up, they have a good 6 hitters in Murali Vijay and Dwayne bravo. I have concerns this team could be a bit too inconsistent to go the distance though, I see a collapse in the semis for these guys.

Deccan: OK Christ these guys can really bowl. Rusty had a rubbish IPL last time around, but if he's firing properly this time around the bowling attack here could be inpenetrable. If he's the same as last time though that's a huge liability, but when you've got Mishra, Ojha, Steyn bowling half your overs, you might not even need to bowl him. Batting, there's not a huge amount there, but we might see some people come up unexpectedly here. I've got a feeling Lumb might smash this IPL up.

Delhi: Sehwag was actually the tidiest bowler in IPL3 (by economy), but overall his other performances didn't make up for that. The rest of the squad is ok but the international picks are firmly average. Roelof van der Merve is the player to watch in this team I think.

KXIP: Poor Broad! I'm not sure how to price this team up since there seem to be a lack of cricketers listed? Looks like half a squad. KXIP likely will play that way anyway.

Kochi: I was hoping the new teams would be great, but seeing Sreesanth listed makes me cry. Perhaps they didn't watch IPL3? 19-0-191-3-63.67-10.05-38.00
That's 19 overs, 3 wickets for 191 runs! Avg of 64 for an economy just over 10.
The rest of the squad? Jayawardene was great last time around, but hasn't really been on form so far in the WC. Muralitharan, VVS Laxman, the names are there but not in depth. This team isn't rounded enough to survive a 10 team round robin.

KKR: This is the most interesting squad. Hopefully Kallis will realise he needs to work on his strike rate in T20, and that team wins are more important than 100/no off 120 balls ;) Having said that, this is a team that's gone for batting power and the bowling is a concern. I had to google James Pattinson. He's played just 10 T20 matches.

MI: Sachin! Harby! KP! Malinga! These are the players that made them favourites last time around, and surely they'll be up there again. Symonds is a good addition to the team and I'll admit that my research is getting thinner as the post goes on.

RR: I was hoping that read Shane Warne (retained), Shane Watson (retired), but alas no such luck. Well with 8 players listed there, I'm not sure they can even field a team, I'll leave pricing this one too harshly but they're not making the cut-off this time around unless they announce the rest of their squad . Botha, Colly, TAIT??? These guys are favourites for the wooden spoon. FIIIILTH.

RCB: R! C! B! These guys should have won it last year, but had some players with some real sucky attitude to the game of T20. Zaheer Kahn is one of the best bowlers in the game right now and can win matches on his own.

Pune: A nicely balanced squad that can do damage with bat and ball.

Right, prices time!

I was going to assign points to each player, then run it through a program to run monte carlo simulations of batting and bowling on each of the pitches in the IPL (home grounds make a difference) then run the whole league simulated 100000 times to produce a decent set of statistics of what could happen, but instead I'm going to go with GUT FEELING.

RCB 7.1
CSK 7.7
MI 7.7
KKR 8.25
Pune 8.25
Deccan 9.9
Delhi 9.9
RR 12.375
Kochi 19.8
KXIP 49.5

Rate post:
0 (0 Ratings)
Share |
No Comments [ 306 views ]