|
static bool | HasExchangeCode (string symbol) |
| Returns true is the specified symbol has the exchange code specification. The result is false if symbol is null . More...
|
|
static char | GetExchangeCode (string symbol) |
| Returns exchange code of the specified symbol or `'\0'if none is defined. The result is '\0'if symbol is null`. More...
|
|
static string | ChangeExchangeCode (string symbol, char exchangeCode) |
| Changes exchange code of the specified symbol or removes it if new exchange code is `'\0'. The result is nullif old symbol is null`. More...
|
|
static string | GetBaseSymbol (string symbol) |
| Returns base symbol without exchange code and attributes. The result is null if symbol is null . More...
|
|
static string | ChangeBaseSymbol (string symbol, string baseSymbol) |
| Changes base symbol while leaving exchange code and attributes intact. The result is null if old symbol is null . More...
|
|
static bool | HasAttributes (string symbol) |
| Returns true if the specified symbol has any attributes. More...
|
|
static string | GetAttributeStringByKey (string symbol, string key) |
| Returns value of the attribute with the specified key. The result is null if attribute with the specified key is not found. The result is null if symbol is null . More...
|
|
static string | ChangeAttributeStringByKey (string symbol, string key, string value) |
| Changes value of one attribute value while leaving exchange code and other attributes intact. The null symbol is interpreted as empty one by this method.. More...
|
|
static string | RemoveAttributeStringByKey (string symbol, string key) |
| Removes one attribute with the specified key while leaving exchange code and other attributes intact. The result is null if symbol is null . More...
|
|
static void | ValidateSymbol (object symbolObj) |
| Validates symbolObj is not null and is string or CandleSymbol object. More...
|
|
|
static bool | HasExchangeCodeInternal (string symbol, int length) |
|
static string | GetBaseSymbolInternal (string symbol, int length) |
|
static bool | HasAttributesInternal (string symbol, int length) |
|
static int | GetLengthWithoutAttributesInternal (string symbol) |
|
static string | GetKeyInternal (string symbol, int i) |
|
static int | GetNextKeyInternal (string symbol, int i) |
|
static string | GetValueInternal (string symbol, int i, int j) |
|
static string | DropKeyAndValueInternal (string symbol, int length, int i, int j) |
|
static string | GetAttributeInternal (string symbol, int length, string key) |
|
static string | RemoveAttributeInternal (string symbol, int length, string key) |
|
static string | AddAttributeInternal (string symbol, int length, string key, string value) |
|
Helper class to compose and parse symbols for market events.
Regional symbols
Regional symbol subscription receives events only from a designated exchange, marketplace, or venue instead of receiving composite events from all venues (by default). Regional symbol is composed from a base symbol, ampersand character ('&'), and an exchange code character. For example,
-
"SPY" is the symbol for composite events for SPDR S&P 500 ETF from all exchanges,
-
"SPY&N" is the symbol for event for SPDR S&P 500 ETF that originate only from NYSE marketplace.
Symbol attributes
Market event symbols can have a number of attributes attached to then in curly braces with <key>=<value>
paris separated by commas. For example,
-
"SPY{price=bid}" is the market symbol "SPY" with an attribute key "price" set to value "bid".
-
"SPY(=5m,tho=true}" is the market symbol "SPY" with two attributes. One has an empty key and value "5m", while the other has key "tho" and value "true".
The methods in this class always maintain attribute keys in alphabetic order.