Files
ritmex-bot/docs/binance/binance_derivatives/docs_derivatives_coin-margined-futures_common-definition.md
T
DisneyandGitHub d6399b92aa Feat/support binance (#22)
* add docs

* Add Binance exchange support

- Updated the environment configuration to include Binance as a selectable exchange option.
- Enhanced the README documentation to reflect the addition of Binance.
- Implemented the Binance exchange adapter and integrated it into the existing exchange framework.
- Modified the basis arbitrage strategy to support Binance alongside existing exchanges.
- Added tests to ensure proper functionality and integration of Binance within the trading system.

* Enhance README with detailed Binance exchange configuration

- Added comprehensive instructions for setting up Binance as an exchange option.
- Included environment variable specifications for API keys, market types, and trading symbols.
- Provided examples for both perpetual and spot trading strategies.
- Clarified the use of WebSocket and REST for the Binance adapter.

* Enhance exchange support and testing framework

- Added a new test suite for exchange contracts to ensure consistency and functionality across supported exchanges.
- Refactored exchange ID handling to utilize a centralized list of supported exchanges, improving maintainability.
- Updated CLI argument parsing and help documentation to reflect the new exchange structure.
- Introduced utility functions for validating supported exchanges and their display names.
- Enhanced the BasisApp and strategy runner to leverage the new exchange validation logic.
- Added a new test command for running exchange-related tests.

* Refactor exchange contract tests and update CLI commands

- Removed the trailing supported exchanges set and simplified the logic for trailing stop support in the exchange contract tests.
- Updated the test command for exchange contracts to exclude unnecessary tests, streamlining the testing process.
- Enhanced test descriptions for clarity and improved understanding of the functionality being tested.
2026-02-27 11:37:44 +08:00

7.6 KiB
Raw Blame History

title, source, fetched_at
title source fetched_at
Common Definition | Binance Open Platform https://developers.binance.com/docs/derivatives/coin-margined-futures/common-definition 2026-01-27T05:28:02.113Z

Public Endpoints Info

Terminology

  • symbol refers to the symbol name of a contract symbol
  • pair refers to the underlying symbol of a contracrt symbol
  • base asset refers to the asset that is the quantity of a symbol.
  • quote asset refers to the asset that is the price of a symbol.
  • margin asset refers to the asset that is the margin of a symbol

ENUM definitions

Symbol type:

  • DELIVERY_CONTRACT
  • PERPETUAL_CONTRACT

Contract type (contractType):

  • PERPETUAL
  • CURRENT_QUARTER
  • NEXT_QUARTER
  • CURRENT_QUARTER_DELIVERING // Invalid type, only used for DELIVERING status
  • NEXT_QUARTER_DELIVERING // Invalid type, only used for DELIVERING status
  • PERPETUAL_DELIVERING

Contract status (contractStatus, status):

  • PENDING_TRADING
  • TRADING
  • PRE_DELIVERING
  • DELIVERING
  • DELIVERED

Order status (status):

  • NEW
  • PARTIALLY_FILLED
  • FILLED
  • CANCELED
  • EXPIRED

Order types (type):

  • LIMIT
  • MARKET
  • STOP
  • STOP_MARKET
  • TAKE_PROFIT
  • TAKE_PROFIT_MARKET
  • TRAILING_STOP_MARKET

Order side (side):

  • BUY
  • SELL

Position side (positionSide):

  • BOTH
  • LONG
  • SHORT

Time in force (timeInForce):

  • GTC - Good Till Cancel
  • IOC - Immediate or Cancel
  • FOK - Fill or Kill
  • GTX - Good Till Crossing (Post Only)

Working Type (workingType)

  • MARK_PRICE
  • CONTRACT_PRICE

New Order Response Type (newOrderRespType)

  • ACK
  • RESULT

Price Match (priceMatch)

  • NONE: no price match
  • OPPONENT: counterparty best price
  • OPPONENT_5: counterparty 5th best price
  • OPPONENT_10: counterparty 10th best price
  • OPPONENT_20: counterparty 20th best price
  • QUEUE: the best price on the same side of the order book
  • QUEUE_5: the 5th best price on the same side of the order book
  • QUEUE_10: the 10th best price on the same side of the order book
  • QUEUE_20: the 20th best price on the same side of the order book

Self-Trade Prevention mode (selfTradePreventionMode)

  • NONE: No Self-Trade Prevention
  • EXPIRE_TAKER: expire taker order when STP trigger
  • EXPIRE_BOTH: expire taker and maker order when STP trigger
  • EXPIRE_MAKER: expire maker order when STP trigger

Kline/Candlestick chart intervals:

m -> minutes; h -> hours; d -> days; w -> weeks; M -> months

  • 1m
  • 3m
  • 5m
  • 15m
  • 30m
  • 1h
  • 2h
  • 4h
  • 6h
  • 8h
  • 12h
  • 1d
  • 3d
  • 1w
  • 1M

Rate limiters (rateLimitType)

REQUEST_WEIGHT

  {  	"rateLimitType": "REQUEST_WEIGHT",  	"interval": "MINUTE",  	"intervalNum": 1,  	"limit": 6000  }

ORDERS

  {  	"rateLimitType": "ORDERS",  	"interval": "MINUTE",  	"intervalNum": 1,  	"limit": 1200   }
  • REQUEST_WEIGHT

  • ORDERS

Rate limit intervals (interval)

  • MINUTE

Filters

Filters define trading rules on a symbol or an exchange.

Symbol filters

PRICE_FILTER

/exchangeInfo format:

  {    "filterType": "PRICE_FILTER",    "minPrice": "0.00000100",    "maxPrice": "100000.00000000",    "tickSize": "0.00000100"  }

The PRICE_FILTER defines the price rules for a symbol. There are 3 parts:

  • minPrice defines the minimum price/stopPrice allowed; disabled on minPrice == 0.
  • maxPrice defines the maximum price/stopPrice allowed; disabled on maxPrice == 0.
  • tickSize defines the intervals that a price/stopPrice can be increased/decreased by; disabled on tickSize == 0.

Any of the above variables can be set to 0, which disables that rule in the price filter. In order to pass the price filter, the following must be true for price/stopPrice of the enabled rules:

  • price >= minPrice
  • price <= maxPrice
  • (price-minPrice) % tickSize == 0

LOT_SIZE

/exchangeInfo format:

  {    "filterType": "LOT_SIZE",    "minQty": "0.00100000",    "maxQty": "100000.00000000",    "stepSize": "0.00100000"  }

The LOT_SIZE filter defines the quantity (aka "lots" in auction terms) rules for a symbol. There are 3 parts:

  • minQty defines the minimum quantity allowed.
  • maxQty defines the maximum quantity allowed.
  • stepSize defines the intervals that a quantity can be increased/decreased by.

In order to pass the lot size, the following must be true for quantity:

  • quantity >= minQty
  • quantity <= maxQty
  • (quantity-minQty) % stepSize == 0

MARKET_LOT_SIZE

/exchangeInfo format:

  {    "filterType": "MARKET_LOT_SIZE",    "minQty": "0.00100000",    "maxQty": "100000.00000000",    "stepSize": "0.00100000"  }

The MARKET_LOT_SIZE filter defines the quantity (aka "lots" in auction terms) rules for MARKET orders on a symbol. There are 3 parts:

  • minQty defines the minimum quantity allowed.
  • maxQty defines the maximum quantity allowed.
  • stepSize defines the intervals that a quantity can be increased/decreased by.

In order to pass the market lot size, the following must be true for quantity:

  • quantity >= minQty
  • quantity <= maxQty
  • (quantity-minQty) % stepSize == 0

MAX_NUM_ORDERS

/exchangeInfo format:

  {    "filterType": "MAX_NUM_ORDERS",    "limit": 200  }

The MAX_NUM_ORDERS filter defines the maximum number of orders an account is allowed to have open on a symbol.

Note that both "algo" orders and normal orders are counted for this filter.

PERCENT_PRICE

/exchangeInfo format:

  {    "filterType": "PERCENT_PRICE",    "multiplierUp": "1.0500",    "multiplierDown": "0.9500",    "multiplierDecimal": 4  }

The PERCENT_PRICE filter defines valid range for a price based on the mark price.

In order to pass the percent price, the following must be true for price: