MtGox/API/Frameworks: Difference between revisions

From Bitcoin Wiki
Jump to navigation Jump to search
PaulGWebster (talk | contribs)
m blah
PaulGWebster (talk | contribs)
m Re Updated
Line 6: Line 6:
== Definition of Terms ==
== 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.
* 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.
* 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.
* Object Orientated - The framework uses an object based programming style.
Line 11: Line 14:
* Maintained - If the framework is knowingly maintained.
* Maintained - If the framework is knowingly maintained.
* COMPAT_Linux/COMPAT_WIN32/COMPAT_WIN32/COMPAT_BSD - The framework is compatible with: linux, windows (32bit), windows (64bit) or BSD.
* COMPAT_Linux/COMPAT_WIN32/COMPAT_WIN32/COMPAT_BSD - The framework is compatible with: linux, windows (32bit), windows (64bit) or BSD.




Line 18: Line 22:
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:
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  
* Safety caching  
* Adaptive caching
* Non-Blocking
* Non-Blocking
* Object Orientated
* Object Orientated

Revision as of 11:15, 11 October 2012

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/COMPAT_WIN32/COMPAT_WIN32/COMPAT_BSD - The framework is compatible with: linux, windows (32bit), windows (64bit) or BSD.


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


POE::Component::MtGox::Client::SafetyNet

A proposed extension to PoCo::MtGox that allows the same functionality, but will work on the windows architecture by offsetting processing to a linux or BSD mid-way server. There are security implications with doing this however; the BSD/Linux mid server will have to know your private key/secret, it would be advised that you run your own Mid-Level server on your own for all your windows machines unless you really trust the SafetyNet provider.


Finance::MtGox

The original perl based framework for MtGox, unrated.

Add more