The F# Poker Hand Analysis code I'd written about in previous posts is now public on GitHub. I tidied it up slightly and put it up so that A) I don't lose it, because I thought it was interesting work and B) So that perhaps I can come back to it now and again, which is much easier when it's not lurking on a USB stick at the bottom of my bag. It's functionality includes:
- Reads in files containing hand histories and parses them form the perspective of the user.
- The information stored is complete, detailing every action made by each player.
- Unit tested extensively using existing and real hand history files.
- Can calculate a players 'VPIP' (voluntarily put in pot, % of times the player willingly engages in action) over a provided data set.
It's implemented with F#'s native functional features and as such lends itself well to concurrency. I'm hoping to continue by calculating players hand ranges, but if not I have some ideas about similar work in the domain.
The project exists here: https://github.com/bretcolloff/PokerHandAnalysis