Skip to content

Commit e707698

Browse files
authored
Merge pull request #381 from binance/modularize_connectors
2 parents c130461 + c3d7998 commit e707698

File tree

3,156 files changed

+4512
-4997
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

3,156 files changed

+4512
-4997
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
build
22
dist
3-
binance_connector.egg-info/
3+
44
__pycache__
55
*.pyc
66
.tox

MIGRATION.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ With the move towards modularization, Binance connectors are now split into smal
66

77
| Feature | Monolithic Connector | Modular Connector |
88
|---------|----------------------|------------------|
9-
| Package Name | `binance-connector` | `binance-<product>` |
9+
| Package Name | `binance-connector` | `binance-sdk-<product>` |
1010
| API Coverage | All Binance APIs | Individual APIs (Spot, Wallet, Algo Trading, Mining, etc.) |
1111
| Imports | Single package import | Separate package per product |
1212
| Code Structure | One large client | Smaller, focused clients |
@@ -26,13 +26,13 @@ pip uninstall binance-connector
2626
Install only the connector(s) you need. For example, to install the Spot Trading connector:
2727

2828
```bash
29-
pip install binance-spot
29+
pip install binance-sdk-spot
3030
```
3131

3232
To install multiple connectors:
3333

3434
```bash
35-
pip install binance-spot binance-margin-trading binance-wallet
35+
pip install binance-sdk-spot binance-sdk-margin-trading binanc-sdk-wallet
3636
```
3737

3838
### **Step 3: Update Imports**
@@ -49,7 +49,7 @@ from binance.spot import Spot
4949
**New:**
5050

5151
```python
52-
from spot import Spot
52+
from binance_sdk_spot.spot import Spot
5353
```
5454

5555
### **Step 4: Update Client Initialization**
@@ -69,8 +69,8 @@ print(account_info)
6969
**New (Modular Spot Connector):**
7070

