This is an unofficial Python wrapper for the OKX exchange v5 API
If you came here looking to purchase cryptocurrencies from the OKX exchange, please go here.
https://github.com/okxapi/python-okx
- Spot trading: https://www.okx.com/learn/spot-trading-with-jupyter-notebook
- Derivative trading: https://www.okx.com/learn/derivatives-trading-with-jupyter-notebook
Make sure you update often and check the Changelog for new features and bug fixes.
- Implementation of all Rest API endpoints.
- Private and Public Websocket implementation
- Testnet support
- Websocket handling with reconnection and multiplexed connections
python version:>=3.9
WebSocketAPI: websockets package advise version 6.0
- Register for an account: https://www.okx.com/account/register
- Apply for an API key: https://www.okx.com/account/users/myApi
pip install python-okx
- Fill in API credentials in the corresponding examples
api_key = ""
secret_key = ""
passphrase = ""
- RestAPI
- For spot trading: run example/get_started_en.ipynb
- For derivative trading: run example/trade_derivatives_en.ipynb
- Tweak the value of the parameter
flag
(live trading: 0, demo trading: 1 ) to switch between live and demo trading environment
- WebSocketAPI
- Run test/WsPrivateTest.py for private websocket channels
- Run test/WsPublicTest.py for public websocket channels
- Use different URLs for different environment
- Live trading URLs: https://www.okx.com/docs-v5/en/#overview-production-trading-services
- Demo trading URLs: https://www.okx.com/docs-v5/en/#overview-demo-trading-services
Note
-
To learn more about OKX API, visit official OKX API documentation
-
If you face any questions when using
WebSocketAPI
,you can consult the following links-
asyncio
、websockets
document/github
:https://docs.python.org/3/library/asyncio-dev.html https://websockets.readthedocs.io/en/stable/intro.html https://github.com/aaugustin/websockets
-
About
code=1006
:https://github.com/Rapptz/discord.py/issues/1996 https://github.com/aaugustin/websockets/issues/587
-
- 改动 支持传proxies参数
proxies = {
"http://": "socks5://127.0.0.1:10800",
"https://": "socks5://127.0.0.1:10800"
}
OKX_CLIENT.Client(api_key=api_key, api_secret_key=secret_key, passphrase=passphrase,
use_server_time=False, flag=flag, base_api="https://aws.okx.com", debug=False, proxies=proxies)