MtGox/API/Frameworks
This section of the wiki is heavily under construction so antipate that some functions and frameworks may not have complete documented examples!
Foreword
A list of some of the larger more commonly used FrameWorks used with the MtGox API
Definition of Terms
- Safety caching - This process means the framework will actively cache 'save' information from queries so to reduce the amount of 'outbound' http calls required to mtgox, this is highly recommended as some features such as 'fullDepth' and 'Trades' are limted on MtGox its self.
- Protocol: V0/V1 - Support for the MtGox HTTP protocol version 0 or version 1.
- Protocol: WebSocket - Support for the streaming websocket protocol.
- Adaptive caching - Allow the frameworks cache for trades and depth to be updated adaptively via the WebSocket stream.
- Non-Blocking - The framework uses a non blocking method of communication with the MtGox API, that is its possible to execute many simultaneous tasks in parallel. This is beneficial to large applications that may have to manage multiple trades very quickly.
- Object Orientated - The framework uses an object based programming style.
- Blocking - The framework uses a blocking style of communication with the MtGox API, this menas that for instance when you place an order you have to wait for the information to come back to you before you can proceed. This is often easier to use for small bots and tickers.
- Maintained - If the framework is knowingly maintained.
- COMPAT_Linux - The framework is compatible with: linux.
- COMPAT_WIN32 - The framework is compatible with: windows (32bit).
- COMPAT_WIN32 - The framework is compatible with: windows (64bit).
- COMPAT_BSD - The framework is compatible with: BSD.
- Language - The language the framework is based in and the minimum version required. (Example: Python32, Perl 5.10)
Frameworks
POE::Component::MtGox::Client
A perl based framework developed by Paul G Webster 'daemon' utilizing the non-blocking functions of POE, no large applications we know about yet use this, however it does implement some impressive features:
- Protocol: V1
- Protocol: WebSocket
- Safety caching
- Adaptive caching
- Non-Blocking
- Object Orientated
- Maintained
- COMPAT_Linux
- COMPAT_BSD
- Language: Perl 5.10+
POE::Component::MtGox::Server::SafetyNet
A pure adaptive cache for MtGox; that will automatically keep track of all the Trade Histories and Depth queries and serve them its self instead of querying MtGox, so if your client is a bit spam happy and keeps getting dropped by MtGox for spam protection; you can run your own safety net server to get around it. You may also want to run a SafetyNet server if you want to run PoCo-Client-MtGox on windows.
Finance::MtGox
The original perl based framework for MtGox, unrated.