# 3-1、如何连接我的数据
# 如何连接我的数据
- - - - - -
**图表库并不包含市场数据**,你必须提供所需格式的数据。示例使用了Quandl历史数据。图表可以用两种方式接收数据:
1. 使用推模型技术实时更新,例如通过WebSocket。这样你的图表将会自动更新价格。为了达到这个目的,你必须使用[JavaScript API](JS-Api.html)并且准备好自己的传输方法。
2. 使用拉模型/脉冲(pulse)/刷新为基础进行更新(如当今大多数基于Web的图表),其中图表数据每X秒更新一次(图表客户端将要求服务器模拟推模型更新),或者被用户手动重新加载。 为此,请使用[UDF协议](UDF.html)并编写自己的datafeed包装类。
### JavaScript API 或者 UDF?
![](https://box.kancloud.cn/202c80f8aa04762547d0eb715ee12b03_572x452.png)
## UDF scheme
![](https://box.kancloud.cn/f67cc0586d8af331deb5512a030c0bc7_732x357.png)
## JSAPI scheme
![](https://box.kancloud.cn/b0548874a12f0bf9c2099a4074c27f8f_732x357.png)
上图显示了UDF和JSAPI之间的区别。 必须的图表库部分是蓝色的。 红色的部分(默认数据传输)包含在默认包中(具有未压缩的源代码),并可以被替换。 您可以看到默认数据传输实现JS API来与图表交互。此外,默认传输实现了与服务器通信的UDF协议。
1. **如果您已经准备好了数据传输**(websocket流传输,轮询或任何其他传输), 或者如果您不需要流传输数据 - 请使用我们的[JavaScript API](JS-Api.html),这是非常紧凑和易于实现。 您必须使用JavaScript在数据传输和我们的图表之间创建一个小的 **客户端数据适配器**。
2. **如果您没有任何传输**,并且不需要流数据(例如,您只需要数据脉冲), 那么您将不得不创建(或使用)至少一个服务器端的datafeed包装类。 您可以使用任何语言和技术来实现这一目的:您的包装类只需要支持我们的数据交换协议(我们称之为[UDF](UDF.html)),以便能够为您的图表提供数据。 您必须使用自己喜欢的语言在后端和我们的图表之间创建一个小的 **服务器端数据适配器**。
### 示例
**UDF-compatible** 实现示例。可以在[github](https://github.com/tradingview/yahoo_datafeed)上获得, 是一个服务器端包装类的示例, 它使用Quandl数据。
**JS API** 实现示例(和UDF客户端同时)为图表库的一部分(请参阅 `/datafeeds/udf/`文件夹)。
- 序言
- 更新日志
- 1、Charting Library是什么
- 2-1、图表库内容
- 2-2、运行图表库
- 3-1、如何连接我的数据
- 3-2、JS Api
- 3-3、UDF
- 3-4、Symbology
- 3-5、交易时段
- 3-6、报价
- 4-1、定制概述
- 4-2、Widget构造器
- 4-3、Widget方法
- 4-4、图表方法
- 4-5、功能集
- 4-7、定制的使用案例
- 5-1、交易终端简介
- 5-2、交易控制器
- 5-3、经纪商API
- 5-4、交易主机
- 5-5、账户管理器
- 5-6、交易对象和常量
- 6、储存和载入图表
- 7、创建自定义指标
- 7、最佳做法
- 9、经常被问到的问题
- 10、版本变更点
- 周期
- 时间范围
- 本地化
- 覆盖
- 绘图覆盖
- 指标覆盖
- 形状与覆盖
- 订阅
- 交易元语
- 在K线上做标记
- 委托
- WatchedValue
- 指标API
- 形状API
- 容器API
- 价格坐标Api