前言
随着比特币等加密货币的兴起,数字货币交易所的应用也日益广泛。Coinspot 是一家位于澳大利亚的数字货币交易所,提供了一套简单的 API 供开发者调用。为了方便开发者使用这个 API,有人开发了一个 npm 包:coinspot-async-api。
在本文中,我们将介绍如何使用 coinspot-async-api 进行数字货币交易所开发。
安装
使用 npm 包管理器可以很方便地安装 coinspot-async-api。
npm install --save coinspot-async-api
实现
coinspot-async-api 的 API 可以分为 3 类:公共 API、交易 API 和钱包 API。
公共 API
coinspot-async-api 提供了一些公共 API,可以获取交易所数据,如市场行情、订单簿、交易历史等。以下是一些常用的公共 API:
行情 API
获取当前的市场行情:
const Coinspot = require('coinspot-async-api') const coinspot = new Coinspot() coinspot.getTicker('btc', 'aud').then((res) => { console.log(res) })
输出:
{ "last": "73606.80334273", "bid": "73389.77974386", "ask": "73606.80334273", "24h_volume": "262.3687", "high": "76127.61145368", "low": "71067.60281296" }
订单簿 API
获取当前的订单簿:
coinspot.getOrderBook('btc', 'aud').then((res) => { console.log(res) })
输出:
-- -------------------- ---- ------- - ------- - - ----------------- -------- -- - ----------------- -------- -- --- -- ------- - - ----------------- -------- -- - ----------------- -------- -- --- - -
历史 API
获取最近的交易历史:
const period = Coinspot.PERIODS.ONE_HOUR coinspot.getTradeHistory('btc', 'aud', period).then((res) => { console.log(res) })
输出:
-- -------------------- ---- ------- - - ------ ----------- ------- ----------- ---------- ------- ------- -------- ----------------- --------- ------------ -- - ------ ----------- ------- ----------- ---------- ------- ------- -------- ----------------- --------- ------------ -- --- -
交易 API
交易 API 可以实现买、卖、撤消等操作。
创建订单
创建一个买单:
const type = Coinspot.TRADE_TYPES.BUY const amount = 0.001 const rate = 60000 coinspot.trade('btc', 'aud', type, rate, amount).then((res) => { console.log(res) })
输出:
{ "order_id": "103867255", "status": "Filled" }
取消订单
取消一个订单:
const order_id = 103867255 coinspot.cancelOrder('btc', 'aud', order_id).then((res) => { console.log(res) })
输出:
{ "order_id": "103867255", "status": "Cancelled" }
钱包 API
钱包 API 可以实现钱包相关的操作,如获取钱包余额、提现等。
获取余额
获取 BTC 钱包的余额:
coinspot.getBalance('btc').then((res) => { console.log(res) })
输出:
{ "balance": "0.0100", "available": "0.0100", "unconfirmed": "0.0000" }
提现
提现 BTC 到指定地址:
const address = '0x6F...BF7' const amount = 0.001 coinspot.withdraw('btc', address, amount).then((res) => { console.log(res) })
输出:
{ "status": "sent", "txid": "0xcef1...b8c2" }
总结
本文介绍了 npm 包 coinspot-async-api 的使用方法,可以很方便地实现数字货币交易所的开发。虽然国内区块链相关政策比较复杂,但依然不能阻止我们学习和实践。
参考文献:
示例代码
创建一个简单的 BTC 买卖程序:
-- -------------------- ---- ------- ----- -------- - ----------------------------- ----- -------- - --- ---------- ----- ---- - ------------------------ ----- ------ - ----- ----- ---- - ----- --------------------- ------ ----- ----- ------------------ -- - ---------------- ------------- -- - ----- -------- - ------------ --------------------------- ------ -------------------- -- - ---------------- -- -- ----- --
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60056d0881e8991b448e6cb0