1.0.26 • Published 4 months ago
smxt v1.0.26
SMXT – SiMple eXchange Trading
A JavaScript library for cryptocurrency trading.
We aim to easily link multiple exchanges with one strategy code.
Exchange currently supported
CEX
- Binance Futures
- Bitget Futures
- Bybit Futures (Unified, cross, one-way mode)
- Okx Futures
- Gate.io Futures
DEX
- Orderly Futrues
Install
JavaScript (NPM)
npm install smxt
//cjs
var smxt = require('smxt')
console.log(smxt) // print all available exchanges
Documentation
market data
- initSymbolInfo()
- getSymbolList()
- getPrice(symbol)
- getOrderBook(symbol, limit)
- getKline(symbol, timeframe, limit)
wallet data
- getSymbolBalance(symbol)
- getTotalEquity()
trade function
- getPosition(symbol)
- getAllPositions()
- postOrder(symbol, orderType, side, amount, price, reduceOnly, orderTag)
- cancelOrder(symbol, orderId)
- cancelAllOrders(symbol)
- getPendingOrders(symbol)
- getAllPendingOrders()
- getTradeHistory(symbol, limit)
- getPositionHistory(symbol, limit)
- setLeverage(symbol, leverage)
For Detail
Usage
initialize
var smxt = require('smxt')
let binance = new smxt.Binance(
apiKey = "YOUR_API_KEY",
apiSecret = "YOUR_API_SECERT"
)
let bitget = new smxt.Bitget(
apiKey = "YOUR_API_KEY",
apiSecret = "YOUR_API_SECERT",
passphrase = "YOUR_PASSPHRASE"
)
let bybit = new smxt.Bybit(
apiKey = "YOUR_API_KEY",
apiSecret = "YOUR_API_SECERT"
)
let okx = new smxt.Okx(
apiKey = "YOUR_API_KEY",
apiSecret = "YOUR_API_SECERT",
passphrase = "YOUR_PASSPHRASE"
)
let gateIo = new smxt.GateIo(
apiKey = "YOUR_API_KEY",
apiSecret = "YOUR_API_SECERT"
)
let orderly = new smxt.Orderly(
accountId = "YOUR_ACCOUNT_ID",
apiSecret = "YOUR_API_SECERT"
)
get wallet data
let totalEquity = await bybit.getTotalEquity()
console.log(totalEquity) // 1000.0
let symbolBalance = await bybit.getSymbolBalance("USDT")
console.log(symbolBalance) // 700.0
get market data
// init symbol info (tick step, qty step, min qty)
await bybit.initSymbolInfo()
console.log(bybit.symbolInfo)
// {
// BTCUSDT: { amountTick: 0.001, priceTick: 0.1, minValue: 0.001, maxOrderSize: 100, contractValue: 1}
// ETHUSDT: { amountTick: 1, priceTick: 0.0001, minValue: 1, maxOrderSize: 10000, contractValue: 1}
// }
let timeframe = "1d" // or 4h, 1h, 30m, 15m, 5m, 1m
let kline = await bybit.getKline("ETHUSDT", timeframe)
console.log(kline)
// [
// {
// open: 3138.75,
// high: 3169.63,
// low: 3126.45,
// close: 3135.52,
// volume: 10228.3683,
// timestamp: 1714003200000
// },
// {
// open: 3219.37,
// high: 3292.7,
// low: 3103.04,
// close: 3138.74,
// volume: 53623.2576,
// timestamp: 1713916800000
// }
// ]
trade function
let orderType = "limit" // or market
let side = "buy" // or sell
let amount = 10
let price = 0.4
let orderId = await bybit.postOrder(
"XRPUSDT",
orderType,
side,
amount,
price
)
console.log(orderId)
let position = await bybit.getPosition("XRPUSDT")
console.log(position) // 10.0(long) or -10.0(short)
await bybit.cancelAllOrders("XRPUSDT")
Contact Us
For business inquiries: dev@tradingtau.com
1.0.22
6 months ago
1.0.21
7 months ago
1.0.20
7 months ago
1.0.26
4 months ago
1.0.25
5 months ago
1.0.24
5 months ago
1.0.23
5 months ago
1.0.19
9 months ago
1.0.18
9 months ago
1.0.17
9 months ago
1.0.16
10 months ago
1.0.15
10 months ago
1.0.14
10 months ago
1.0.13
10 months ago
1.0.11
10 months ago
1.0.10
10 months ago
1.0.9
10 months ago
1.0.8
10 months ago
1.0.7
10 months ago
1.0.6
10 months ago
1.0.5
10 months ago
1.0.4
10 months ago
1.0.3
10 months ago
1.0.2
10 months ago
1.0.1
10 months ago
1.0.0
10 months ago