Inspired by the amazing work of nitrous I will provide a tool (and the data) to download and update
the historical trade data of mtgox and other exchanges for a number of currencies like BTC/LTC and others in a standardized way.
The Toolbox Name is TradePickler
the toolbox will be composed of three parts :
- the data collector, what collects the data from variouse sources and uploads that data onto a number of hosts (google drive, skydrive, dropbox, cloudme, others ...)
You will not be in touch with that part, since that will be done on our servers.
- tradepickler-gobble : the downloader, it downloads junks of data to Your harddisk
It will be also perfectly possible to write Your own downloadtool since the dataformat will be fully documented,
but we dont recommend it - since the tool is written to perform the downloads keeping in mind very low API usage of the filehosters (not to get kicked out by them)
- tradepickler-transcribe : the export tool, that will export the downloaded data in a most flexible way to the users target dataformat or database.
You are welcome to contribute modules to the transcriber or write Your own implementation.
here the reasons why : - nitrous service require bigquery, what is slow and needs registration (a full download needs more then 24 hours on my state of the art machine on a 10Mbit connection)
- since the data is only growing there is no need to use bigdata
- I want to have a more robust, more distributed approach (i will upload the data to several filehosters)
- the bigquery database is not updated by mtgox until now, and no one will know if and when this is going to happen
- the bigquery database will just be updated my mtgox - but what about other exchanges like bitstamp ?
- providing a bullet proved and full automatic way to fetch and export all the tradedata You want, to any format or database You want
- TradePickler will not be limited only to BTC and MtGox.
what I love about nitrous downloadtool :- good interface to adress non techies
- good packing for windows and mac users
what I dont love about nitrous downloadtool :- no automatization for auto-update and so on ...
- no automatization for exports / updates to other dataformats. You can not save Your settings.
- rely on big query, rely on the updates from mtgox
here the concept : - trade data will be provided on filehosters (google drive, skydrive, dropbox, cloudme, others ...)
- no registration, free service
- updates every day (cold data) / and every 10 minutes (hot data)
- small footprint, redundant data is stripped (the full tradedata for all currencies from mtgox consumes about only 150MB on the harddisk)
- dont rely on uploads from MtGox - we collect the data ourself
- expandable to other currencies (litecoin) in the future
- expandable to other exchanges (like bitstamp and others) in the future
objectives : - robust and failsafe
- very easy setup and very easy to use on any platform (Linux/Windows/Mac)
- commandline interface, so can be easily used in batchjobs, shellscripts, macros, chronjobs to be able to automate the updates to your target database or dataformat
- settings stored into an easy, full documented ini file with lots of examples how to convert the data to the target You want.
- probably integration into nitrous downloadtool, be able to update his existing sqlite database
- written in python 2.7.x
- open source (GPL 3.0)
shortcomings : - I can not provide the App ID of the bidding/selling party (the person buying/selling BTC), since this is not covered in MtGox API
however, since only 4% of the trades until now have some App ID this should not a big deal.
what I have got now : - all the mtgox data is collected until now, as of 2013-08-27
- I am able to update the data in a 10 minutes timeframe without any problems
- the documentation of data structure for data- and metafiles
what I am working on now: - reorganize the data according to the dataformat designed
- automatic upload of the files to google drive for the first version.
todolist:- creating the download client (thats easy)
- creating the export tool (converting the data from my own proprietery format to any format You want), starting with csv export
- cross checking my data with nitrous database
timeframe:- since I can donate only a few hours a week to that project, things will wind up slowly
- I will set up a project on bitbucket when the time comes, any help is appreciated
what I need from You is some input:- please vote - are You interested in such a tool ? Is there any need for this tool ? vote here please :
https://bitcointalk.org/index.php?topic=282154.0- please vote - how often should the data be updated ? vote here please :
https://bitcointalk.org/index.php?topic=282246.0your comments are welcome