npm 包 @activfinancial/cg-api-examples-common 使用教程

阅读时长 6 分钟读完

介绍

@activfinancial/cg-api-examples-common 是一个 Node.js 模块,提供了一系列可以用于与 Activ 高性能行情数据传输协议 API(CG API)交互的示例代码,供用户参考和学习。它包含了以下功能:

  • 创建 CG API 连接
  • 认证 CG API 连接
  • 订阅市场数据
  • 处理市场数据流
  • 取消订阅市场数据
  • 关闭 CG API 连接

本教程将介绍如何使用 @activfinancial/cg-api-examples-common 模块,并提供详细的代码示例和解释。同时,也会介绍一些与 CG API 相关的基础知识,帮助读者更好地理解这个模块的使用方法。

环境准备

在使用 @activfinancial/cg-api-examples-common 之前,需要先在本地安装以下依赖:

  • Node.js 运行环境(建议使用 v14.17.6 及以上版本)
  • NPM 包管理器(建议使用 v6.14.15 及以上版本)
  • Activ 的 CG API 认证信息(包括 APP ID、用户名和密码)

如果还没有 Activ 的 CG API 认证信息,请到 Activ 官网 上注册并申请,申请成功后会得到一个 APP ID 和相应的用户名和密码,这些信息将在后面的代码中用到。

安装 @activfinancial/cg-api-examples-common

安装 @activfinancial/cg-api-examples-common 可以通过 NPM 包管理器来实现,只需要在命令行中输入以下命令:

使用示例

以下是一个简单的使用示例,在这个示例中,我们将订阅 NASDAQ.NMS 市场的 AAPL.OGOOG.O 两只股票的实时行情数据,并在接收到数据后将其输出到控制台:

-- -------------------- ---- -------
----- ------------------- - --------------------------------------------------

----- ----- - ----- -----
----- -------- - -------------
----- -------- - -------------
----- -------- - -------------
----- ---- - ---------

---------------------------------- --------- --------- --------- ----- ----- ----- ------- -- -
    -- ----- -
        ------------------- -- ------- -- -- ---- ---------
        -------
    -

    ---------------------- -- -- ------

    ----- ---- - ------------------------------------

    ----- ------------------------------ ---------- -----------

    ----------------------- -- ----------------- --- --------------------

    --------------------- --------------- -- -
        --------------------- ---- ------- -----------------------------------
    ---
---

在上述代码中,我们首先导入了 @activfinancial/cg-api-examples-common 模块,然后使用 cgApiExamplesCommon.connect 方法连接到 CG API,并获取了一个 IMDS 对象。接着,我们使用 IMDS.subscribe 方法订阅了 NASDAQ.NMS 市场的 AAPL.OGOOG.O 两只股票的实时行情数据,在订阅成功后,使用 IMDS.on 方法监听了 itemUpdate 事件,在接收到数据后将其输出到控制台。

API 参考手册

cgApiExamplesCommon.connect(appID, username, password, hostname, port, callback)

参数:

  • appID:string 类型,必填,Activ 的 APP ID。
  • username:string 类型,必填,Activ 的用户名。
  • password:string 类型,必填,Activ 的密码。
  • hostname:string 类型,必填,CG API 的服务器地址。
  • port:number 类型,必填,CG API 的服务器端口号。
  • callback:function 类型,必填,连接成功或失败后的回调函数。

返回值:无。

说明:使用该方法连接到 CG API,并在连接成功或失败后执行回调函数,如果连接成功,则回调函数会传入一个 cgConn 对象作为参数。

cgApiExamplesCommon.getIMDS(cgConn)

参数:

  • cgConn:object 类型,必填,使用 cgApiExamplesCommon.connect 方法连接成功后得到的 cgConn 对象。

返回值:返回一个 IMDS 对象。

说明:用于创建一个 IMDS 对象,完成对市场数据的订阅、接收和取消订阅等操作。

IMDS.subscribe(marketIds, symbolIds)

参数:

  • marketIds:string[] 类型,必填,市场 ID 的数组,支持多市场订阅。
  • symbolIds:string[] 类型,必填,股票代号的数组,支持多种股票的订阅。

返回值:Promise。

说明:用于订阅指定市场和股票的实时行情数据,在订阅成功后,可以通过 IMDS.on('itemUpdate' 方法接收市场数据流。

IMDS.on(eventName, callback)

参数:

  • eventName:string 类型,必填,事件名称。
  • callback:function 类型,必填,事件发生后的回调函数。

返回值:无。

说明:用于监听 IMDS 对象的事件。目前支持以下事件:

  • itemUpdate:当订阅的股票实时行情数据发生更新时触发该事件,回调函数会传入一个 itemUpdateMsg 参数,该参数包含了已订阅股票的实时行情数据。

IMDS.unsubscribe()

参数:无。

返回值:无。

说明:用于取消订阅已经订阅的实时行情数据。

cgApiExamplesCommon.disconnect(cgConn)

参数:

  • cgConn: object 类型,必填,使用 cgApiExamplesCommon.connect 方法连接成功后得到的 cgConn 对象。

返回值:Promise。

说明:用于关闭 CG API 连接。

总结

本教程介绍了如何使用 npm 包 @activfinancial/cg-api-examples-common 来实现与 Activ 高性能行情数据传输协议 API(CG API)交互,包括连接 CG API、认证 CG API 连接、订阅市场数据、处理市场数据流、取消订阅市场数据和关闭 CG API 连接等功能,并提供了详细的使用示例和解释。希望对需要使用 CG API 的开发者有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/193849