wiki/examples/js/gateio-swaps.md
// @NO_AUTO_TRANSPILE
import ccxt from '../../js/ccxt.js';
const exchange = new ccxt.gate({
'apiKey': 'YOUR_API_KEY',
'secret': 'YOUR_SECRET_KEY',
'options': {
'defaultType': 'swap',
},
});
(async () => {
// exchange.setSandboxMode (true)
const markets = await exchange.loadMarkets();
exchange.verbose = true; // uncomment for debugging purposes if necessary
// Example 1: Creating and canceling a linear swap (limit) order
try {
const symbol = 'LTC/USDT:USDT';
const type = 'limit';
const side = 'buy';
const amount = 1;
const price = 55;
// placing an order
const order = await exchange.createOrder(symbol, type, side, amount, price);
console.log(order);
// fetching open orders
const openOrders = await exchange.fetchOpenOrders(symbol);
console.log(openOrders);
// canceling an order
const cancel = await exchange.cancelOrder(order['id'], symbol);
console.log(cancel);
}
catch (e) {
console.log(e.constructor.name, e.message);
}
// Example 2: Creating and canceling a linear swap (stop-limit) order with leverage
try {
const symbol = 'LTC/USDT:USDT';
const type = 'limit';
const side = 'buy';
const amount = 1;
const price = 55;
const stopPrice = 130;
const params = {
'stopPrice': stopPrice,
};
//set leverage
const leverage = await exchange.setLeverage(3, symbol);
console.log(leverage);
// placing an order
const order = await exchange.createOrder(symbol, type, side, amount, price, params);
console.log(order);
// canceling an order
const cancelParams = {
isStop: true,
};
const cancel = await exchange.cancelOrder(order['id'], symbol, cancelParams);
console.log(cancel);
//reset leverage
exchange.setLeverage(1, symbol);
}
catch (e) {
console.log(e.constructor.name, e.message);
}
})();