- Widget构造器
- symbol, interval [必填项]
- timeframe
- container_id [必填项]
- datafeed [必填项]
- timezone
- debug
- library_path
- width, height
- fullscreen
- autosize
- symbol_search_request_delay
- auto_save_delay
- toolbar_bg
- study_count_limit
- studies_access
- drawings_access
- saved_data
- locale
- numeric_formatting
- customFormatters
- overrides
- disabled_features, enabled_features
- snapshot_url
- indicators_file_name
- preset
- studies_overrides
- time_frames
- charts_storage_url, client_id, user_id
- charts_storage_api_version
- load_last_chart
- custom_css_url (since 1.4)
- loading_screen (since 1.12)
- favorites
- save_load_adapter (since 1.12)
- settings_adapter (since 1.11)
- 交易终端专属" level="2"> 交易终端专属
- 也可以看看
Widget构造器
当调用构造函数时,您可以定义图表库widget的参数。例:
new TradingView.widget({
symbol: 'A',
interval: 'D',
timezone: "America/New_York",
container_id: "tv_chart_container",
locale: "ru",
datafeed: new Datafeeds.UDFCompatibleDatafeed("https://demo_feed.tradingview.com")
});
查看下列完整支持的参数列表。请记住,在图表初始化后在更改这些参数是不起作用的。如果要在初始化图表之后更改图表的状态,请使用widget方法。
属性标记为的只在交易终端可用。
symbol, interval [必填项]
您的图表的初始商品和间隔。间隔的格式在另一篇文章中说明。
timeframe
设置图表的初始时间范围。时间范围是加载并显示在屏幕上的K线范围。有效的时间范围是一个数字加一个字母,D为数天,M为数月。
container_id [必填项]
id
属性为指定要包含widget的DOM元素id。
datafeed [必填项]
JavaScript对象的实现接口 JS API 以反馈图表及数据。
timezone
图表的初始时区。时间刻度上的数字取决于这个时区。请参阅支持的时区列表。设置为交易所时区。覆盖默认值,您应该使用覆盖章节。
debug
将此属性设置为true时,可使图表将详细的API日志写入控制台。与功能集的charting_library_debug_mode
用法相同。
library_path
static
文件夹的路径
width, height
widget的尺寸,请确保widget拥有足够的空间。
Remark: 如果您想让图表占据所有可用的空间,请不要使用 ‘100%’ 这样的字段。使用fullscreen
参数来代替(见下文)。这是因为DOM节点在不同浏览器中有调整大小的问题。
fullscreen
布尔值显示图表是否占用窗口中所有可用的空间。
autosize
显示图表是否应占据容器中所有可用空间并在窗口调节大小时自动进行调整。 该参数介绍在1.3版本中被引入。
symbol_search_request_delay
在商品搜索按下键后请求之前,以毫秒为单位延迟。
auto_save_delay
延迟秒数等待 onAutoSaveNeeded
可以被再次调用。 该参数介绍在1.5版本中。
toolbar_bg
工具栏背景颜色
study_count_limit
自1.5版本起。
图表或多功能图布局的最大研究数量。最小值为2。
studies_access
版本:1.1具有以下结构的对象:
{
type: "black" | "white",
tools: [
{
name: "<study name>",
grayed: true
},
< ... >
]
}
type
是列表类型。 支持的值:black
(所有列出的项目会被禁用),white
(只有列出的项目会被启用)。tools
对象数组。每个对象可以具有以下属性:name
(强制的) 研究的名称。使用相同的名称,你可以看到他们在指标控件。grayed
布尔值,表明这项研究将可见,但看起来像是被禁用的。 如果研究为grayed
,当用户点击它时,会调用onGrayedObjectClicked
回调方法。
drawings_access
版本:1.1 该属性与上述的studies_access
具有相同的结构。 使用与您在UI中看到的名称相同的名称。
Remark: 基于字体的绘图有一个特殊情况。 使用Font Icons
的名字时, 这个组是一个特例,它的绘图不能被启用或禁用 - 可以启用或禁用整个组。
saved_data
JS对象包含保存的图表内容(JSON,请参阅下面的保存/加载调用)。如果在创建图表时已经有图表的JSON,请使用此参数。如果要将图表内容加载到已初始化的图表中,请使用loadData()
控件方法。
locale
图表库的本地化处理 。详情:本地化
numeric_formatting
该对象包含数字的格式化选项。目前唯一可能的选择是decimal_sign
。例:numeric_formatting: { decimal_sign: "," }
customFormatters
它是一个包含以下字段的对象:
- timeFormatter
- dateFormatter
您可以使用这些格式化方法自定义显示日期和时间的值。这两个值都是具有方法format
和formatLocal
的对象:
function format(date)
function formatLocal(date)
这些函数返回表示date或time的文本。formatLocal
将日期和时间转换为本地时区。
例:
customFormatters: {
timeFormatter: {
format: function(date) { var _format_str = '%h:%m'; return _format_str.replace('%h', date.getUTCHours(), 2). replace('%m', date.getUTCMinutes(), 2). replace('%s', date.getUTCSeconds(), 2); }
},
dateFormatter: {
format: function(date) { return date.getUTCFullYear() + '/' + date.getUTCMonth() + '/' + date.getUTCDate(); }
}
}
overrides
对Widget对象的默认属性进行覆盖。 覆盖属性意味着为其分配默认值。 您可以覆盖大部分图表的属性(也可以由用户通过UI编辑)使用overrides
参数构造控件 。overrides
应该是一个具有范围的对象。每个字段名是重写属性的名称,字段值是这些属性的期望值。例子:
overrides: {
"symbolWatermarkProperties.color": "rgba(0, 0, 0, 0)"
}
这个 override
将使水印100%不透明(不可见)。 所有可定制的属性都列在单独的文章中。 从1.5开始,您可以使用绘图覆盖。绘图覆盖.
disabled_features, enabled_features
包含功能在默认情况下启用/禁用名称的数组。功能表示图表功能的一部分(更是UI/UX的一部分)。 这里. 此处列出了支持的功能。 例:
TradingView.onready(function()
{
var widget = new TradingView.widget({
/* .... */
disabled_features: ["header_widget", "left_toolbar"],
});
});
snapshot_url
当用户按快照按钮时,使用base64编码将当前图表快照保存并返回URL。该服务返回完整的保存图像URL。
indicators_file_name
包含您编写的指标的文件路径。 查看更多细节。
preset
preset
是一组预定义窗口小部件设置的名称。预设中使用的所有设置也可以直接在窗口小部件的构造函数中使用。现在只支持mobile
预设。此预设的示例可在线获取。
studies_overrides
使用此选项自定义默认指标的样式及输入值。 您还可以使用此参数自定义Compare
系列的样式和输入值。 查看更多
time_frames
在图表底部的时间范围选择器中可以看见这个时间范围列表。 例:
time_frames: [
{ text: "50y", resolution: "6M", description: "50 Years" },
{ text: "3y", resolution: "W", description: "3 Years", title: "3yr" },
{ text: "8m", resolution: "D", description: "8 Month" },
{ text: "3d", resolution: "5", description: "3 Days" },
{ text: "1000y", resolution: "W", description: "All", title: "All" },
]
时间范围是一个包含text
和resolution属性的对象。文本必须具有以下格式:<integer><y|m|d>
( \d+(y|m|d) 为正则表达式 ). 分辨率是具有通用分辨率格式的字符串. 请参阅本主题了解有关时间范围的更多信息。在1.7中添加了描述属性,并显示在弹出菜单中。此参数是可选的(如果时间范围描述符不包含此属性:title(如果指定)或使用)。title属性在1.9中添加,此值将覆盖从text属性生成的默认标题。 此参数是可选的。
charts_storage_url, client_id, user_id
这些参数是有关于高阶图表的保存/加载。 查看更多细节.
charts_storage_api_version
您的后台版本。支持的值:"1.0"
|"1.1"
。 指标模板从1.1
开始得到支持。
load_last_chart
将此参数设置为true
如果您希望库加载用户的最后一张图表(您也应该具有[save/load|Saving-and-Loading-Charts])。
custom_css_url (since 1.4)
将您的自定义CSS添加到图表中。url应该是到’static`文件夹的绝对或相对路径。
loading_screen (since 1.12)
定制加载进度条。值是具有以下可能 key
的对象。
backgroundColor
foregroundColor
Example:
loading_screen: { backgroundColor: "#000000" }
favorites
默认支持该项目。此选项需要禁用localstorage的使用(请参阅功能集以了解更多)。favorites
property 为一个对象,拥有以下属性:
- intervals(间隔): 收藏的间隔数组。 例:
["D", "2D"]
- chartTypes(图表类型): 收藏的图表类型数组 。图表类型名称与图表的UI中的英文版本相同。 例:
["Area", "Candles"]
save_load_adapter (since 1.12)
包含保存/加载功能的对象。 如果设置了,应有以下方法:
Chart layouts
getAllCharts(): Promise<ChartMetaInfo[]>
获取所有保存的图表。
ChartMetaInfo
具有以下字段的对象:id
- 图表idname
- 图表名symbol
- 图表的商品resolution
- 分辨率timestamp
- 最后修改日期(从01/01/2015 UTC午夜开始的毫秒数)。
removeChart(chartId): Promise<void>
删除图表。
chartId
是图表的唯一ID(参见上面的getAllCharts
)。saveChart(chartData: ChartData): Promise<ChartId>
存储图表。
ChartData
具有以下字段的对象:id
- 图表的唯一标识(如果未保存则可能是undefined
)。name
- 图表名symbol
- 图表的商品resolution
- 分辨率content
- 图表的内容
ChartId
- 图表唯一id (string)getChartContent(chartId): Promise<ChartContent>
通过服务器加载图表
ChartContent
带有图表内容的字符串(参见saveChart
函数中的ChartData :: content
字段)。
Study Templates
getAllStudyTemplates(): Promise<StudyTemplateMetaInfo[]>
获取所有保存的研究模板。
StudyTemplateMetaInfo
具有以下字段的对象:name
- 研究模板名称
removeStudyTemplate(studyTemplateInfo: StudyTemplateMetaInfo): Promise<void>
删除研究模板
saveStudyTemplate(studyTemplateData: StudyTemplateData): Promise<void>
存储研究模板
StudyTemplateData
具有以下字段的对象:name
- 研究模板名称content
- 研究模板的内容
getStudyTemplateContent(studyTemplateInfo: StudyTemplateMetaInfo): Promise<StudyTemplateContent>
通过服务器加载研究模板
StudyTemplateContent
- 研究模板的内容 (string)如果同时设置了
charts_storage_url
和save_load_adapter
将被设置 -save_load_adapter
重要: 所有函数应该返回
Promise
(或Promise
类对象)。
settings_adapter (since 1.11)
包含设置/删除的方法。 使用它将图表设置保存到您的首选存储,包括服务器端。 如果设置了,应该有以下方法:
initialSettings: Object
初始化设置setValue(key: string, value: string): void
存储键/值对removeValue(key: string): void
删除键
交易终端专属" class="reference-link"> 交易终端专属
组件工具栏" class="reference-link"> 组件工具栏
该对象包含图表右侧窗口小部件栏的设置。 右侧窗口小部件栏中的数据窗口,观察列表和详细信息选项卡可以使用Widget构造函数中的widgetbar 开启此功能:
widgetbar: {
details: true,
watchlist: true,
watchlist_settings: {
default_symbols: ["NYSE:AA", "NYSE:AAL", "NASDAQ:AAPL"],
readonly: false
}
}
- details: 启用右侧窗口小部件栏中的详细信息窗口小部件。
- watchlist: 启用右侧小部件栏中的观察列表小部件。
- watchlist_settings.default_symbols <[]>: 给观察列表设置商品数组。
- **watchlist_settings.readonly: 给观察列表开启只读模式。
rss_news_feed" class="reference-link"> rss_news_feed
使用此属性更改RSS新闻。 您可以为每个商品类型设置不同的rss,或为每个商品使用一个rss。 对象将拥有default
属性,其他属性是可选的; 它们的名字为商品的类型. 每个属性都拥有一个对象(或对象数组) 并且具有以下属性:
url
请求的URL。 它可以包含以下花括号中的标签(将会被终端所更改):{SYMBOL}
,{TYPE}
,{EXCHANGE}。
name 在每一个新闻的底部显示一个反馈。
例:
{
"default": [ {
url: "https://articlefeeds.nasdaq.com/nasdaq/symbols?symbol={SYMBOL}",
name: "NASDAQ"
}, {
url: "http://feeds.finance.yahoo.com/rss/2.0/headline?s={SYMBOL}®ion=US&lang=en-US",
name: "Yahoo Finance"
} ]
}
另一个例子:
{
"default": {
url: "https://articlefeeds.nasdaq.com/nasdaq/symbols?symbol={SYMBOL}",
name: "NASDAQ"
}
}
更多例子:
{
"default": {
url: "https://articlefeeds.nasdaq.com/nasdaq/symbols?symbol={SYMBOL}",
name: "NASDAQ"
},
"stock": {
url: "http://feeds.finance.yahoo.com/rss/2.0/headline?s={SYMBOL}®ion=US&lang=en-US",
name: "Yahoo Finance"
}
}
news_provider" class="reference-link"> news_provider
代表新闻提供者的对象。 它可能包含以下属性:
is_news_generic
- 如果为true
新闻小部件的标题将不会有产品名称 (只有Headlines
). 否则SYMBOL_NAME
将会被添加。get_news
- 使用此属性设置自己的新闻 getter 方法.symbol
和callback
将会传递给此方法。回调函数被调用时,会传递一下结构的新闻对象:
title
(必须) - 新闻项目标题。published
(必须) - 新闻项目时间(以ms为单位)source
(可选) - 标题的新闻项目来源。shortDescription
(可选) - 将显示的新闻项目的简短说明。link
(可选) - 新闻URLfullDescription
(可选) - 新闻项目的完整描述(正文)
注意:当用户点击新闻项目时,将打开带有
link
URL的新标签页。 如果没有指定link
,将显示带有fullDescription
的对话框弹出窗口。注意2:如果它设置为
rss_news_feed
则将会被忽略。
例:
news_provider: {
is_news_generic: true,
get_news: function(symbol, callback) {
callback([
{
title: 'It is news for symbol ' + symbol,
shortDescription: 'Short description of the news item',
fullDescription: 'Full description of the news item',
published: new Date().valueOf(),
source: 'My own news source',
link: 'https://www.tradingview.com/'
},
{
title: 'Another news for symbol ' + symbol,
shortDescription: 'Short description of the news item',
fullDescription: 'Full description of the news item. Very long long long long long long long long text.',
published: new Date().valueOf(),
source: 'My own news source',
}
]);
}
}
trading_controller" class="reference-link"> trading_controller
交易控制器可以让您在线交易。阅读更多
new TradingView.widget({
/* ... */
trading_controller: new MyTradingController()
});
brokerFactory" class="reference-link"> brokerFactory
使用这个字段来传递构造经纪商API的实现函数。
这是一个接收交易主机并返回经纪商API的函数。
brokerConfig" class="reference-link"> brokerConfig
brokerConfig: { configFlags: {...} }
使用此字段设置交易终端的配置标志。 了解更多