About The Man AHL Coder Prize
Congratulations to everyone that submitted a HiveMinder algorithm – we are no longer accepting submissions. The winners of the competition have now been announced!
This year the competition was targeted exclusively at students aged 16-25, and we were delighted to include participants from the EU* and Switzerland. On the 10th February 2017 the top 7 entrants were invited to attend the finalist’s ‘Code Off’ at the Man AHL office in the City of London.
- 1st Place £5,000: Matthew Ridley from the University of Oxford
- 2nd Place £2,000: Junjin Chen from the University of Sheffield
- 3rd Place £1,000: Eddie Rolls from the University of Oxford
Further congratulations to Ethan Wood from Haberdashers’ Aske’s School for Boys for winning the £1,000 prize for the top performing under 18 year old.
* Excluding Italy: Unfortunately, due to specific legal restrictions regarding competitions run in Italy, the Man AHL Coder Prize cannot accept entries from contestants resident in Italy.
Keep up to date with the competition on FB, Twitter and Instagram:
Finals day in motion and pictures
Download the code bundle
The code bundle can be downloaded: HERE
We recommend you use PythonAnywhere as your IDE, but this isn't compulsory. The code bundle contains everything necessary to run the web app, and includes a section for you to write your algorithm.
Check out our tutorial videos for a step-by-step guide to getting started.
For a step-by-step guide, from downloading the code right through to debugging, watch these tutorial videos. If you already have some coding experience and want to get stuck in straight away, take a look at our quick-start instructions.
Watch our tutorial videos for a step-by-step guide to getting started right through to debugging. For a briefer overview follow the instructions below:
We recommend using PythonAnywhere as your development environment, but this isn’t compulsory. Create a free PythonAnywhere account here.
Log in to your account and navigate to ‘Consoles’ > ‘Start a new console’ > ‘Bash’ to start a new Bash terminal.
- Code Bundle
Download and unzip the code bundle with the commands:
- Web App
Under the ‘Web’ tab, click ‘add new web app’ > ‘next’. Choose the Flask framework and Python 3.4. Change the ‘mysite’ section of the path to ‘hiveminder’ and click ‘next’. Return to your Bash terminal, navigate to the
hiveminderdirectory by typing
cd hiveminder, and copy the file
uwsgi.pyover the file
cp uwsgi.py flask_app.py. Reload the web app tab.
- Run the Game
To run the game in your browser, from your bash terminal run:
python game.pyIn some environments, from pycharm for example, running
python game.pyisn't sufficient. The browser hangs or doesn't refresh enough to display properly. In this case you can run inside gunicorn on the command line with:
pip install gunicorn
gunicorn -b 0.0.0.0:5000 uwsgi:app hiveminder/game.py
- Write your Algorithm
Every file in the
hiveminder/algosdirectory represents a computerised player. Move to the
algosfolder by typing
cd algos, then make a copy of one of the example algorithms and give it a new file name by typing:
cp template_algo.py my_algo.py. Return to your PythonAnywhere account screen, click on the Files tab, and navigate through to
hiveminder/algos. Clicking on the
my_algo.pylink will open this file in a text editor. Change the name and description to something new, and you can begin writing your own implementation underneath the docstring.
- Simulate the competition
If you have more than one algorithm, you will want to ensure your best algorithm is counted in the competition by submitting it last. Only the final entry from each participant will be considered. You can also check that you are beating our example algorithms. Running the script
python3 simulate.pywhile in the
hiveminderdirectory will take all of the stored algorithmic players and compete them against each other.
How to learn Python
- We have created some coding exercises, which should provide a good introduction. They are available from our GitHub page.
- Why not try out the Python 3.4 tutorials?
- Online resources such as codecademy offer tutorials and introductory projects of varying complexity. Why not spend 30 minutes building a model Solar System for yourself?
- Have a go at last year’s Man AHL Coder Prize game
About Man AHL
At Man AHL, Technology drives everything we do.
- We mix mathematics, computer science, and terabytes of data with the aim to understand and forecast financial markets
- We are technology-led, building models and writing programs that invest billions of dollars every day
- We are excited about clean code, good automated tests, code reviews, cutting-edge tech (Python, MongoDB, Kafka, pandas, Docker, OpenStack, git), and open source software (e.g. see our tickstore)
Working at Man AHL
- We are a dynamic group of highly qualified specialists with a diverse range of professional backgrounds, including mathematics, science, engineering and finance
- We foster unconventional and unconstrained thinking through a collaborative, fun learning environment
- We are a small flat-structured company with a no-attitude feel
Bet you didn't know
- Our technologists have varied backgrounds including disciplines you might expect such as computer science, mathematics and engineering, and those you might not, such as philosophy and classics
- 80% of AHL employees code in Python
- Our high-frequency tick data can reach > 1 billion messages/day
- We are winners of a 2015 MongoDB Innovation Award* for our fast tick store
- We’re keen open source contributors, with AHL code running in PyDev, NumPy, Pandas, MDF, MockExtra and Arctic
- We have a team away-day each year where we sail yachts, ride RIBs, fly drones and generally have fun
* Awards and/or ratings are for information purposes only and should not be construed as an endorsement of any Man Group company nor of their products or services. Please refer to the websites of the sponsors/issuers for information regarding the criteria on which the awards/ratings are determined.