前言
随着数字货币的广泛应用,对于数字货币交易API的需求也越来越高,而OKEX交易所是一家国际知名数字货币交易平台,其提供了丰富的API接口方便开发者进行量化交易等操作,本文将介绍如何使用npm包@okfe/okex-node来进行API的调用。
准备工作
首先需要在OKEX交易所的网站上申请API Key和API Secret。进入OKEX交易所的网站之后,依次点击【API】->【API管理】->【创建新API】,填写相关信息即可获得API Key和API Secret。
安装
使用npm包管理工具来安装@okfe/okex-node:
npm i @okfe/okex-node --save
使用
首先需要引入@okfe/okex-node模块和相关模块:
const Okex = require('@okfe/okex-node'); const WebSocket = require('ws');
REST API
先以获取K线数据为例,首先需要定义一个RestClient实例:
const restClient = new Okex.RestClient(API_KEY, API_SECRET, PASSPHRASE, 'https://www.okex.com'); restClient.getCandies({ 'instId': 'BTC-USDT', 'after': '2022-01-01T00:00:00.000Z', 'before': '2022-01-02T00:00:00.000Z', 'bar': '1d' }).then(result => { console.log(result.data); }).catch(error => { console.error(error); });
WebSocket API
通过WebSocket API来查看K线数据,可以订阅多个市场的K线数据:
const wsClient = new Okex.WsClient('wss://ws.okex.com:8443', API_KEY, API_SECRET, PASSPHRASE); wsClient.on('open', function () { console.log('WebSocket client connected'); wsClient.subscribe({ 'event': 'subscribe', 'channel': 'candles', // 订阅K线数据 'instId': 'BTC-USDT', 'bar': '1d' }).then(result => { console.log('Subscribe successfully'); }).catch(error => { console.error('Subscribe failed', error); }); }); wsClient.on('message', function (message) { console.log('Received message:', message); }); wsClient.on('close', function () { console.log('WebSocket client disconnected'); });
示例代码
完整的示例代码如下:
const Okex = require('@okfe/okex-node'); const WebSocket = require('ws'); const API_KEY = 'Your API Key'; const API_SECRET = 'Your API Secret'; const PASSPHRASE = 'Your Passphrase'; const restClient = new Okex.RestClient(API_KEY, API_SECRET, PASSPHRASE, 'https://www.okex.com'); restClient.getCandies({ 'instId': 'BTC-USDT', 'after': '2022-01-01T00:00:00.000Z', 'before': '2022-01-02T00:00:00.000Z', 'bar': '1d' }).then(result => { console.log(result.data); }).catch(error => { console.error(error); }); const wsClient = new Okex.WsClient('wss://ws.okex.com:8443', API_KEY, API_SECRET, PASSPHRASE); wsClient.on('open', function () { console.log('WebSocket client connected'); wsClient.subscribe({ 'event': 'subscribe', 'channel': 'candles', // 订阅K线数据 'instId': 'BTC-USDT', 'bar': '1d' }).then(result => { console.log('Subscribe successfully'); }).catch(error => { console.error('Subscribe failed', error); }); }); wsClient.on('message', function (message) { console.log('Received message:', message); }); wsClient.on('close', function () { console.log('WebSocket client disconnected'); });
结语
本文介绍了如何使用npm包@okfe/okex-node来进行API的调用,通过REST API和WebSocket API可以方便地获取OKEX交易所的K线数据等信息,适合开发者进行量化交易等操作。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/600673e2fb81d47349e53d93