Hi all,
This is a follow up to
that past announcementIntroductionAs some of you probably already know, our company develops a general purpose bot platform.
To illustrate its capabilities, we have developed market making bots with bindings to Mt Gox, TradeHill and now closed EchangeBitcoins APIs.
Their source code is publically available as an
open-source project on codeplex.
We also provide a free hosted version of those bots on
a demonstration websiteOn that website, you can register your own bot, configure
a bunch of parameters and the platform will start issuing orders to your configured account.
While developing those bots, I tried to keep them simple (as you may see from
the source code), while exposing many parameters for user customization.
We are now trying to figure out the best set of default parameters, which is what this competition is about.
In a distinct bounty, you will be invited to improve the bots themselves, but this one is about figuring out what best works with the existing capabilities.
Rules(Feel free to propose improvements for the time being, the final rules will be frozen before the competition starts)All participants are asked to register a bot on our
hosted platform and to reply to this thread stating the username of their account:
By November the 1st their bot will be monitored from our platform:
- the balance will be recorded
- the Exchange account password will be changed (to prevent any further manual intervention)
- the bot user account will be disabled (to protect the new password)
An announcement will be made in this thread, with a detailed list of participants, corresponding balances and parameters
On December the 1st their bot will be monitored again:
- The balance will be recorded again
- A csv export of the bot history will be saved
- The initial password will be restored on the exchange platform
- The bot account will be enabled again
An announcement will be made in this thread with the detailed results for each bot (new balance + link to the csv export)
The owner of the bot with the best profit will be rewarded with a prize of 50 btcs
ReflectionsFeel free to register several bots and try various configurations. Just be aware that the current 5 min schedule is to allow for the 50 currently hosted bots to issue/cancel many orders each in case of steep market moves.
If I have to increase that schedule because of the competition success, well fair enough you’ll have to take that into account. But if your bot stupidly issues/cancels so many orders that it slows down the whole platform by itself, I will have to disable it (that should probably be a rule, what do you guys suggest?)
I also highly recommend that you install the bot platform and experiment locally rather than directly on site. Also tell me if you need help with that.
There are broadly 2 kinds of parameters you can customize:
- The many percentages that define the market making trading band, and the way it updates as the market moves. I reckon they shouldn’t be too hard to understand as currently documented and/or by looking at the source code
- The pricer expressions, which are of a quite different nature, and may require an additional explanation: those are code expressions directly compiled into .Net Byte code through a dedicated open-source engine. What you need to know is the available set of variables by means of an ExpressionOwner of .Net type TradingContext and the fact that all functions from System.Math are available by means of Context Imports. If you mess up with an expression, we will get exceptions in the dnn event log while the bot attempts to run, but you'll only get to see that the bot doesn't work. Accordingly, you should definitely install the version on premises if you want to start playing with those fields.
I expect that with enough participants, the winner will demonstrate the appropriate customization for both kinds of parameters.
Be aware that the last couple of months have proved that it can be quite tricky to find a strategy that works on low as well as on high volatility. Hopefully you'll get to experiment both kinds of conditions before the competition starts.
Just a reminder to finish: This is about market making bots: they contribute liquidity to the market and make a profit by working against volatility but they will be outperformed by other kinds of predictive strategies.