Interface: IChartWidgetApi
Charting Library.IChartWidgetApi
The main chart API.
This interface can be retrieved by using the following widget (IChartingLibraryWidget) methods:
chart(IChartingLibraryWidget.chart)activeChart(IChartingLibraryWidget.activeChart)
Methods
applyLineToolsState
▸ applyLineToolsState(state): Promise<void>
Apply line tools state to the chart which will restore the drawings from the saved content.
This method requires that the saveload_separate_drawings_storage featureset is enabled.
Parameters
| Name | Type | 
|---|---|
state | LineToolsAndGroupsState | 
Returns
Promise<void>
applyStudyTemplate
▸ applyStudyTemplate(template): void
Apply a study template to the chart.
Example
widget.activeChart().applyStudyTemplate(template);
Parameters
| Name | Type | Description | 
|---|---|---|
template | object | A study template object. | 
Returns
void
availableZOrderOperations
▸ availableZOrderOperations(sources): AvailableZOrderOperations
Get an object with operations available for the specified set of entities.
Example
widget.activeChart().availableZOrderOperations([id]);
Parameters
| Name | Type | Description | 
|---|---|---|
sources | readonly EntityId[] | An array of entity IDs. | 
Returns
barTimeToEndOfPeriod
▸ barTimeToEndOfPeriod(unixTime): number
Get the bar time to the end of the period
Parameters
| Name | Type | Description | 
|---|---|---|
unixTime | number | date timestamp | 
Returns
number
bringForward
▸ bringForward(sources): void
Move the sources one level up in the Z-order.
Example
widget.activeChart().bringForward([id]);
Parameters
| Name | Type | Description | 
|---|---|---|
sources | readonly EntityId[] | An array of source IDs. | 
Returns
void
bringToFront
▸ bringToFront(sources): void
Move the sources to the top of the Z-order.
Example
widget.activeChart().bringToFront([id]);
Parameters
| Name | Type | Description | 
|---|---|---|
sources | readonly EntityId[] | An array of source IDs. | 
Returns
void
canZoomOut
▸ canZoomOut(): boolean
Check if the chart can be zoomed out using the zoomOut method.
Example
if(widget.activeChart().canZoomOut()) {
    widget.activeChart().zoomOut();
};
Returns
boolean
true if the chart can be zoomed out.
cancelSelectBar
▸ cancelSelectBar(): void
Cancel any active bar selection requests.
Example
widget.activeChart().cancelSelectBar();
Returns
void
chartType
▸ chartType(): SeriesType
Returns the main series style type.
console.log(widget.activeChart().chartType());
Returns
clearMarks
▸ clearMarks(marksToClear?): void
Remove marks from the chart.
Example
widget.activeChart().clearMarks();
Parameters
| Name | Type | Description | 
|---|---|---|
marksToClear? | ClearMarksMode | type of marks to clear. If nothing is specified both bar & timescale marks will be removed. | 
Returns
void
createAnchoredShape
▸ createAnchoredShape<TOverrides>(position, options): EntityId
Create a new anchored drawing. Anchored drawings maintain their position when the chart's visible range changes.
Example
widget.createAnchoredShape({ x: 0.1, y: 0.9 }, { shape: 'anchored_text', text: 'Hello, charts!', overrides: { color: 'green' }});
For more information, refer to Drawings API.
Type parameters
| Name | Type | 
|---|---|
TOverrides | extends object | 
Parameters
| Name | Type | Description | 
|---|---|---|
position | PositionPercents | Percent-based x and y position of the new drawing, relative to the top left of the chart. | 
options | CreateAnchoredShapeOptions<TOverrides> | An options object for the new drawing. | 
Returns
createExecutionShape
▸ createExecutionShape(options?): IExecutionLineAdapter
Creates a new trade execution on the chart.
Example
widget.activeChart().createExecutionShape()
    .setText("@1,320.75 Limit Buy 1")
    .setTooltip("@1,320.75 Limit Buy 1")
    .setTextColor("rgba(0,255,0,0.5)")
    .setArrowColor("#0F0")
    .setDirection("buy")
    .setTime(widget.activeChart().getVisibleRange().from)
    .setPrice(160);