7171
```python
72-
from spot import Spot
73-
from spot.rest_api.configuration import ConfigurationRestAPI
72+
from binance_common.configuration import ConfigurationRestAPI
73+
from binance_sdk_spot.spot import Spot
7474

7575
configuration = ConfigurationRestAPI(api_key, api_secret)
7676
client = Spot(config_rest_api=configuration)

README.md

Lines changed: 35 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -6,43 +6,43 @@
66
[![Known Vulnerabilities](https://snyk.io/test/github/binance/binance-connector-python/badge.svg)](https://snyk.io/test/github/binance/binance-connector-python)
77
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
88

9-
Collection of auto-generated Python connectors for Binance APIs.
9+
Collection of auto-generated Python SDK for Binance APIs.
1010

1111
## Prerequisites
1212

13-
Before using the connectors, ensure you have:
13+
Before using the SDK, ensure you have:
1414

1515
- **Python** (version 3.9 or later)
1616
- **pip** (Python package manager)
17-
- **poetry** ()
18-
19-
20-
## Available Connectors
21-
22-
- [binance-algo](./clients/algo) - Algo Trading connector
23-
- [binance-c2c](./clients/c2c/) - C2C connector
24-
- [binance-convert](./clients/convert/) - Convert connector
25-
- [binance-copy-trading](./clients/copy_trading/) - Copy Trading connector
26-
- [binance-crypto-loan](./clients/crypto_loan/) - Crypto Loan connector
27-
- [binance-derivatives-trading-coin-futures](./clients/derivatives_trading_coin_futures/) - Coin Futures Trading connector
28-
- [binance-derivatives-trading-options](./clients/derivatives_trading_options/) - Options Trading connector
29-
- [binance-derivatives-trading-portfolio-margin](./clients/derivatives_trading_portfolio_margin/) - Portfolio Margin Futures Trading connector
30-
- [binance-derivatives-trading-portfolio-margin-pro](./clients/derivatives_trading_portfolio_margin_pro/) - Portfolio Margin Pro Trading connector
31-
- [binance-derivatives-trading-usds-futures](./clients/derivatives_trading_usds_futures/) - USDs Futures Trading connector
32-
- [binance-dual-investment](./clients/dual_investment/) - Dual Investment connector
33-
- [binance-fiat](./clients/fiat/) - Fiat connector
34-
- [binance-gift-card](./clients/gift_card/) - Gift Card connector
35-
- [binance-margin-trading](./clients/margin_trading/) - Margin Trading connector
36-
- [binance-mining](./clients/mining/) - Mining connector
37-
- [binance-nft](./clients/nft/) - NFT connector
38-
- [binance-pay](./clients/pay/) - Pay connector
39-
- [binance-rebate](./clients/rebate/) - Rebate connector
40-
- [binance-simple-earn](./clients/simple_earn/) - Simple Earn connector
41-
- [binance-spot](./clients/spot/) - Spot Trading connector
42-
- [binance-staking](./clients/staking/) - Staking connector
43-
- [binance-sub-account](./clients/sub_account/) - Sub Account connector
44-
- [binance-vip-loan](./clients/vip_loan/) - VIP Loan connector
45-
- [binance-wallet](./clients/wallet/) - Wallet connector
17+
- **poetry** (Python package manager)
18+
19+
20+
## Available SDK
21+
22+
- [binance-sdk-algo](./clients/algo) - Algo Trading connector
23+
- [binance-sdk-c2c](./clients/c2c/) - C2C connector
24+
- [binance-sdk-convert](./clients/convert/) - Convert connector
25+
- [binance-sdk-copy-trading](./clients/copy_trading/) - Copy Trading connector
26+
- [binance-sdk-crypto-loan](./clients/crypto_loan/) - Crypto Loan connector
27+
- [binance-sdk-derivatives-trading-coin-futures](./clients/derivatives_trading_coin_futures/) - Coin Futures Trading connector
28+
- [binance-sdk-derivatives-trading-options](./clients/derivatives_trading_options/) - Options Trading connector
29+
- [binance-sdk-derivatives-trading-portfolio-margin](./clients/derivatives_trading_portfolio_margin/) - Portfolio Margin Futures Trading connector
30+
- [binance-sdk-derivatives-trading-portfolio-margin-pro](./clients/derivatives_trading_portfolio_margin_pro/) - Portfolio Margin Pro Trading connector
31+
- [binance-sdk-derivatives-trading-usds-futures](./clients/derivatives_trading_usds_futures/) - USDs Futures Trading connector
32+
- [binance-sdk-dual-investment](./clients/dual_investment/) - Dual Investment connector
33+
- [binance-sdk-fiat](./clients/fiat/) - Fiat connector
34+
- [binance-sdk-gift-card](./clients/gift_card/) - Gift Card connector
35+
- [binance-sdk-margin-trading](./clients/margin_trading/) - Margin Trading connector
36+
- [binance-sdk-mining](./clients/mining/) - Mining connector
37+
- [binance-sdk-nft](./clients/nft/) - NFT connector
38+
- [binance-sdk-pay](./clients/pay/) - Pay connector
39+
- [binance-sdk-rebate](./clients/rebate/) - Rebate connector
40+
- [binance-sdk-simple-earn](./clients/simple_earn/) - Simple Earn connector
41+
- [binance-sdk-spot](./clients/spot/) - Spot Trading connector
42+
- [binance-sdk-staking](./clients/staking/) - Staking connector
43+
- [binance-sdk-sub-account](./clients/sub_account/) - Sub Account connector
44+
- [binance-sdk-vip-loan](./clients/vip_loan/) - VIP Loan connector
45+
- [binance-sdk-wallet](./clients/wallet/) - Wallet connector
4646

4747
## Documentation
4848

@@ -53,21 +53,21 @@ For detailed information, refer to the [Binance API Documentation](https://devel
5353
Each connector is published as a separate Python package. You can install them via `pip` or `poetry`. For example:
5454

5555
```bash
56-
pip install binance-spot
56+
pip install binance-sdk-spot
5757
```
5858

5959
```bash
60-
poetry add binance-spot
60+
poetry add binance-sdk-spot
6161
```
6262

6363
Or to install multiple connectors:
6464

6565
```bash
66-
pip install binance-spot binance-margin-trading binance-staking
66+
pip install binance-sdk-spot binance-sdk-margin-trading binance-sdk-staking
6767
```
6868

6969
```bash
70-
poetry add binance-spot binance-margin-trading binance-staking
70+
poetry add binance-sdk-spot binance-sdk-margin-trading binance-sdk-staking
7171
```
7272

7373
## Contributing

clients/algo/.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
build
22
dist
3-
binance_connector.egg-info/
3+
44
__pycache__
55
*.pyc
66
.tox

clients/algo/CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Changelog
22

3-
## 1.0.0 - 2025-07-16
3+
## 1.0.0 - 2025-07-17
44

55
- Initial release

clients/algo/README.md

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
# Binance Python Algo Connector
1+
# Binance Python Algo SDK
22

33
[![Build Status](https://img.shields.io/github/actions/workflow/status/binance/binance-connector-python/ci-algo.yml)](https://github.com/binance/binance-connector-python/actions)
44
[![Open Issues](https://img.shields.io/github/issues/binance/binance-connector-python)](https://github.com/binance/binance-connector-python/issues)
55
[![Code Style: Black](https://img.shields.io/badge/code_style-black-black)](https://black.readthedocs.io/en/stable/)
6-
[![PyPI version](https://img.shields.io/pypi/v/binance-algo)](https://pypi.python.org/pypi/binance-algo)
7-
[![PyPI Downloads](https://img.shields.io/pypi/dm/binance-algo.svg)](https://pypi.org/project/binance-algo/)
6+
[![PyPI version](https://img.shields.io/pypi/v/binance-sdk-algo)](https://pypi.python.org/pypi/binance-sdk-algo)
7+
[![PyPI Downloads](https://img.shields.io/pypi/dm/binance-sdk-algo.svg)](https://pypi.org/project/binance-sdk-algo/)
88
[![Python version](https://img.shields.io/pypi/pyversions/binance-connector)](https://www.python.org/downloads/)
99
[![Known Vulnerabilities](https://img.shields.io/badge/security-scanned-brightgreen)](https://github.com/binance/binance-connector-python/security)
1010
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
1111

12-
This is a client library for the Binance Algo API, enabling developers to interact programmatically with Binance's Algo trading platform. The library provides tools to programmatically leverage Binance in-house algorithmic trading capability to automate order execution strategy, improve execution transparency and give users smart access to the available market liquidity through the REST API:
13-
- [REST API](./src/binance_algo/rest_api/rest_api.py)
12+
This is a client library for the Binance Algo SDK API, enabling developers to interact programmatically with Binance's Algo trading platform. The library provides tools to programmatically leverage Binance in-house algorithmic trading capability to automate order execution strategy, improve execution transparency and give users smart access to the available market liquidity through the REST API:
13+
- [REST API](./src/binance_sdk_algo/rest_api/rest_api.py)
1414

1515
## Table of Contents
1616

@@ -19,7 +19,6 @@ This is a client library for the Binance Algo API, enabling developers to intera
1919
- [Documentation](#documentation)
2020
- [REST APIs](#rest-apis)
2121
- [Testing](#testing)
22-
- [Migration Guide](#migration-guide)
2322
- [Contributing](#contributing)
2423
- [Licence](#licence)
2524

@@ -34,7 +33,7 @@ This is a client library for the Binance Algo API, enabling developers to intera
3433
To use this library, ensure your environment is running Python version **3.9** or later.
3534

3635
```bash
37-
pip install binance-algo
36+
pip install binance-sdk-algo
3837
```
3938

4039
## Documentation
@@ -43,12 +42,12 @@ For detailed information, refer to the [Binance API Documentation](https://devel
4342

4443
### REST APIs
4544

46-
All REST API endpoints are available through the [`rest_api`](./src/binance_algo/rest_api/rest_api.py) module. The REST API enables you to fetch market data, manage trades, and access account information. Note that some endpoints require authentication using your Binance API credentials.
45+
All REST API endpoints are available through the [`rest_api`](./src/binance_sdk_algo/rest_api/rest_api.py) module. The REST API enables you to fetch market data, manage trades, and access account information. Note that some endpoints require authentication using your Binance API credentials.
4746

4847
```python
4948
from binance_common.configuration import ConfigurationRestAPI
5049
from binance_common.constants import ALGO_REST_API_PROD_URL
51-
from binance_algo.algo import Algo
50+
from binance_sdk_algo.algo import Algo
5251

