news 2026/4/16 15:15:45

币安加密货币数据 (Crypto Market)对接指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
币安加密货币数据 (Crypto Market)对接指南

与股票接口不同,加密货币接口对接币安 (Binance)数据,使用Symbol (如 BTCUSDT)作为唯一标识,且 K 线数据的返回格式为数组格式(而非对象格式),这一点在解析时需要特别注意。


StockTV API 对接文档:加密货币 (Crypto)##1. 基础配置*接口域名:https://api.stocktv.top

  • 加密货币基础路径:/crypto
  • 主要数据源: 币安 (Binance)
  • 认证方式: URL 参数key=您的API密钥

##2. 核心接口流程###第一步:获取交易对列表 (Pair List)获取支持的加密货币交易对列表。

  • 接口:/crypto/pairlist

  • 方法:GET

  • 关键参数:

  • key:您的API Key

  • marketId:338(代表币安交易所数据)

  • page:1

  • 请求示例:

GET https://api.stocktv.top/crypto/pairlist?key=YOUR_KEY&marketId=338&page=1
  • 响应关键字段:
  • symbol:交易对代码(如 “BTC”, “ETH”)
  • pair:完整交易对(如 “BTC/USDT”)
  • price: 最新价格

###第二步:获取 K 线数据 (Klines)注意:加密货币的 K 线数据返回的是数组格式 (Array),而非 JSON 对象。

  • 接口:/crypto/getKlines

  • 方法:GET

  • 参数:

  • symbol:交易对(格式为BTCUSDT, 去掉中间的/)

  • interval:周期(1m,5m,1h,4h,1d,1w,1M)

  • 请求示例:

GET https://api.stocktv.top/crypto/getKlines?symbol=BTCUSDT&interval=1d&key=YOUR_KEY
  • 响应数据结构 (数组索引映射):
  • Index0:开盘时间戳(毫秒)
  • Index1:Open(开盘价)
  • Index2:High(最高价)
  • Index3:Low(最低价)
  • Index4:Close(收盘价)
  • Index5:Volume(成交量)

###第三步:获取最新价格 (Ticker)如果不需要 K 线,只需获取当前价格。

  • 接口:/crypto/tickerPrice
  • 参数:symbols=BTCUSDT,ETHUSDT(支持批量)

##3. 完整代码示例 (HTML + KlineCharts)此代码演示了如何处理加密货币特有的数组格式 K 线数据并渲染图表。

