TradingView 使用UDF方式 实现k线 接口的参数详细配置

tradingview开发

TradingView 使用UDF方式 实现k线 接口的参数详细配置_第1张图片

使用UDF方式(通用数据反馈)实现k线

因为tradingview 图表自身会去自动调用接口数据,所以需要后端需要提供以下4个接口,而且接口名称必须保持一致(目前未在源码中找到在哪修改接口名字的地方)

TradingView 使用UDF方式 实现k线 接口的参数详细配置_第2张图片

本文不啰嗦那么多,想看详细解释和更多配置可以查看官方文档,此处仅对前后端数据交互进行概述

api调用

接口一:Datafeed 配置数据接口

接口名称 /config,传参方式:get

Request:GET /config

 接口返回数据:

{
    supports_search: true,//是否支持商品查询和人商品解析逻辑
    supports_group_request: false,//只提供所有商品集合的完整信息,并且无法进行商品搜索或单个商品解析,并且supports_search和supports_group_request两者之中有只有一个可以为true。
    supported_resolutions: ["1", "5", "15", "30", "60", "1D", "1W", "1M"],//支持的周期数组,周期可以是数字或字符串,例:[1, 15, 240, "D", "6M"],您将在周期中得到 "1 分钟, 15 分钟, 4 小时, 1 天, 6 个月" 。
    supports_marks: false,//是否支持在K线上显示标记。
    supports_time: true,//将此设置为true假如您的datafeed提供服务器时间(unix时间)。 它仅用于在价格刻度上显示倒计时。
}

 接口二:商品解析

接口名称 /symbols,传参方式:get,参数 symbol (商品名称或者代码

Request:GET /symbols?symbol=

接口返回数据

{
    "name":"AAPL",//商品名称。您的用户将看到它(作为一个字符串)
    "exchange-traded":"NasdaqNM",//交易所。
    "exchange-listed":"NasdaqNM",//交易所。
    "timezone":"Asia/Shanghai",//交易所时区。
    "minmov":1,//最小波动
    "minmov2":0,//格式化复杂情况下的价格
    "pointvalue":1,
    "session":"0900-1100,1400-1500",//商品交易时间,如果全天交易
    "has_intraday":false,//布尔值显示商品是否具有日内(分钟)历史数据
    "has_no_volume":false,//商品是否拥有成交量数据
    "description":"Apple Inc.",//商品说明。这个商品说明将被打印在图表的标题栏中。
    "type":"stock",//仪表的可选类型。
    "supported_resolutions":[
        "D",
        "2D",
        "3D",
        "W",
        "3W",
        "M",
        "6M"
    ],//周期选择器
    "pricescale":100,//价格精度,图表价格量表上的价格线之间的周期
    "ticker":"AAPL",//商品的唯一标识符。如果您指定此属性,则其值将用于所有数据请求,未指定ticker时会发生错误。
}

 接口三:服务器时间

Request:GET /time

接口返回参数

 纯数字,unix时间没有毫秒。 例: 1445324591

 接口四:K线柱数据(最重要的)

接口名称 /history,传参方式:get,

参数
symbol (商品名称或者代码)

from (时间区间 unix时间戳,例如1555224890)

to  (时间区间 unix时间戳 ,例如1589439350)

resolution (时间刻度:5 --5分钟 ,D -- 一天,W -- 一周,等..)

GET /history?symbol=&from=&to=&resolution=

接口返回参数

状态ok

{
   s: "ok",//状态码。 预期值:ok|error|no_data
   t: [1386493512, 1386493572, 1386493632, 1386493692],//K线时间. unix时间戳 (UTC)
   c: [42.1, 43.4, 44.3, 42.8],//收盘价
   o: [41.0, 42.9, 43.7, 44.5],//开盘价 (可选)
   h: [43.0, 44.1, 44.8, 44.5],//最高价 (可选)
   l: [40.4, 42.1, 42.8, 42.3],//最低价(可选)
   v: [12000, 18500, 24000, 45000],//成交量 (可选)
}

状态no_data

{
   s: "no_data",
   nextTime: 1386493512,//下一个K线柱的时间 如果在请求期间无数据 (状态码为no_data)
}

状态error

{
   s: "error",
   errmsg: '商品错误提示信息',
}

 

基本的接口这四种即可,复杂的定制化参考官方文档

 

你可能感兴趣的:(tradingview)