TradingView 使用UDF方式 實現k線 接口的參數詳細配置

tradingview開發

使用UDF方式(通用數據反饋)實現k線

因爲tradingview 圖表自身會去自動調用接口數據,所以需要後端需要提供以下4個接口,而且接口名稱必須保持一致(目前未在源碼中找到在哪修改接口名字的地方)

本文不囉嗦那麼多,想看詳細解釋和更多配置可以查看官方文檔,此處僅對前後端數據交互進行概述

api調用

接口一:Datafeed 配置數據接口

接口名稱 /config,傳參方式:get

Request:GET /config

 接口返回數據:

{
    supports_search: false,//是否支持商品查詢和人商品解析邏輯
    supports_group_request: true,//只提供所有商品集合的完整信息,並且無法進行商品搜索或單個商品解析,並且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=<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=<ticker_name>&from=<unix_timestamp>&to=<unix_timestamp>&resolution=<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: '商品錯誤提示信息',
}

 

基本的接口這四種即可,複雜的定製化參考官方文檔

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章