trading-platform-api
v1.0.0
Published
Unofficial Node.js client for interacting with the trading platform API
Downloads
76
Maintainers
Readme
Trading Platform API
An unofficial Node.js client for interacting with the trading platform API.
Installation
npm install trading-platform-apiUsage
const tradingApi = require('trading-platform-api');
async function main() {
try {
// Authenticate (opens a browser for manual login)
await tradingApi.login();
// Place an order
const order = await tradingApi.placeOrder({
symbol: 'BTC/USDT',
type: 'limit',
price: 50000,
amount: 0.1,
orderType: 'buy'
});
console.log('Order placed:', order);
// Get open orders
const openOrders = await tradingApi.getOpenOrders(1, 10, "BTC/USDT");
console.log('Open orders:', openOrders);
// Get order status
const status = await tradingApi.getOrderStatus(order.orderId);
console.log('Order status:', status);
// Get current ticker information
const ticker = await tradingApi.getCurrentTicker("BTC/USDT");
console.log('Current ticker:', ticker);
} catch (error) {
console.error('Error:', error.message);
}
}
main();API Reference
login()
Opens a browser for manual login to the trading platform.
Returns: Promise - Authentication token
logout()
Deletes the saved authentication token.
placeOrder(orderDetails)
Places a new order on the trading platform.
Parameters:
orderDetails(Object):coinMarket(string): Trading pair (e.g., "BTC/USDT")type(string): Order type (e.g., "buy", "sell")price(number): Order priceamount(number): Order amountorderType(string): Type of order (e.g., "limit", "market")
Returns: Promise - Order response
getOpenOrders(pageNum, pageSize, coinMarket)
Gets open orders from the trading platform.
Parameters:
pageNum(number): Page number for paginationpageSize(number): Number of orders per pagecoinMarket(string): Trading pair (e.g., "BTC/USDT")
Returns: Promise - Open orders data
getOrderStatus(orderId, coinMarket)
Gets status of a specific order.
Parameters:
orderId(string): Order ID to checkcoinMarket(string, optional): Trading pair
Returns: Promise - Order status
getCurrentTicker(coinMarket)
Gets current ticker information for a specific market.
Parameters:
coinMarket(string): Trading pair (e.g., "BTC/USDT")
Returns: Promise - Current ticker data
License
MIT
## 6. Test Locally Before Publishing
Before publishing, test your package locally:
```bash
# In your package directory
npm link
# In another project directory
npm link trading-platform-api7. Publish to NPM
When ready to publish:
# Login to npm
npm login
# Publish the package
npm publish8. Additional Good Practices
- Add TypeScript Definitions: Create a
index.d.tsfile with type definitions:
declare module 'trading-platform-api' {
export function login(): Promise<string>;
export function logout(): void;
export function placeOrder(orderDetails: {
coinMarket: string;
type: string;
price: number;
amount: number;
orderType: string;
}): Promise<any>;
export function getOpenOrders(
pageNum: number,
pageSize: number,
coinMarket: string
): Promise<any>;
export function getOrderStatus(
orderId: string,
coinMarket?: string
): Promise<any>;
export function getCurrentTicker(coinMarket: string): Promise<any>;
export function connectTradesWS(callback: (data: any) => void): any;
}