Symbol info
The /symbol_info
endpoint returns a list of instruments and a set of rules for them.
This endpoint is requested every hour.
Information that /symbol_info
returns is displayed in the Symbol Info dialog.
A symbol name, description, type, and exchange name are also displayed in the Symbol Search panel and a chart legend.
Response specifics
Some response fields in /symbol_info
may be required or have some specifics depending on the instrument type.
Check the corresponding sections below for more information.
Crypto instruments
Field | Description |
---|---|
currency | Symbol currency, also named as counter currency. Required for crypto spots and crypto perpetual swaps. |
base‑currency | The first currency of the pair. Required for crypto spots and crypto perpetual swaps. |
symbol | Symbol name which is shown in the UI. Refer to Symbol naming rules to see the name format for Crypto instruments. |
CFDs
Field | Description |
---|---|
session-regular session-premarket session‑postmarket session-extended | Sets the session format. Note that for CFDs, these fields do not support trading breaks during the trading day. |
is-cfd | Indicates that a symbol is a CFD. Must be set to true . |
minmovement2 | Indicates the pip size for prices. Required for Forex instruments. |
timezone | Sets an exchange time zone for a symbol. TradingView highly recommends you setting the instrument's local time zone to avoid issues with daylight saving time changes. For example, if the time zone is America/New_York for an instrument from the Nasdaq exchange, time transition is carried out automatically. However, if the same instrument is in the Asia/Kolkata time zone, you should adjust session-regular manually to change the session schedule. Note that this adjustment must be approved by the TradingView team. |
Futures
Field | Description |
---|---|
pointValue | Represents the currency value of the smallest whole-number increment in the price of an asset. If the value is not provided, it is assumed to be 1 . For instance, a futures symbol with pointValue equal to 250 would mean that 1 point of the chart movement would represent 250 in the account currency. Alternatively, a symbol with pointValue equal to 10 would represent 10 in the account currency, and so on. |
root | Required. Indicates a root of a futures contract. |
root‑description | Required. Indicates the root's short description that is displayed in Symbol Search. |
symbol | Symbol name which is shown in the UI. Refer to Symbol naming rules to see the name format for Futures instruments. |
Symbol groups
When groups implemented,
requests to /symbol_info
can be either with or without the group parameter.
In the first case, TradingView expects to receive a list of only those symbols that belong to the group specified.
In the second case, TradingView expects to receive a list of all symbols from all groups.
Your API must return full list of symbols if the group parameter in /symbol_info
request is not present.
Note that the symbol group ID must contain a broker name as a prefix to the group name, for example, brokerName_stocks
.
Symbol naming rules
The symbol
field is an array of strings that represent unique symbol names. Users see these names in the UI.
Symbol names are always displayed in uppercase and are validated with the following regular expression:
[A-Z0-9._]
Each instrument type has its own symbol naming rules. Refer to the corresponding section for more information:
Stocks
Type | Format | Example |
---|---|---|
Stocks from one exchange | <Exchange Ticker> | AAPL — Apple stock |
Stocks from different exchanges | <Exchange Code>_<Exchange Ticker> | NASDAQ_AAPL — Apple stock from Nasdaq ASX_AAPL — Apple stock from ASX |
Forex
A Forex symbol name can only consist of a currency pair. No special characters or other additions are allowed.
Type | Example |
---|---|
<Base Currency><Quote Currency> | EURUSD — Euro to US Dollar USDGBP — US Dollar to British Pound |
Futures
Type | Format |
---|---|
Standard | <Symbol Root><Month Code><Four-digit Year> |
When more than one contract expires within one month | <Symbol Root><Two-digit Expiration Day><Month Code><Four-digit Year> |
The table below represents months and their corresponding codes:
Month | Month Code | Month | Month Code |
---|---|---|---|
January | F | July | N |
February | G | August | Q |
March | H | September | U |
April | J | October | V |
May | K | November | X |
June | M | December | Z |
Consider the examples below:
ESM2023 // S&P 500 future contract (June 2023)
NQZ2023 // Nasdaq-100 future contract (December 2023)
BTCUSD24M2022 // Bitcoin future contract quoted in US Dollar (June 24, 2022)
BTCUSD30M2022 // Bitcoin future contract quoted in US Dollar (June 30, 2022)
Crypto
Type | Format |
---|---|
Base crypto pair | <Base Currency><Quote Currency> |
Leveraged crypto ETF's | <Base Currency><Quote Currency>.<Leverage Size><Long or Short Direction> |
Future contracts | See the Futures section. |
Perpetual swap contracts | <Base Currency><Quote Currency>.P |
Decentralized exchanges (DEX) | <Base Currency><Quote Currency>_<First Six Hash Numbers of the Pair> |
DEX for pairs converted to USD or other fiat currency | <Base Currency><Quote Currency>_<First Six Hash Numbers of the Pair>.USD |
The corresponding examples are added below:
BTCUSD // Bitcoin / US Dollar crypto pair
BTCUSDT.3L // Bitcoin 3× Long
BTCUSDT.3S // BTC 3× Short
BTCUSDT.P // Bitcoin perpetual swap contract
ETHUSD_7380E1 // Ethereum / BTCB on BSC in US Dollar
ETHUSD_7380E1.USD // Ethereum / BTCB on BSC in US Dollar (converted to USD)
Price display
To manage how the price is displayed on the chart, use the following
parameters in
/symbol_info
.
minmovement
indicates the number of units that make one price tick.pricescale
indicates how many decimal places a security price has.minmovement2
indicates the pip size for Forex prices or how to separate the main and additional fractions for fractional prices.
The parameter values depend on the price format chosen. There are two ways to display a security price:
- The decimal format is used for most instruments, such as stocks, indices, and futures.
- The fractional format is used only for futures traded on the CBOT (Chicago Board of Trade), including futures on bulk commodities (grains, etc.) and US Federal Reserve Government bonds. This format also has a variety — that is a fractional format of the fractional price.
Decimal format
For the decimal format:
- The
minmovement
value depends on the price tick chosen: 1, 5, etc. - The
pricescale
value must always be10^n
, where n is the number of decimal places. For example, if the price has two decimal places300.01
,pricescale
must be100
. If it has three decimal places300.001
,pricescale
must be1000
, etc. If the price doesn't have decimals,pricescale
must be1
. - The
minmovement2
value must always be0
, except for Forex symbols.
Forex symbols
Forex symbols have the decimal price format, however, the minmovement2
value must differ from 0
. In this case, minmovement2
indicates the
pip size on the chart and the value must be 10^n
, where n
is the
number of pips. A pip is the smallest whole unit measurement of the
spread. On the chart, the pip is displayed smaller than the price
digits.
If minmovement2
is 0
for Forex symbols, the spread is displayed in ticks, not pips.
Fractional format
The price in the fractional format is displayed as 76'27
. A single
quote is used as a delimiter.
For the fractional format:
- The
minmovement
value depends on the price tick chosen: 1, 5, etc. - The
pricescale
value must always be2^n
. It indicates the number of fractions. For example, ifminmovement: 1
andpricescale: 32
, the fraction numerator values can vary from 0 to 31. - The
minmovement2
value must always be0
, except for the fraction of fractional format.
Fractional format of the fractional price
The fractional format of the fractional price is a particular case of
the fractional price format. In this case, minmovement2
indicates the
part of the fraction and can differ from 0
.
For example, for the 76'27'2
price: 76 is an integral part of the
price, 27 is a fractional part of the price, and 2 is a fractional part
of the first fractional part (27). To display such a price, you can
specify the parameters in the following way: minmovement: 1
,
pricescale: 128
, and minmovement2: 4
.
Tick size
Tick size (minimum price step) is the minimum price amount a security
can move in exchange. The tick size is calculated as minmovement
/
pricescale
. For example, if you need a price step to be 0.25
:
- Set
minmovement: 25
andpricescale: 100
for the decimal format. - Set
minmovement: 1
andpricescale: 4
for the fractional format.