Symbol Guideline

1.0 Introduction

2.0 Motivation

3.0 Nomenclature


1.0 Introduction

Each financial securities are identified with a Symbol string. That string shall be unique and unambiguous within a certain Category. Usually the symbol will correspond to the official ticker name (like MSFT for Microsoft, LU for Lucent etc...). But some symbol encode additional information. Particular examples are the Options who needs to encode the expiration date and the strike price to distinguish the variants.

Symbols are always case insensitive and will never exceed 64 characters.

Anyone can freely re-use this guideline without any obligation towards TA-LIB.


2.0 Motivation

Someone may wonder why to define "yet another mapping" of the symbols. The advantage of the TA-LIB Category/Symbol mapping is you can (and should) simply re-use the official ticker symbol provided by the exchange.  Since the category isolate the symbol within the name space of the exchange, there is no need to name differently the symbol because it collides with another security on another exchange.

Here is an example of the current data source mess for the Euro Notional Future provided on the MATIF exchange (French international futures and options exchange). The official symbol is 'ELT':

Data VendorSymbol
ADPNBD
Bloomberg
[my]=maturity, [C or P]=Call or Put
MN
Bloomberg - 5 best pricesMN[my] < CMDTY > BBO
BridgefR@ELT
CMSEN
CQG InternationalPNA
datastreamFTG
Digicall SAMENm
FidesMN
Fininfom;N
Future Source
[C or P]=Call or Put
MNN
GL TradeELT
Reuters
[my]=maturity
PTB: < F3 >
Reuters - 5 best pricesPTB [my] < F3 >
S & P Comstock
[my]=maturity, [sss]=strike
qDN[my]
TelekursELT
Telerate(code page: 3211,3215) ME
Track DataEN
TradermadeE-Notion

In that case, the TA-LIB symbol shall use the unambiguous and official 'ELT' abbreviation defined by MATIF.


3.0 Nomenclature

Quick Reference

A:Alphanumeric, D:Digit, +:Concatenation, |:Or, {}:Optional

Symbol TypePatternComments
Stock / Index / FundName20 char max
FutureName + ExpirationDate28 char max.
BondName + '-' + { 'C' | 'G' | 'M' } + MaturityYear24 char max
'C':Corp, 'G':Gov, 'M':Municipal
Equity OptionName + ExpirationDate + OptionSuffix37 char max.
Index OptionsIndex + ExpirationDate+ OptionSuffix38 char max
Futures OptionsFuture + OptionSuffix37 char max
BondOptions Bond + ExpirationDate+ OptionSuffix41 char max
 
NameAAAAAAAAAAAAAAAAAAA20 char max
Month'JAN' | 'FEB' | 'MAR' | 'APR' | 'MAY' | 'JUN' | 'JUL' | 'AUG' | 'SEP' | 'OCT' | 'NOV' | 'DEC' Exactly 3 letter.
YearDDDDExactly 4 digits.
MaturityYearDDExactly 2 digits.
ExpirationDate('-' + Month + Year) | '-CONT' | '-CASH'Up to 8 char.
StrikePriceDDDD{'.'}DDUp to 6 digits with an optional dot.
OptionSuffix'-' + ( 'C' | 'P' ) + StrikePrice9 char max
'C':Call, 'P':Put

3.1 Stock / Index / Fund Symbol

Can be up to 20 alpha-numeric character. Special character '_', '.' or space can be used.

Note: the dash '-' is a special character reserved for adding additional info to the symbol (see Options as an example).

Examples:

Symbol NameDescription
MSFTMicrosoft Corporation
BE8123E1332Alcatel on Brussels exchange
INDUDow Jones Industrial (USA)
My_Composite_GroupA user defined name

For USA mutual funds, simply use the SIPC ticker which is always compose of 4 alphabetic character followed by the character 'X'. At this point, no clear strategy is defined for Non-US mutual funds.

3.2 Future

Same rule as a stock symbol, but with the expiration date being concatenated after a '-'. For a continuous contract use '-CONT' instead.

Examples:

Symbol NameDescription
YX-SEP2001NYSE Comp Index contract for September 2001.
ELT-MAR2001Euro Notional Future on the MATIF.
YZ-CONTFuture on the 6% 10Year T-Note on the NYBOT. Continuous contract.
GAS_OIL-DEC2002Gas Oil future on the International Petroleum Exchange (IPE)

For the official abbreviation of the Future, please consult the exchange web site provided in the Category Guideline. Sometimes, when no official ticker are defined by the exchange, it is suggested to use the full name of the future (See the GAS_OIL example in the previous table).