Parameters
| Name | Type | Description | 
|---|---|---|
options? | UndoOptions | Optional undo options. | 
Returns
An API object for interacting with the execution.
createMultipointShape
▸ createMultipointShape<TOverrides>(points, options): EntityId
Create a new multi point drawing.
Example
const from = Date.now() / 1000 - 500 * 24 * 3600; // 500 days ago
const to = Date.now() / 1000;
widget.activeChart().createMultipointShape(
    [{ time: from, price: 150 }, { time: to, price: 150 }],
    {
        shape: "trend_line",
        lock: true,
        disableSelection: true,
        disableSave: true,
        disableUndo: true,
        text: "text",
    }
);
For more information, refer to Drawings API.
Type parameters
| Name | Type | 
|---|---|
TOverrides | extends object | 
Parameters
| Name | Type | Description | 
|---|---|---|
points | ShapePoint[] | An array of points that define the drawing. | 
options | CreateMultipointShapeOptions<TOverrides> | An options object for the new drawing. | 
Returns
The ID of the new drawing if it was created successfully, or null otherwise.
createOrderLine
▸ createOrderLine(options?): IOrderLineAdapter
Create a new trading order on the chart.
Example
widget.activeChart().createOrderLine()
    .setTooltip("Additional order information")
    .setModifyTooltip("Modify order")
    .setCancelTooltip("Cancel order")
    .onMove(function() {
        this.setText("onMove called");
    })
    .onModify("onModify called", function(text) {
        this.setText(text);
    })
    .onCancel("onCancel called", function(text) {
        this.setText(text);
    })
    .setText("STOP: 73.5 (5,64%)")
    .setQuantity("2");
Parameters
| Name | Type | Description | 
|---|---|---|
options? | UndoOptions | Optional undo options. | 
Returns
An API object for interacting with the order.
createPositionLine
▸ createPositionLine(options?): IPositionLineAdapter
Creates a new trading position on the chart.
Example
widget.chart().createPositionLine()
    .onModify(function() {
        this.setText("onModify called");
    })
    .onReverse("onReverse called", function(text) {
        this.setText(text);
    })
    .onClose("onClose called", function(text) {
        this.setText(text);
    })
    .setText("PROFIT: 71.1 (3.31%)")
    .setTooltip("Additional position information")
    .setProtectTooltip("Protect position")
    .setCloseTooltip("Close position")
    .setReverseTooltip("Reverse position")
    .setQuantity("8.235")
    .setPrice(160)
    .setExtendLeft(false)
    .setLineStyle(0)
    .setLineLength(25);
