前言
在前端开发中,使用第三方库和插件是必不可少的。其中,npm 包成为了前端最常用的第三方库管理工具。最近在实现一个外汇交易平台的项目中,我们使用了一个名为 @claasahl/spotware-connect-api 的 npm 包。该包提供了外汇交易平台 Spotware 的 WebSocket 接口的封装,方便我们进行交易、获取行情、持仓等操作。本文将介绍如何使用该 npm 包,并提供示例代码。
安装
使用 npm 安装该包很简单,只需要在项目根目录下运行以下命令即可:
npm install @claasahl/spotware-connect-api
使用
初始化
在使用该 npm 包之前,我们需要进行初始化。使用以下代码:
import { WebSocketTransport, SpotwareConnectAPI } from "@claasahl/spotware-connect-api"; const socket = new WebSocketTransport("wss://api.spotware.com/connect-ws", { reconnectInterval: 5000, }); const api = new SpotwareConnectAPI(); api.setTransport(socket);
其中,WebSocketTransport 就是该 npm 包中提供的 WebSocket 连接类。我们在初始化时创建一个 WebSocketTransport 对象,并传入 api.spotware.com/connect-ws 这个 WebSocket 地址。reconnectInterval 即重连接时间间隔,单位为毫秒。SpotwareConnectAPI 则是该 npm 包中提供的主要 API 类。
Login
在初始化之后,我们需要进行登录操作。使用以下代码:
-- -------------------- ---- ------- ----- -------- - ---------------- ----- -------- - ---------------- ----- ----- - -------------- --- ---------------- --------- ------ -------- -- - ------------------- ----- -- -------------- -- - ----------------------- ------- ---
其中,username、password 分别为您的 Spotware 账户的用户名和密码。appId 则是该应用的应用 ID。可以在 Spotware 开发者页面创建应用并获取该 ID。
订阅行情
在登录成功后,我们可以开始订阅行情。使用以下代码:
const symbols = ["SYMBOL_1", "SYMBOL_2"]; api.addEventListener("QUOTE", (event) => { console.log(event); }); api.addSubscription([...symbols], "QUOTE");
其中,symbols 为您需要订阅的交易品种的 ID。在订阅成功后,该 websocket 连接将会实时接收到该品种的行情数据,并触发 QUOTE 事件。
执行交易
当您需要对某个品种进行买入或者卖出操作时,可以使用以下代码:
-- -------------------- ---- ------- ----- ------- - ----------------------- ----- ------ - ---- ----- -------- - ----------- ----- --------- - ------------------ ----- --------- - --------------------- ----- -------- - ---- ----- ---------- - ---- ----------------------------------- ------- -- - ----------------------------- ------- --- --------------------------------------- ------- -- - ------------------------------- ------- --- ----- ------------ - - --------- ------- ---------- ---------- --------- ----------- -- ---------------------------- ---------
其中,orderId 为您的请求 ID,volume 为您要买入或卖出的数量,orderSide 为买入或卖出,orderType 为市价单或者限价单,stopLoss 和 takeProfit 分别为止损和止盈的价格。在请求发送成功后,websocket 连接将会接收到 ORDER_EXECUTION 事件。如果请求发送失败,则会接收到 ORDER_ERROR 事件。
结语
以上为 @claasahl/spotware-connect-api 的使用教程。希望本文对您在前端开发中使用 npm 包有所帮助。另外,完整的示例代码可在 GitHub 上获取:https://github.com/your-repository/your-project/blob/main/src/index.js。如果您在使用该 npm 包时遇到问题,请联系该 npm 包的开发者 Claas Ahlrichs,或者在 GitHub 上提交 Issue。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6006725f3660cf7123b36452