<!DOCTYPEhtml><htmllang="zh-CN"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><title>加密货币 K线演示 (Crypto)</title><scriptsrc="https://cdn.jsdelivr.net/npm/klinecharts/dist/klinecharts.min.js"></script><style>body{font-family:sans-serif;padding:20px;background-color:#1e1e1e;color:#fff;}.control-panel{background:#2d2d2d;padding:15px;margin-bottom:20px;border-radius:8px;display:flex;gap:10px;align-items:center;}#chart{width:100%;height:600px;border:1px solid #444;}button{padding:8px 15px;cursor:pointer;background:#007bff;color:white;border:none;border-radius:4px;}select, input{padding:8px;background:#444;color:white;border:1px solid #666;border-radius:4px;}.price-display{margin-left:auto;font-size:1.2em;font-weight:bold;color:#00ff00;}</style></head><body><h2>StockTV 加密货币对接 (Binance Source)</h2><divclass="control-panel"><label>交易对:</label><selectid="symbolSelect"onchange="loadCryptoData()"><optionvalue="BTCUSDT">BTC/USDT</option><optionvalue="ETHUSDT">ETH/USDT</option><optionvalue="SOLUSDT">SOL/USDT</option><optionvalue="BNBUSDT">BNB/USDT</option><optionvalue="DOGEUSDT">DOGE/USDT</option></select><label>周期:</label><selectid="intervalSelect"onchange="loadCryptoData()"><optionvalue="1m">1分钟</option><optionvalue="15m">15分钟</option><optionvalue="1h">1小时</option><optionvalue="4h">4小时</option><optionvalue="1d"selected>日线</option></select><buttononclick="loadCryptoData()">刷新图表</button><divid="priceInfo"class="price-display">--</div></div><divid="chart"></div><script>// === 配置区域 ===constAPI_KEY='YOUR_API_KEY';// TODO: 替换您的 KeyconstBASE_URL='https://api.stocktv.top';// 初始化图表 (黑色主题)constchart=klinecharts.init('chart');chart.setStyles('dark');// 使用暗色主题适配加密货币风格/** * 加载数据主函数 */asyncfunctionloadCryptoData(){constsymbol=document.getElementById('symbolSelect').value;constinterval=document.getElementById('intervalSelect').value;constdisplay=document.getElementById('priceInfo');display.innerText="加载中...";// 1. 请求 K 线数据consturl=`${BASE_URL}/crypto/getKlines?symbol=${symbol}&interval=${interval}&key=${API_KEY}`;console.log("请求地址:",url);try{constres=awaitfetch(url);constjson=awaitres.json();if(json.code===200&&json.data){// === 关键步骤:数据格式转换 ===// 加密货币接口返回的是数组: [time, open, high, low, close, volume, ...]// 需要映射为对象格式constdataList=json.data.map(item=>{return{timestamp:Number(item[0]),// 索引0: 时间戳open:parseFloat(item[1]),// 索引1: 开盘high:parseFloat(item[2]),// 索引2: 最高low:parseFloat(item[3]),// 索引3: 最低close:parseFloat(item[4]),// 索引4: 收盘volume:parseFloat(item[5])// 索引5: 成交量};});// 排序dataList.sort((a,b)=>a.timestamp-b.timestamp);// 渲染图表chart.applyNewData(dataList);// 更新页面上的最新价if(dataList.length>0){constlast=dataList[dataList.length-1];display.innerText=`${symbol}:${last.close}`;}}else{alert("API 返回错误: "+json.message);}}catch(err){console.error(err);alert("网络请求失败");}}// 页面加载默认执行一次loadCryptoData();</script></body></html>

##4. 常见问题 (FAQ)Q1: 为什么 K 线图表是空白的?

A: 加密货币接口返回的数据是字符串类型的数组(例如["66895.35", ...]),前端必须使用parseFloat()转换为数字,且必须按照正确的数组索引(0=时间, 1=开, 2=高, 3=低, 4=收, 5=量)进行提取。如果直接传给图表库通常会解析失败。

Q2: 如何获取更多交易对?

A: 调用/crypto/pairlist?marketId=338&key=...接口。返回的列表非常长,建议在前端做分页处理或搜索功能。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 0:59:56

金三银四,全网最详细的软件测试面试题总结

前面看到了一些面试题&#xff0c;总感觉会用得到&#xff0c;但是看一遍又记不住&#xff0c;所以我把面试题都整合在一起&#xff0c;都是来自各路大佬的分享&#xff0c;为了方便以后自己需要的时候刷一刷&#xff0c;不用再到处找题&#xff0c;今天把自己整理的这些面试题…

作者头像 李华
网站建设 2026/4/15 17:42:03

通信系统仿真:数字调制与解调技术_(36).符号同步

符号同步 在数字通信系统中&#xff0c;符号同步是接收端的一个关键步骤&#xff0c;其目的是使接收端能够准确地检测发送端发送的符号边界。符号同步的准确与否直接影响到后续的解调过程和整个通信系统的性能。本节将详细介绍符号同步的原理、方法以及具体的实现步骤&#xf…

作者头像 李华
网站建设 2026/4/16 7:15:44

介观交通流仿真软件:Aimsun Next_(19).AimsunNext的新特性与更新

AimsunNext的新特性与更新 在这一节中&#xff0c;我们将详细介绍Aimsun Next的最新特性与更新&#xff0c;这些新特性不仅提高了软件的性能&#xff0c;还扩展了其在交通流仿真领域的应用范围。我们将从以下几个方面进行探讨&#xff1a;改进的用户界面增强的交通模型新的数据…

作者头像 李华
网站建设 2026/4/16 14:12:42

iOS App 测试的工程化实践,多工具协同的一些尝试

在实际研发流程中&#xff0c;iOS App 测试 已经不再是“点点页面、跑跑用例”的单一环节&#xff0c;而是一项贯穿 开发、集成、发布、回归与线上验证 的系统工程。 随着 App 规模扩大、业务复杂度提升以及混合技术&#xff08;Native Flutter uni-app WebView&#xff09;…

作者头像 李华