Parameters
| Name | Type | Description | 
|---|---|---|
options? | UndoOptions | Optional undo options. | 
Returns
An API object for interacting with the position.
createShape
▸ createShape<TOverrides>(point, options): EntityId
Create a new single point drawing.
Example
widget.activeChart().createShape({ time: 1514764800 }, { shape: 'vertical_line' });
For more information, refer to Drawings API.
Type parameters
| Name | Type | 
|---|---|
TOverrides | extends object | 
Parameters
| Name | Type | Description | 
|---|---|---|
point | ShapePoint | A point. The location of the new drawing. | 
options | CreateShapeOptions<TOverrides> | An options object for the new drawing. | 
Returns
The ID of the new drawing if it was created successfully, or null otherwise.
createStudy
▸ createStudy<TOverrides>(name, forceOverlay?, lock?, inputs?, overrides?, options?): Promise<EntityId>
Adds an indicator or a symbol for comparison to the chart. For more information, refer to the Indicators article.
Type parameters
| Name | Type | 
|---|---|
TOverrides | extends Partial<SingleIndicatorOverrides> | 
Parameters
| Name | Type | Description | 
|---|---|---|
name | string | name of an indicator as shown in the Indicators widget | 
forceOverlay? | boolean | forces the Charting Library to place the created indicator on the main pane | 
lock? | boolean | whether a user will be able to remove/change/hide the indicator or not | 
inputs? | Record<string, StudyInputValue> | From version v22, it's an object containing named properties from the indicator properties dialog. | 
overrides? | TOverrides | An object that contains overrides for a new indicator. Note that you should not specify the indicator name. Overrides for built-in indicators are listed in SingleIndicatorOverrides. | 
options? | CreateStudyOptions | study creation options | 
Returns
Promise<EntityId>
ID of the created study
createStudyTemplate
▸ createStudyTemplate(options): object
Save the current study template to a object.
Example
const options = { saveSymbol: true, saveInterval: true };
const template = widget.activeChart().createStudyTemplate(options);
Parameters
| Name | Type | Description | 
|---|---|---|
options | CreateStudyTemplateOptions | An object of study template options. | 
Returns
object
A study template object.
crossHairMoved
▸ crossHairMoved(): ISubscription<(params: CrossHairMovedEventParams) => void>
Get a subscription object for the crosshair moving over the chart.
Example
widget.activeChart().crossHairMoved().subscribe(
    null,
    ({ time, price }) => console.log(time, price)
);
Returns
ISubscription<(params: CrossHairMovedEventParams) => void>
A subscription object for the crosshair moving over the chart.
dataReady
▸ dataReady(callback?): boolean
Provide a callback function that will be called when chart data is loaded. If chart data is already loaded when this method is called, the callback is called immediately.
Example
widget.activeChart().dataReady(() => {
    // ...
}
Parameters
| Name | Type | Description | 
|---|---|---|
callback? | () => void | A callback function called when chart data is loaded. | 
Returns
boolean
endOfPeriodToBarTime
▸ endOfPeriodToBarTime(unixTime): number
Get the end of period to bar time
Parameters
| Name | Type | Description | 
|---|---|---|
unixTime | number | date timestamp | 
Returns
number
executeActionById
▸ executeActionById(actionId): void
Execute an action.
Example
// ...
widget.activeChart().executeActionById("undo");
// ...
widget.activeChart().executeActionById("drawingToolbarAction"); // Hides or shows the drawing toolbar
// ...
Parameters
| Name | Type | Description | 
|---|---|---|
actionId | ChartActionId | An action ID. | 
Returns
void
exportData
▸ exportData(options?): Promise<ExportedData>
Export the current data from the chart.
Example
// Exports series' data only
widget.activeChart().exportData({ includeTime: false, includedStudies: [] });
// Exports series' data with times
widget.activeChart().exportData({ includedStudies: [] });
// Exports series' data with with user time
widget.activeChart().exportData({ includeTime: false, includeUserTime: true, includedStudies: [] });
// Exports data for the indicator which ID is STUDY_ID
widget.activeChart().exportData({ includeTime: false, includeSeries: false, includedStudies: ['STUDY_ID'] });
// Exports all available data from the chart
widget.activeChart().exportData({ includeUserTime: true });
// Exports series' data before 2018-01-01
widget.activeChart().exportData({ includeTime: false, to: Date.UTC(2018, 0, 1) / 1000 });
// Exports series' data after 2018-01-01
widget.activeChart().exportData({ includeTime: false, from: Date.UTC(2018, 0, 1) / 1000 });
// Exports series' data in the range between 2018-01-01 and 2018-02-01
widget.activeChart().exportData({ includeTime: false, from: Date.UTC(2018, 0, 1) / 1000, to: Date.UTC(2018, 1, 1) / 1000 });
// Exports all displayed data on the chart
widget.activeChart().exportData({ includeDisplayedValues: true });
Parameters
| Name | Type | Description | 
|---|---|---|
options? | Partial<ExportDataOptions> | Optional object of options to control the exported data. | 
Returns
Promise<ExportedData>
A promise that resolves with the exported data.
getAllPanesHeight
▸ getAllPanesHeight(): number[]
Get an array of the heigh of all panes.
Example
console.log(widget.activeChart().getAllPanesHeight());
Returns
number[]
An array of heights.
getAllShapes
▸ getAllShapes(): EntityInfo[]
Get an array of IDs and name for all drawings on the chart.
Example
widget.activeChart().getAllShapes().forEach(({ name }) => console.log(name));
Returns
An array of drawing information.
getAllStudies
▸ getAllStudies(): EntityInfo[]
Get an array of IDs and names for all studies on the chart.
Example
widget.activeChart().getAllStudies().forEach(({ name }) => console.log(name));
Returns
An array of study information.
getCheckableActionState
▸ getCheckableActionState(actionId): boolean
Get the state of a checkable action.
Example
if (widget.activeChart().getCheckableActionState("drawingToolbarAction")) {
    // ...
};
Parameters
| Name | Type | Description | 
|---|---|---|
actionId | ChartActionId | An action ID. | 
Returns
boolean
true if the action is checked, false otherwise.
getLineToolsState
▸ getLineToolsState(): LineToolsAndGroupsState
Get the line tools state containing the drawings on the active chart.
This method requires that the saveload_separate_drawings_storage featureset is enabled.
Returns
getPanes
▸ getPanes(): IPaneApi[]
Get an array of API objects for interacting with the chart panes.
Example
widget.activeChart().getPanes()[1].moveTo(0);
Returns
IPaneApi[]
getPriceToBarRatio
▸ getPriceToBarRatio(): number
Get the chart's price to bar ratio.
Example
console.log(widget.activeChart().getPriceToBarRatio());
Returns
number
The ratio or null if no ratio is defined.
getSeries
▸ getSeries(): ISeriesApi
Get the main series.
Example
widget.activeChart().getSeries().setVisible(false);
Returns
An API object for interacting with the main series.
getShapeById
▸ getShapeById(entityId): ILineDataSourceApi
Get a drawing by ID.
Example
widget.activeChart().getShapeById(id).bringToFront();
For more information, refer to Drawings API.
Parameters
| Name | Type | Description | 
|---|---|---|
entityId | EntityId | A drawing ID. | 
Returns
An API object for interacting with the drawing.
getStudyById
▸ getStudyById(entityId): IStudyApi
Get a study by ID.
Example
widget.activeChart().getStudyById(id).setVisible(false);
Parameters
| Name | Type | Description | 
|---|---|---|
entityId | EntityId | The study ID. | 
Returns
An API object for interacting with the study.
getTimeScale
▸ getTimeScale(): ITimeScaleApi
Get an API object for interacting with the timescale.
Example
var time = widget.activeChart().getTimeScale().coordinateToTime(100);
Returns
getTimezoneApi
▸ getTimezoneApi(): ITimezoneApi
Get an API object for interacting with the chart timezone.
Returns
getVisibleRange
▸ getVisibleRange(): VisibleTimeRange
Get the current visible time range.
Example
console.log(widget.activeChart().getVisibleRange());
Returns
isMaximized
▸ isMaximized(): boolean
Check if the chart is maximized or not.
Returns
boolean
true if maximized, false otherwise.
isPriceToBarRatioLocked
▸ isPriceToBarRatioLocked(): boolean
Get the locked/unlocked state of the chart's price to bar ratio.
Example
console.log(widget.activeChart().isPriceToBarRatioLocked());
Returns
boolean
isSelectBarRequested
▸ isSelectBarRequested(): boolean
Check if bar selection mode is active or not.
Example
var isRequested = widget.activeChart().isSelectBarRequested();
Returns
boolean
true if active, false otherwise.
loadChartTemplate
▸ loadChartTemplate(templateName): Promise<void>
Load and apply a chart template.
Parameters
| Name | Type | Description | 
|---|---|---|
templateName | string | The name of the template to load. | 
Returns
Promise<void>
marketStatus
▸ marketStatus(): IWatchedValueReadonly<MarketStatus>
Get a readonly watched value that can be used to read/subscribe to the state of the chart's market status.
Returns
IWatchedValueReadonly<MarketStatus>
maximizeChart
▸ maximizeChart(): void
Maximize to its full size currently selected chart.
Example
widget.activeChart().maximizeChart();
Returns
void
onChartTypeChanged
▸ onChartTypeChanged(): ISubscription<(chartType: SeriesType) => void>
Get a subscription object for the chart type changing.
Example
widget.activeChart().onChartTypeChanged().subscribe(
    null,
    (chartType) => console.log('The type of chart is changed')
);
Returns
ISubscription<(chartType: SeriesType) => void>
A subscription object for the chart type changing.
onDataLoaded
▸ onDataLoaded(): ISubscription<() => void>
Get a subscription object for new data being loaded for the chart.
Example
widget.activeChart().onDataLoaded().subscribe(
    null,
    () => console.log('New history bars are loaded'),
    true
);
Returns
ISubscription<() => void>
A subscription object for new data loaded for the chart.
onHoveredSourceChanged
▸ onHoveredSourceChanged(): ISubscription<(sourceId: EntityId) => void>
Get a subscription object for the ID of the study or series hovered by the crosshair.
Returns
ISubscription<(sourceId: EntityId) => void>
A subscription object for the ID of the study or series hovered by the crosshair. Subscribers will be called with null if there is no study or series hovered.
onIntervalChanged
▸ onIntervalChanged(): ISubscription<(interval: ResolutionString, timeFrameParameters: { timeframe?: TimeFrameValue  }) => void>
Get a subscription object for the chart resolution (interval) changing. This method also allows you to track whether the chart's date range is changed.
The timeframe argument represents if a user clicks on the time frame toolbar or changes the date range manually.
If timeframe is undefined, you can change a date range before data loading starts.
To do this, you can specify a time frame value or a certain date range.
Examples
The following code sample specifies a time frame value:
widget.activeChart().onIntervalChanged().subscribe(null, (interval, timeframeObj) =>
    timeframeObj.timeframe = {
        value: "12M",
        type: "period-back"
});
The following code sample specifies a certain date range:
widget.activeChart().onIntervalChanged().subscribe(null, (interval, timeframeObj) =>
    timeframeObj.timeframe = {
        from: new Date('2015-01-01').getTime() / 1000,
        to: new Date('2017-01-01').getTime() / 1000,
        type: "time-range"
    });
Returns
ISubscription<(interval: ResolutionString, timeFrameParameters: { timeframe?: TimeFrameValue  }) => void>
A subscription object for the chart interval (resolution) changing.
onSymbolChanged
▸ onSymbolChanged(): ISubscription<() => void>
Get a subscription object for the chart symbol changing.
Example
widget.activeChart().onSymbolChanged().subscribe(null, () => console.log('The symbol is changed'));
Returns
ISubscription<() => void>
A subscription object for when a symbol is resolved (ie changing resolution, timeframe, currency, etc.)
onVisibleRangeChanged
▸ onVisibleRangeChanged(): ISubscription<(range: VisibleTimeRange) => void>
Get a subscription object for the chart's visible range changing.
Example
widget.activeChart().onVisibleRangeChanged().subscribe(
    null,
    ({ from, to }) => console.log(from, to)
);
Returns
ISubscription<(range: VisibleTimeRange) => void>
A subscription object for the chart's visible range changing.
priceFormatter
▸ priceFormatter(): INumberFormatter
Returns the object with 'format' function that you can use to format the prices.
widget.activeChart().priceFormatter().format(123);
Returns
refreshMarks
▸ refreshMarks(): void
Force the chart to re-request all bar marks and timescale marks.
Example
widget.activeChart().refreshMarks();
Returns
void
reloadLineToolsFromServer
▸ reloadLineToolsFromServer(): void
Manually trigger the chart to request the linetools again from the IExternalSaveLoadAdapter.loadLineToolsAndGroups method or the 'load_line_tools' endpoint of the Chart Storage REST API.
This method requires that the saveload_separate_drawings_storage featureset is enabled.
Returns
void
removeAllShapes
▸ removeAllShapes(): void
Remove all drawings from the chart.
Example
widget.activeChart().removeAllShapes();
Returns
void
removeAllStudies
▸ removeAllStudies(): void
Remove all studies from the chart.
Example
widget.activeChart().removeAllStudies();
Returns
void
removeEntity
▸ removeEntity(entityId, options?): void
Remove an entity (e.g. drawing or study) from the chart.
Example
widget.activeChart().removeEntity(id);
Parameters
| Name | Type | Description | 
|---|---|---|
entityId | EntityId | The ID of the entity. | 
options? | UndoOptions | Optional undo options. | 
Returns
void
requestSelectBar
▸ requestSelectBar(): Promise<number>
Switch the chart to bar selection mode.
Example
widget.activeChart().requestSelectBar()
    .then(function(time) {
        console.log('user selects bar with time', time);
    })
    .catch(function() {
        console.log('bar selection was rejected');
    });
Returns
Promise<number>
A promise that resolves to the timestamp of a bar selected by the user. Rejects if the bar selection was already requested or is cancelled.
resetData
▸ resetData(): void
Force the chart to re-request data, for example if there are internet connection issues.
Before calling this function the onResetCacheNeededCallback callback from IDatafeedChartApi.subscribeBars should be called.
Example
widget.activeChart().resetData();
Returns
void
resolution
▸ resolution(): ResolutionString
Get the current resolution (interval).
Example
console.log(widget.activeChart().resolution());
Returns
restoreChart
▸ restoreChart(): void
Restore to its initial size currently selected chart.
Example
widget.activeChart().restoreChart();
Returns
void
selection
▸ selection(): ISelectionApi
Get an API object for interacting with the selection.
Example
widget.activeChart().selection().clear();
Returns
sendBackward
▸ sendBackward(sources): void
Move the sources one level down in the Z-order.
Example
widget.activeChart().sendBackward([id]);
Parameters
| Name | Type | Description | 
|---|---|---|
sources | readonly EntityId[] | An array of source IDs. | 
Returns
void
sendToBack
▸ sendToBack(entities): void
Move the group to the bottom of the Z-order.
Example
widget.activeChart().sendToBack([id]);
Parameters
| Name | Type | Description | 
|---|---|---|
entities | readonly EntityId[] | An array of entity IDs. | 
Returns
void
setAllPanesHeight
▸ setAllPanesHeight(heights): void
Set the height for each pane in the order provided.
Example
console.log(widget.activeChart().setAllPanesHeight([250, 400, 200]));
Parameters
| Name | Type | Description | 
|---|---|---|
heights | readonly number[] | An array of heights. | 
Returns
void
setChartType
▸ setChartType(type, callback?): void
Change the chart's type.
Example
widget.activeChart().setChartType(12); // Specifies the High-low type
Parameters
| Name | Type | Description | 
|---|---|---|
type | SeriesType | A chart type. | 
callback? | () => void | An optional callback function. Called when the chart type has changed and data has loaded. | 
Returns
void
A promise that resolves with a boolean value. It's true when the chart type has been set and false when setting the chart type is not possible.
setPriceToBarRatio
▸ setPriceToBarRatio(ratio, options?): void
Set the chart's price to bar ratio.
Example
widget.activeChart().setPriceToBarRatio(0.4567, { disableUndo: true });
Parameters
| Name | Type | Description | 
|---|---|---|
ratio | number | The new price to bar ratio. | 
options? | UndoOptions | Optional undo options. | 
Returns
void
setPriceToBarRatioLocked
▸ setPriceToBarRatioLocked(value, options?): void
Lock or unlock the chart's price to bar ratio.
Example
widget.activeChart().setPriceToBarRatioLocked(true, { disableUndo: false });
Parameters
| Name | Type | Description | 
|---|---|---|
value | boolean | true to lock, false to unlock. | 
options? | UndoOptions | Optional undo options. | 
Returns
void
setResolution
▸ setResolution(resolution, options?): Promise<boolean>
Change the chart's interval (resolution).
Example
widget.activeChart().setResolution('2M');
Note: if you are attempting to change multiple charts (multi-chart layouts) at the same time with
multiple setResolution calls then you should set doNotActivateChart option to true.
Parameters
| Name | Type | Description | 
|---|---|---|
resolution | ResolutionString | A resolution. | 
options? | SetResolutionOptions | () => void | Optional object of options for the new resolution or optional callback that is called when the data for the new resolution has loaded. | 
Returns
Promise<boolean>
A promise that resolves with a boolean value. It's true when the resolution has been set and false when setting the resolution is not possible.
setScrollEnabled
▸ setScrollEnabled(enabled): void
Enable or disable scrolling of the chart.
Example
widget.activeChart().setScrollEnabled(false);
Parameters
| Name | Type | Description | 
|---|---|---|
enabled | boolean | true to enable scrolling, false to disable. | 
Returns
void
setSymbol
▸ setSymbol(symbol, options?): void
Change the chart's symbol.
Example
widget.activeChart().setSymbol('IBM');
Note: if you are attempting to change multiple charts (multi-chart layouts) at the same time with
multiple setSymbol calls then you should set doNotActivateChart option to true.
Parameters
| Name | Type | Description | 
|---|---|---|
symbol | string | A symbol. | 
options? | SetSymbolOptions | () => void | Optional object of options for the new symbol or optional callback that is called when the data for the new symbol has loaded. | 
Returns
void
setTimeFrame
▸ setTimeFrame(timeFrame): void
Set the time frame for this chart.
Note: This action will set this chart as active in a multi-chart layout.
Example To apply the '1Y' timeframe:
tvWidget.setTimeFrame({
  val: { type: 'period-back', value: '12M' },
  res: '1W',
});
Parameters
| Name | Type | Description | 
|---|---|---|
timeFrame | RangeOptions | Object specifying the range and resolution to be applied | 
Returns
void
setVisibleRange
▸ setVisibleRange(range, options?): Promise<void>
Scroll and/or scale the chart so a time range is visible.
Example
widget.activeChart().setVisibleRange(
    { from: 1420156800, to: 1451433600 },
    { percentRightMargin: 20 }
).then(() => console.log('New visible range is applied'));
Parameters
| Name | Type | Description | 
|---|---|---|
range | SetVisibleTimeRange | A range that will be made visible. | 
options? | SetVisibleRangeOptions | Optional object of options for the new visible range. | 
Returns
Promise<void>
A promise that is resolved when the range has been set.
setZoomEnabled
▸ setZoomEnabled(enabled): void
Enable or disable zooming of the chart.
Example
widget.activeChart().setZoomEnabled(false);
Parameters
| Name | Type | Description | 
|---|---|---|
enabled | boolean | true to enable zooming, false to disable. | 
Returns
void
shapesGroupController
▸ shapesGroupController(): IShapesGroupControllerApi
Get an API object for interacting with groups of drawings. Refer to the Drawings API article for more information.
Example
widget.activeChart().shapesGroupController().createGroupFromSelection();
Returns
showPropertiesDialog
▸ showPropertiesDialog(studyId): void
Show the properties dialog for a study or drawing.
Example
const chart = widget.activeChart();
chart.showPropertiesDialog(chart.getAllShapes()[0].id);`
Parameters
| Name | Type | Description | 
|---|---|---|
studyId | EntityId | An ID of the study or drawing. | 
Returns
void
symbol
▸ symbol(): string
Get the name of the current symbol.
Example
console.log(widget.activeChart().symbol());
Returns
string
symbolExt
▸ symbolExt(): SymbolExt
Get an extended information object for the current symbol.
Example
console.log(widget.activeChart().symbolExt().full_name);
Returns
zoomOut
▸ zoomOut(): void
Zoom out. The method has the same effect as clicking on the "Zoom out" button.
Returns
void