当调用构造函数时,您可以定义图表库widget的参数。例:
new TradingView.widget({
symbol: 'A',
interval: '1D',
timezone: "America/New_York",
container: "tv_chart_container",
locale: "ru",
datafeed: new Datafeeds.UDFCompatibleDatafeed("https://demo_feed.tradingview.com"),
library_path: "charting_library/"
});
查看下列完整支持的参数列表。请记住,在图表初始化后在更改这些参数是不起作用的。如果要在初始化图表之后更改图表的状态,请使用widget方法。
- 图表库和交易终端
- symbol, interval*
- container*
- datafeed*
- library_path*
- timeframe
- 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
- saved_data_meta_info
- locale
- numeric_formatting
- custom_formatters
- overrides
- disabled_features, enabled_features
- snapshot_url
- custom_indicators_getter
- preset
- studies_overrides
- time_frames
- charts_storage_url, client_id, user_id
- charts_storage_api_version
- load_last_chart
- theme
- custom_css_url
- loading_screen
- favorites
- save_load_adapter
- settings_adapter
- compare_symbols
- additional_symbol_info_fields
- header_widget_buttons_mode
- time_scale
- 交易终端
您的图表的初始商品和周期。interval
的格式在另一篇文章中说明。 必须项
symbol: 'A',
interval: '1D',
container
可以是对 DOM 元素的属性的引用,带有图表的 iframe 将被放置在其中,也可以是对 HTMLElement 本身的引用。
container: "tv_chart_container",
或者
container: document.getElementById("tv_chart_container"),
实现(JS API)接口以向图表提供数据的JavaScript对象。
datafeed: new Datafeeds.UDFCompatibleDatafeed("https://demo_feed.tradingview.com")
设置图表的初始时间范围。时间范围是加载并显示在屏幕上的K线范围。有效的时间范围是一个数字加一个字母,D为数天,M为数月。
timeframe: '3M',
图表的初始时区。时间刻度上的数字取决于这个时区。请参阅支持的时区列表。设置为交易所时区。覆盖默认值,您应该使用覆盖章节。
timezone: "America/New_York",
将此属性设置为 true
时,可使图表将详细的API日志写入控制台。与功能集的charting_library_debug_mode
用法相同。
debug: true,
static
文件夹的路径
library_path: "charting_library/",
widget的尺寸,请确保widget拥有足够的空间。
width: 300,
height: 600,
Remark: 如果您想让图表占据所有可用的空间,请不要使用 100%
这样的字段。使用fullscreen
参数来代替(见下文)。这是因为DOM节点在不同浏览器中有调整大小的问题。
默认值: false
布尔值显示图表是否占用窗口中所有可用的空间。
fullscreen: true,
默认值: false
布尔值,显示图表是否应使用窗格中的所有可用空间,并在调整窗格本身大小时自动调整大小。
autosize: true,
延迟阈值(以毫秒为单位),用于在用户在搜索框中键入商品名称时减少商品搜索请求的数量。
symbol_search_request_delay: 1000,
延迟秒数等待 onAutoSaveNeeded
可以被再次调用。 该参数介绍在1.5版本中。
auto_save_delay: 5,
工具栏背景颜色
toolbar_bg: '#f4f7f9',
自1.5版本起。
多图布局图表的最大指标数量。 最小值为2。
study_count_limit: 5,
版本:1.1具有以下结构的对象:
{
type: "black" | "white",
tools: [
{
name: "<study name>",
grayed: true
},
< ... >
]
}
type
是列表类型。 支持的值:black
(所有列出的项目会被禁用),white
(只有列出的项目会被启用)。tools
对象数组。每个对象可以具有以下属性:name
(强制的) 指标的名称。使用相同的名称,你可以看到他们在指标控件。grayed
布尔值,表明这项指标将可见,但看起来像是被禁用的。 如果指标为grayed
,当用户点击它时,会调用onGrayedObjectClicked
回调方法。
版本:1.1 该属性与上述的studies_access
具有相同的结构。 使用与您在UI中看到的名称相同的名称。
drawings_access: {
type: 'black',
tools: [
{
name: 'Trend Line',
grayed: true
},
]
},
Remark: 基于字体的绘图有一个特殊情况。 使用Font Icons
的名字时, 这个组是一个特例,它的绘图不能被启用或禁用 - 可以启用或禁用整个组。
包含已保存图表内容的 JS 对象。如果您已经保存了图表,则在创建widget时使用此参数。如果要在图表初始化时加载图表内容,请使用widget的 load() 方法 。
包含保存的图表内容元信息的 JS 对象。 此对象应具有以下字段:
uid
:图表的唯一整数标识符name
:保存的图表名称description
:保存的图表描述
图表库的本地化处理 。详情:本地化
locale: 'en',
该对象包含数字的格式化选项。目前唯一可能的选择是decimal_sign
。
numeric_formatting: { decimal_sign: "," },
它是一个包含以下字段的对象:
- 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(); }
}
}
对Widget对象的默认属性进行覆盖。 覆盖属性意味着为其分配默认值。 您可以覆盖大部分图表的属性(也可以由用户通过UI编辑)使用overrides
参数构造控件 。overrides
应该是一个具有范围的对象。每个字段名是重写属性的名称,字段值是这些属性的期望值。例子:
overrides: {
"mainSeriesProperties.style": 0
}
这个 override
将使水印100%不透明(不可见)。 所有可定制的属性都列在单独的文章中。 从1.5开始,您可以使用绘图覆盖。绘图覆盖.
包含功能在默认情况下启用/禁用名称的数组。功能表示图表功能的一部分(更是UI/UX的一部分)。 这里. 此处列出了支持的功能。 例:
TradingView.onready(function()
{
var widget = new TradingView.widget({
/* .... */
disabled_features: ["header_widget", "left_toolbar"],
enabled_features: ["move_logo_to_main_pane"]
});
});
当用户按快照按钮时,使用base64编码将当前图表快照保存并返回URL。该服务返回完整的保存图像URL。
snapshot_url: "https://myserver.com/snapshot",
返回带有自定义指标数组的Promise对象的函数。
PineJS
变量将作为此函数的第一个参数传递,并可在指标内用于访问内部帮助函数。
查看更多细节。
custom_indicators_getter: function(PineJS) {
return Promise.resolve([
// *** your indicator object, created from the template ***
]);
},
preset
是一组预定义widget设置的名称。现在预设中只支持mobile
。此预设的示例可在线获取。
preset: "mobile",
使用此选项自定义默认指标的样式及输入值。 您还可以使用此参数自定义Compare
数据列的样式和输入值。 查看更多
studies_overrides: {
"volume.volume.color.0": "#00FFFF",
},
可以在图表底部选择的可见时间范围列表。请参阅本主题,以了解有关时间范围的更多信息。时间范围是一个包含以下属性的对象:
text
- 具有以下格式的字符串:<integer><y|m|d>
( \d+(y|m|d) as Regex ).。它定义了要设置的范围。resolution
- 具有 这里描述格式的字符串。它定义了要设置的分辨率。description
(可选) - 在弹出菜单中显示的字符串。如果未设置,则使用该title
属性。title
(可选) - 时间范围的字符串表示形式。如果未设置,则根据text
属性生成标题。
在图表底部的时间范围选择器中可以看见这个时间范围列表。 例:
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" },
]
这些参数与用于保存/加载的高级API相关。 查看更多细节。
charts_storage_url: 'http://storage.yourserver.com',
client_id: 'yourserver.com',
user_id: 'public_user_id',
您的后台版本。支持的值:"1.0"
|"1.1"
。 指标模板从1.1
开始得到支持。
charts_storage_api_version: "1.1",
如果您希望图表库为用户加载上次保存的图表,请将此参数设置为 true
(您应首先实现save/load以使其工作)。
load_last_chart: true,
从1.13版开始支持。
为图表添加自定义主题颜色。 支持的值是: "Light"
| "Dark"
.
theme: "Light",
从1.4版开始支持。
将您的自定义CSS添加到图表中。url应该是到static
文件夹的绝对或相对路径。
custom_css_url: 'css/style.css',
从1.12版开始支持。
定制加载进度条。值是具有以下可能 key
的对象。
backgroundColor
foregroundColor
例如:
loading_screen: { backgroundColor: "#000000" }
默认标记为收藏的项目。此选项使用时要求禁用localstorage(请参阅功能集以了解更多)。favorites
属性为一个对象,拥有以下属性:
- intervals(周期): 收藏的周期数组。 例:
["D", "2D"]
- chartTypes(图表类型): 收藏的图表类型数组 。图表类型名称与图表的UI中的英文版本相同。 例:
["Area", "Candles"]
favorites: {
intervals: ["1D", "3D", "3W", "W", "M"],
chartTypes: ["Area", "Line"]
},
包含保存/加载功能的对象。它用于实现自定义的保存/加载功能。请在保存和加载图表页面上查看详细信息和示例。
从1.11版开始支持。
包含设置/删除方法的对象。 使用它将图表设置保存到您想要存储的地方,包括服务器端。 如果设置了,应该有以下方法:
-
initialSettings: Object
初始化设置对象 -
setValue(key: string, value: string): void
调用以存储键/值对 -
removeValue(key: string): void
调用以删除键
从版本17开始。
一个可选字段,其中包含“比较”窗口的自定义比较商品数组。 每个商品信息应包含以下字段:
symbol
- 定义要比较的商品id字符串title
- ,将在相应复选框附近显示的商品名称
compare_symbols: [
{ symbol: 'DAL', title: 'Delta Air Lines' },
{ symbol: 'VZ', title: 'Verizon' },
...
];
包含一组自定义交易商品信息字段的可选字段,这些字段将显示在交易商品信息对话框中。 每个附加交易商品信息字段应具有以下属性:
title
- 用作新商品信息名称的字符串propertyName
- 用于从图表datafeed返回的交易商品信息中查找属性的字符串
有关商品信息的更多信息,请参阅 商品体系。
additional_symbol_info_fields: [
{ title: 'Ticker', propertyName: 'ticker' }
]
用于更改顶部工具栏上按钮外观的附加可选字段。 模式可以是以下几种:
fullsize
: 顶部工具栏上显示全屏按钮adaptive
: 自适应/自动模式(如果窗口宽度允许,则为全屏,小窗口时显示图标)。compact
: 顶部工具栏上的仅图标按钮(不会显示收藏夹)
默认情况下(如果省略选项)标题将处于自适应模式(如果窗口宽度允许,则为全屏,小窗口时显示图标)。
header_widget_buttons_mode: 'fullsize',
在屏幕上添加更多K线的附加可选字段。 目前唯一可用的子选项是:
min_bar_spacing
: number - 应该大于 0。
time_scale: {
min_bar_spacing: 10,
}
仅适用于交易终端
含图表右侧窗口小部件面板设置的对象。可以使用Widget构造函数中的“widgetbar”字段启用图表右侧的监视列表,新闻和详细信息窗口小部件:
包含图表右侧小部件面板设置的对象。 图表右侧的监视列表、新闻、详细信息和数据窗口小部件可以使用小部件构造函数中的 widgetbar
字段启用:
widgetbar: {
details: true,
watchlist: true,
news: true,
datawindow: true,
watchlist_settings: {
default_symbols: ["NYSE:AA", "NYSE:AAL", "NASDAQ:AAPL"],
readonly: false
}
}
details
(default:false
): 在右侧的小部件面板中启用详细信息小部件。watchlist
(default:false
): 在右侧的小部件面板中启用观察列表小部件。news
(default:false
): 在右侧的小部件面板中启用新闻小部件。datawindow
(default:false
): :在右侧的小部件面板中启用数据窗口小部件。watchlist_settings.default_symbols
(default:[]
): 设置监视列表的默认商品列表。watchlist_settings.readonly
(default:false
): 为监视列表启用只读模式。
仅适用于交易终端
使用此属性更改新闻的RSS源。 您可以为每个商品类型设置不同的RSS。或为所以商品使用同一个RSS。该对象将拥有default
属性,其他属性是可选的; 属性的名称与商品类型匹配。每个属性都是具有以下属性的对象(或对象数组):
url
请求的URL。 它可以包含以下花括号中的标签(将会被终端所更改):{SYMBOL}
,{TYPE}
,{EXCHANGE}。
name
要在新闻下面显示的Feed名称。
例:
{
"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"
}
}
仅适用于交易终端
使用此属性设置您自己的新闻获取功能。 symbol
和 callback
都将传递给函数。
应使用对象调用回调函数。该对象应该有两个属性:title
是一个可选字符串,以及 newsItems
是一个具有以下结构的新闻对象数组:
title
(必须) - 新闻标题。published
(必须) - 新闻时间(以毫秒为单位的UTC时间)source
(可选) - 标题的新闻来源。shortDescription
(可选) - 将在标题下显示的新闻项目的简短描述。link
(可选) - 新闻报道的URLfullDescription
(可选) - 新闻项目的完整描述(正文)
注意: 只有 title
和 published
是用于比较已发布内容和新内容的主要属性。
注意2: 当用户点击新闻项目时,将打开一个带有 link
URL 的新标签。 如果未指定 link
,则会显示带有 fullDescription
的弹出对话框。
注意3: 如果 news_provider
和 rss_news_feed
都可用,那么 rss_news_feed
将被忽略。
使用示例参见新闻API示例。
仅适用于交易终端
使用这个字段来传递构造经纪商API的实现类。 这是一个接收交易主机并返回经纪商API的方法。
broker_factory: function(host) { ... }
仅适用于交易终端
使用此字段设置交易终端的配置标志。 了解更多。
broker_config: {
supportReversePosition: true,
supportPLUpdate: true,
...
},