fabianboesiger / ftx

Licence: other
Unofficial Rust API bindings for the FTX exchange.

Programming Languages

rust
11053 projects
shell
77523 projects

Projects that are alternatives of or similar to ftx

Huobi java
Java SDK for Huobi Spot API
Stars: ✭ 180 (+56.52%)
Mutual labels:  exchange
Gbot Trader
Trading robot for trade on crypto exchanges
Stars: ✭ 222 (+93.04%)
Mutual labels:  exchange
python-api
Trading API for Quedex Bitcoin Derivatives Exchange.
Stars: ✭ 20 (-82.61%)
Mutual labels:  exchange
Ldaptools
LdapTools is a feature-rich LDAP library for PHP 5.6+.
Stars: ✭ 185 (+60.87%)
Mutual labels:  exchange
Ccxt Rest
Open Source Unified REST API of 100+ Crypto Exchange Sites (18k+ docker pulls) - https://ccxt-rest.io/
Stars: ✭ 210 (+82.61%)
Mutual labels:  exchange
Akash
a secure, transparent, and peer-to-peer cloud computing network
Stars: ✭ 229 (+99.13%)
Mutual labels:  exchange
Krypto Trading Bot
Self-hosted crypto trading bot (automated high frequency market making) written in C++
Stars: ✭ 2,589 (+2151.3%)
Mutual labels:  exchange
qluacpp
C++ interface for Quik trading terminal via lua bindings
Stars: ✭ 44 (-61.74%)
Mutual labels:  exchange
Protocol
Loopring Protocol Smart Contract on Ethereum
Stars: ✭ 220 (+91.3%)
Mutual labels:  exchange
Davmail
DavMail POP/IMAP/SMTP/Caldav/Carddav/LDAP Exchange and Office 365 Gateway - Synced with main subversion repository at
Stars: ✭ 250 (+117.39%)
Mutual labels:  exchange
Rabbitmq Consistent Hash Exchange
RabbitMQ Consistent Hash Exchange Type
Stars: ✭ 189 (+64.35%)
Mutual labels:  exchange
Cryptocompare
CryptoCompare JavaScript API
Stars: ✭ 212 (+84.35%)
Mutual labels:  exchange
Crypto Exchange
Pulls together list of crypto exchanges to interact with their API's in a uniform fashion.
Stars: ✭ 241 (+109.57%)
Mutual labels:  exchange
Opendax
Open-Source Cloud-Native Digital Asset & Cryptocurrency Exchange Platform
Stars: ✭ 183 (+59.13%)
Mutual labels:  exchange
huobi CSharp
CSharp SDK for Huobi Spot API
Stars: ✭ 47 (-59.13%)
Mutual labels:  exchange
Orderbook
Matching Engine for Limit Order Book in Golang
Stars: ✭ 181 (+57.39%)
Mutual labels:  exchange
Cryptotrader
A cryptocurrency trader for all famous exchanges
Stars: ✭ 228 (+98.26%)
Mutual labels:  exchange
mexbtcapi
The Multi-Exchange Bitcoin API offers a consistent high-level API across multiple bitcoin exchanges
Stars: ✭ 42 (-63.48%)
Mutual labels:  exchange
gromox
Groupware server backend for the grommunio Distribution, supporting MAPI/HTTP, RPC/HTTP, IMAP, POP3 protocols, PHP-MAPI bindings, and import from PST/OST/MSG/TNEF, EML/ICAL/VCF, KDB
Stars: ✭ 163 (+41.74%)
Mutual labels:  exchange
Coinapi Sdk
SDKs for CoinAPI
Stars: ✭ 238 (+106.96%)
Mutual labels:  exchange

⚠️ DO NOT TRADE VIA FTX: FTX has filed for Bankruptcy ⚠️

FTX API

Unofficial Rust API bindings for the FTX exchange.

crates.io | docs.rs | FTX API Documentation

Progress

Work in progress, contributions are welcome.

REST

  • Authentication
  • Subaccounts
    • Get all subaccounts
    • Create subaccount
    • Change subaccount name
    • Delete subaccount
    • Get subaccount balances
    • Transfer between subaccounts
  • Markets
    • Get markets
    • Get single market
    • Get orderbook
    • Get trades
    • Get historical prices
  • Futures
    • List all futures
    • Get future
    • Get future stats
    • Get funding rates
    • Get index weights
    • Get expired futures
    • Get historical index
  • Account
    • Get account information
    • Get positions
    • Change account leverage
  • Wallet
    • Get coins
    • Get balances
    • Get balances of all accounts
    • Get deposit address
    • Get deposit history
    • Get withdrawal history
    • Request withdrawal
    • Get airdrops
    • Get withdrawal fees
    • Get saved addresses
    • Create saved addresses
    • Delete saved addresses
  • Orders
    • Get open orders
    • Get order history
    • Get open trigger orders
    • Get trigger order triggers
    • Get trigger order history
    • Place order
    • Place trigger order
    • Modify order
    • Modify order by client ID
    • Modify trigger order
    • Get order status
    • Get order status by client ID
    • Cancel order
    • Cancel order by client ID
    • Cancel open trigger order
    • Cancel all orders
  • Fills
  • Funding Payments
  • Leveraged Tokens
  • Options
  • Staking
  • Convert
  • Spot Margin
    • Get lending history
    • Get borrow rates
    • Get lending rates
    • Get daily borrowed amounts
    • Get market info
    • Get my borrow history
    • Get my lending history
    • Get lending offers
    • Get lending info
    • Submit lending offer
  • NFTs
  • FTXPay

Websockets

  • Public Channels
    • Ticker
    • Markets
    • Trades
    • Orderbooks
      • Verify checksum
    • Grouped Orderbooks
  • Private Channels
    • Fills
    • Orders

Installation

The minimal supported Rust version is 1.54.

Add the following line to your Cargo.toml file:

ftx = "0.5"

Or for the latest github version:

ftx = { git = "https://github.com/fabianboesiger/ftx", branch = "main" }

Usage

Rate Limiting

Using the FTX API requires rate-limiting requests to no more than 30 requests per second in order to avoid HTTP 429 errors. You will need to rate-limit your own requests in your usage of this library.

See the FTX API Documentation

Pagination

If needed, you will need to paginate your own requests in your usage of this library. See the FTX API Documentation and sample Python code

REST Usage Examples

Websockets Usage Examples

  • Listen to latest Trades and Orderbook updates: examples/watch_market.rs
  • Subscribe and unsubscribe from Channels: ws::tests::subscribe_unsubscribe
  • Update an Orderbook: ws::tests::order_book_update
  • Verify OrderBook checksums: ws::tests::order_book_checksum
  • Use the Orderbook convenience methods: ws::tests::order_book_helpers
    • bid_price, ask_price, mid_price
    • best_bid, best_ask, best_bid_and_ask
    • quote
  • Listen for Fills: ws::tests::fills
  • Listen for Order updates: ws::tests::orders
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].