Skip to main content

Python FTX API Sample Code

License python-ftx-api Version python-ftx-api Python Versions python-ftx-api Downloads Per Day python-ftx-api Downloads Per Week python-ftx-api Downloads Per Month

FTX is a cryptocurrency derivatives exchange.

This is a wrapper around the FTX API as described on FTX, including all features the API provides using clear and readable objects, both for the REST as the websocket API.

An unofficial Python3 library to interact with FTX.COM and FTX.US.

I am in no way affiliated with FTX, use at your own risk.

If you think something is broken, something is missing or have any questions, please open an Issue

Get Started and Documentation

If you're new to FTX, use the following link to save 5% on all of your trade fees.

Install

pip install python-ftx-api

Usage

If you are using an exchange from the US, or other TLD then make sure pass tld='us' when creating the client. Default tld='com'

Change your API KEY and your SECRET KEY.

Restful Api Sample Code

from pyftx import Client

API = "your-api-key"
SECRET = "your-secret-key"
subaccount_name = "your-subaccount_name"

client = Client(API, SECRET, subaccount=subaccount_name)
info = client.get_markets()
print(info)

Websocket Sample Code

from pyftx import ThreadedWebsocketManager


def on_read(event):
    print(event)


API = "your-api-key"
SECRET = "your-secret-key"
subaccount_name = "your-subaccount_name"

wsm = ThreadedWebsocketManager(API, SECRET, subaccount=subaccount_name)
wsm.start()

# Un-auth subscribe - Public Channels
name = 'market_connection'
wsm.start_socket(on_read, socket_name=name)
wsm.subscribe(name, channel="ticker", op="subscribe", market="ETH-PERP")

# Auth subscribe - [filled](https://docs.ftx.com/#fills-2)
name = 'private_connection'
wsm.start_socket(on_read, socket_name=name)
wsm.login(socket_name=name)
wsm.subscribe(
    name,
    channel="fills",
    op="subscribe",
)

# Auth subscribe -[orders](https://docs.ftx.com/#orders-2)
ws_type = 'private_connection'
wsm.start_socket(on_read, socket_name=ws_type)
wsm.login(socket_name=ws_type)
wsm.subscribe(
    ws_type,
    channel="orders",
    op="subscribe",
)

Websocket with arguments

from pyftx import ThreadedWebsocketManager
from functools import partial

API = "your-api-key"
SECRET = "your-secret-key"
subaccount_name = "your-subaccount_name"

def on_message(event, argument):
    msg = "{}.event: {}".format(argument, event)
    print("on message: ", msg)
wsm = ThreadedWebsocketManager(API, SECRET, subaccount=subaccount_name)
wsm.start()
# Un-auth subscribe - Public Channels
subaccount_name = "Cuongitl"
callback_with_arguments = partial(on_message, argument=subaccount_name)
name = 'market_connection'
wsm.start_socket(callback_with_arguments, socket_name=name)
wsm.subscribe(name, channel="ticker", op="subscribe", market="ETH-PERP")

Donate / Sponsor

I develop and maintain this package on my own for free in my spare time. Donations are greatly appreciated. If you prefer to donate any other currency please contact me.

  • BTC: 3LrqgdMbToh1mAD3sjhbv3oaEppXY7hkae

  • BTC: 0x329a9F2b01aDA25F15eAE4C633d3bed8442c7BC6 (BSC)

  • USDT: 0x329a9F2b01aDA25F15eAE4C633d3bed8442c7BC6 (BSC)

  • FTT: 0x329a9F2b01aDA25F15eAE4C633d3bed8442c7BC6 (ERC-20)

Communities

Release Notes

The release notes can be found here.

Metadata

Release files for python-ftx-api 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for python-ftx-api 0.0.6
File Size Uploaded
python-ftx-api-0.0.6.tar.gz 13.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for python-ftx-api 0.0.6
File Interpreter ABI Platform
python_ftx_api-0.0.6-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 25.7 kB

Release files / python-ftx-api-0.0.6.tar.gz

Download URL python-ftx-api-0.0.6.tar.gz
Size 13.0 kB
Tags Source
SHA-256 checksum
How to use checksums
7c3444a9a97cd229e8bf94b50c294e5b66bb83b2b76e325167b11c2200188e59
BLAKE2b-256 checksum
How to use checksums
1be132d44948736fc0cc906899b3bf92f181e0f6c1369be3d2c9fa5c415c1819
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.13

Release files / python_ftx_api-0.0.6-py2.py3-none-any.whl

Download URL python_ftx_api-0.0.6-py2.py3-none-any.whl
Size 12.8 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
ce1f39b4a7677a3ed13aad05df4b84a47357fbcfede3046174c17f94291d6187
BLAKE2b-256 checksum
How to use checksums
5b9ff8694d4bdfce53b2952b38004e869e284cf53643f3b58d0e20cb11f58f36
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.0 CPython/3.9.13

Release history Release notifications | RSS feed

This release

0.0.6 This release

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.2

1 release file

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page