🚀 快速开始-HXKlineDataFeed
HXKline 支持多种下载方式,你可以通过npm
等包管理工具,也可以通过CDN
获取。
1、获取 HXKline
HXKline 支持多种下载方式,你可以通过npm
等包管理工具,也可以通过CDN
获取。
使用 npm
bash
npm set registry https://miniapp.10jqka.com.cn/npmserver/
# or
npm set registry http://112.90.157.23/
npm install @ths-m/HXKline
使用 CDN
注意版本号 ⚠️
bash
# 国内
https://s.thsi.cn/cd/b2cweb-component-hxkline-front/index.[顶部HXKline版本号].js
# 海外
https://cdn.ainvest.com/frontResources/s/b2cweb-component-hxkline-front/index_ainvest.[顶部HXKline版本号].js
TIP
- 完整cdn地址需要拼接版本号,版本号参考Header顶部标题栏
- 例如:https://s.thsi.cn/cd/b2cweb-component-hxklinechart-front/index.2.0.17.js
- 海外版注意_ainvest后缀
2、引入
npm
或yarn
javascript
// 国内
import * as HXKline from '@ths-m/HXKline';
// or 海外
import * as HXKline from '@ths-m/HXKline/dist/index_ainvest.js';
WARNING
- 由于使用同一份package配置,海外版使用ts类型时,ts类型仍旧需要从
@ths-m/HXKlineChart
或@ths-m/HXKline
中引入 - 例如:import { SourceModeMap } from '@ths-m/HXKline';
3、授权
WARNING
- 请勿在生产环境使用测试密钥
typescript
const projectInfo = {
id: 'hxkline-test',
token:
'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdXRob3JpemVyX25hbWVzcGFjZSI6ImNvbW1vbi1ocS1hZ2dyIiwibGljZW5zZWVfdHlwZSI6IkZST05UX0FQUCIsImxpY2Vuc2VlX25hbWVzcGFjZSI6Imh4a2xpbmUtdGVzdCJ9.W2sg74tpiTpTNv0X-94WkrXJqOJK8BgV4479GmDNOvY',
};
HXKline.verifyProjectPermission(projectInfo);
typescript
// ⚠ 以下测试密钥仅用于开发环境,请勿在生产环境使用!
const projectInfo = {
id:'test_id',
name:'test_name',
version:'test_version',
projectKey = 'DW0/LBRJRhkVPSM1OzZrXWENVh8BWkkSRQkEPCUIE14TbXpqQBYWHhkhOUhocD0UMBdoBAEKAFleAlU1';
};
HXKline.verifyProjectPermission(projectInfo);
4、设置业务域
- 设置业务域:由于目前HXKline支持多种业务域(例如测试环境、海外和特殊业务场景),所以在授权后需要设置业务域,否则会请求到错误的数据或者报错
javascript
// 国内-正式(默认✅)
HXKline.setProjectMode('China');
// 国内-测试
HXKline.setProjectMode('ChinaTest');
// 国内-缓存
HXKline.setProjectMode('ChinaCache');
// 海外-正式
HXKline.setProjectMode('Ainvest');
// 海外-测试
HXKline.setProjectMode('AinvestTest');
// 海外-回放
HXKline.setProjectMode('AinvestReplay');
5、获取数据
- 5.1、调用 创建数据池实例 API 创建实例,获取行情数据依赖实例的 api
javascript
const dataFeed = HXKline.initDataFeed();
- 5.2、调用 数据池实例 API 获取行情数据(依赖 5.1 创建的
dataFeed
实例)
javascript
const trendDemo = {
code_list: [
{
codes: ['300033'],
market: '33',
},
],
trade_class: 'intraday',
trade_date: 0,
};
const dataTrend = await dataFeed.getTrendData(trendDemo);
const dataTrendWithTime = await dataFeed.getTrendDataWithTime(trendDemo);
console.log('trendDemo', dataTrend, dataTrendWithTime);
javascript
const klineDemo = {
code_list: [
{
codes: ['300033'],
market: '33',
},
],
time_period: 'day_1',
trade_class: 'intraday',
begin_time: -10,
end_time: 0,
};
const dataKline = await dataFeed.getKlineData(klineDemo);
console.log('klineDemo', dataKline);
javascript
const snapshotDemo = {
code_list: [
{
codes: ['300033'],
market: '33',
},
],
trade_class: 'intraday',
data_fields: ['7', '8', '9', '55'],
};
const dataSnapshot = await dataFeed.getSnapshotData(snapshotDemo);
console.log('snapshotDemo', dataSnapshot);
获取更多数据请参阅:👉数据池实例 API