直接在HTML文件中引入:
<script src="path/to/index.js"></script>使用 npm 安装:
npm install itick-sdk<!DOCTYPE html>
<html>
<head>
<title>iTick SDK Demo</title>
<script src="index.js"></script>
</head>
<body>
<h1>iTick SDK Demo</h1>
<div id="output"></div>
<script>
// 初始化客户端
const client = new iTickClient('YOUR_API_KEY');
const output = document.getElementById('output');
// 示例:获取股票信息
async function getStockInfo() {
try {
const stockInfo = await client.getStockInfo('us', 'AAPL');
output.innerHTML += '<h2>股票信息</h2>';
output.innerHTML += '<pre>' + JSON.stringify(stockInfo, null, 2) + '</pre>';
} catch (error) {
output.innerHTML += '<h2>错误</h2>';
output.innerHTML += '<p>' + error.message + '</p>';
}
}
// 示例:获取股票K线数据
async function getStockKline() {
try {
const kline = await client.getStockKline('us', 'AAPL', '1d', 30);
output.innerHTML += '<h2>股票K线</h2>';
output.innerHTML += '<pre>' + JSON.stringify(kline, null, 2) + '</pre>';
} catch (error) {
output.innerHTML += '<h2>错误</h2>';
output.innerHTML += '<p>' + error.message + '</p>';
}
}
// 示例:WebSocket连接
function connectWebSocket() {
client.setOpenHandler(() => {
output.innerHTML += '<h2>WebSocket</h2>';
output.innerHTML += '<p>WebSocket connected</p>';
});
client.setMessageHandler((message) => {
output.innerHTML += '<p>Received message: ' + message + '</p>';
});
client.setErrorHandler((error) => {
output.innerHTML += '<p>Error: ' + error.message + '</p>';
});
client.setCloseHandler(() => {
output.innerHTML += '<p>WebSocket closed</p>';
});
// 连接股票WebSocket
client.connectStockWebSocket();
}
// 调用示例函数
getStockInfo();
getStockKline();
connectWebSocket();
</script>
</body>
</html>const Client = require('itick-sdk');
// 初始化客户端
const client = new Client('YOUR_API_KEY');
// 示例:获取股票信息
async function getStockInfo() {
try {
const stockInfo = await client.getStockInfo('us', 'AAPL');
console.log('股票信息:', stockInfo);
} catch (error) {
console.error('错误:', error.message);
}
}
// 示例:获取股票K线数据
async function getStockKline() {
try {
const kline = await client.getStockKline('us', 'AAPL', '1d', 30);
console.log('股票K线:', kline);
} catch (error) {
console.error('错误:', error.message);
}
}
// 示例:WebSocket连接
function connectWebSocket() {
client.setOpenHandler(() => {
console.log('WebSocket connected');
});
client.setMessageHandler((message) => {
console.log('Received message:', message);
});
client.setErrorHandler((error) => {
console.error('Error:', error.message);
});
client.setCloseHandler(() => {
console.log('WebSocket closed');
});
// 连接股票WebSocket
client.connectStockWebSocket();
}
// 调用示例函数
getStockInfo();
getStockKline();
connectWebSocket();getSymbolList()- 获取符号列表getSymbolHolidays()- 获取节假日信息
getStockInfo(region, code)- 获取股票信息getStockIPO(region, code)- 获取股票IPO信息getStockSplit(region, code)- 获取股票分拆信息getStockTick(region, code)- 获取股票tick数据getStockQuote(region, code)- 获取股票报价getStockDepth(region, code)- 获取股票深度getStockKline(region, code, period, limit, end = null)- 获取股票K线getStockTicks(region, codes)- 批量获取股票tick数据getStockQuotes(region, codes)- 批量获取股票报价getStockDepths(region, codes)- 批量获取股票深度getStockKlines(region, codes, period, limit, end = null)- 批量获取股票K线connectStockWebSocket()- 连接股票WebSocket
getIndicesTick(region, code)- 获取指数tick数据getIndicesQuote(region, code)- 获取指数报价getIndicesDepth(region, code)- 获取指数深度getIndicesKline(region, code, period, limit, end = null)- 获取指数K线getIndicesTicks(region, codes)- 批量获取指数tick数据getIndicesQuotes(region, codes)- 批量获取指数报价getIndicesDepths(region, codes)- 批量获取指数深度getIndicesKlines(region, codes, period, limit, end = null)- 批量获取指数K线connectIndicesWebSocket()- 连接指数WebSocket
getFutureTick(region, code)- 获取期货tick数据getFutureQuote(region, code)- 获取期货报价getFutureDepth(region, code)- 获取期货深度getFutureKline(region, code, period, limit, end = null)- 获取期货K线getFutureTicks(region, codes)- 批量获取期货tick数据getFutureQuotes(region, codes)- 批量获取期货报价getFutureDepths(region, codes)- 批量获取期货深度getFutureKlines(region, codes, period, limit, end = null)- 批量获取期货K线connectFutureWebSocket()- 连接期货WebSocket
getFundTick(region, code)- 获取基金tick数据getFundQuote(region, code)- 获取基金报价getFundDepth(region, code)- 获取基金深度getFundKline(region, code, period, limit, end = null)- 获取基金K线getFundTicks(region, codes)- 批量获取基金tick数据getFundQuotes(region, codes)- 批量获取基金报价getFundDepths(region, codes)- 批量获取基金深度getFundKlines(region, codes, period, limit, end = null)- 批量获取基金K线connectFundWebSocket()- 连接基金WebSocket
getForexTick(region, code)- 获取外汇tick数据getForexQuote(region, code)- 获取外汇报价getForexDepth(region, code)- 获取外汇深度getForexKline(region, code, period, limit, end = null)- 获取外汇K线getForexTicks(region, codes)- 批量获取外汇tick数据getForexQuotes(region, codes)- 批量获取外汇报价getForexDepths(region, codes)- 批量获取外汇深度getForexKlines(region, codes, period, limit, end = null)- 批量获取外汇K线connectForexWebSocket()- 连接外汇WebSocket
getCryptoTick(region, code)- 获取加密货币tick数据getCryptoQuote(region, code)- 获取加密货币报价getCryptoDepth(region, code)- 获取加密货币深度getCryptoKline(region, code, period, limit, end = null)- 获取加密货币K线getCryptoTicks(region, codes)- 批量获取加密货币tick数据getCryptoQuotes(region, codes)- 批量获取加密货币报价getCryptoDepths(region, codes)- 批量获取加密货币深度getCryptoKlines(region, codes, period, limit, end = null)- 批量获取加密货币K线connectCryptoWebSocket()- 连接加密货币WebSocket
- JavaScript SDK支持浏览器端和Node.js端使用。
- WebSocket功能在浏览器端和Node.js端都可以使用,包含自动重连和心跳机制。
- 所有API方法都返回Promise,请确保在使用时进行适当的错误处理。