{"repo":"kanekoshoyu/exchange-collection","free":true,"listed":false,"github":"https://github.com/kanekoshoyu/exchange-collection","clone":"git clone https://github.com/kanekoshoyu/exchange-collection.git","description":"Collection of Crypto Exchange OpenAPI and Generated Clients","language":"Rust","stars":23,"topics":["api","crypto","trading","asyncapi","cross-platform","metaprogramming","openapi","swagger"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"exchange-collection list of machine-readable crypto exchange OpenAPI AsyncAPI documents and code generators. [!IMPORTANT] generated code is now ready at exchange-collection-rust why use OpenAPI AsyncAPI docs pain points in cross exchange trading Many trading strategies require cross exchange data and execution. There are trading libraries that provides abstraction across exchanges. library / framework multi-exchange primary language wrapper language ------------------------------------------------------ -------------- ---------------- ------------------- ccxt yes js python, php, csharp hummingbot yes python, cpp n/a openlimits yes rust python, js, go barter-rs yes rust n/a kelp yes go n/a These libraries are each good in their way but does not solve the below 4 points at once. 1. integration effort : N crypto exchanges, L programming languages, its a better when effort is N + L rather than N L 2. document consistecy and code maintenance : exchanges freqently update API. Without proper pipeline and versioning, code and API inconsistency is common 3. opinionated framework : battery-included cross-exchange libraries has complex design, and often fail to meet the actual needs in low latency 4. multi-language support : people use python for strategy proof of concept and rust for production. solution: building from bottom up by gathering OpenAPI / AsyncAPI docuements, we can build a CI pipeline that generate and test versioned clients for different languages solving the above issue","default_branch":null,"files":null,"tree":[],"storefront":"/r/kanekoshoyu","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/kanekoshoyu/exchange-collection/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}