5352
logging.basicConfig(level=logging.INFO)
5453
configuration = ConfigurationRestAPI(api_key="your-api-key", api_secret="your-api-secret", base_path=ALGO_REST_API_PROD_URL)
@@ -122,7 +121,7 @@ To enhance security, you can use certificate pinning with the `https_agent` opti
122121

123122
The REST API provides detailed error types to help you handle issues effectively:
124123

125-
- `ClientError`: Represents an error that occurred in the Connector client.
124+
- `ClientError`: Represents an error that occurred in the SDK client.
126125
- `RequiredError`: Thrown when a required parameter is missing or undefined.
127126
- `UnauthorizedError`: Indicates missing or invalid authentication credentials.
128127
- `ForbiddenError`: Access to the requested resource is forbidden.
@@ -151,10 +150,6 @@ The tests cover:
151150
* Error handling
152151
* Edge cases
153152

154-
## Migration Guide
155-
156-
If you are upgrading to the new modularized structure, refer to the [Migration Guide](./docs/migration_guide_algo_connector.md) for detailed steps.
157-
158153
## Contributing
159154

160155
Contributions are welcome!

clients/algo/docs/migration_guide_algo_connector.md

Lines changed: 0 additions & 135 deletions
This file was deleted.

clients/algo/docs/rest_api/certificate-pinning.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ from socket import create_connection
99
from OpenSSL.crypto import dump_publickey, load_certificate, FILETYPE_ASN1
1010

1111
from binance_common.configuration import ConfigurationRestAPI
12-
from binance_algo.algo import Algo
13-
from binance_algo.rest_api.models import QueryHistoricalAlgoOrdersSpotAlgoResponse
12+
from binance_sdk_algo.algo import Algo
13+
from binance_sdk_algo.rest_api.models import QueryHistoricalAlgoOrdersSpotAlgoResponse
1414

1515
PINNED_PUBLIC_KEY = "YOUR-PINNED-PUBLIC-KEY"
1616
CA_CERT_PATH = "/path/to/certificate.pem"

0 commit comments

Comments
 (0)