Skip to content

SmartInsiderEvent

QuantConnect.DataSource.SmartInsiderEvent

SmartInsiderEvent()
SmartInsiderEvent(tsv_line: str)

Bases: BaseData

SmartInsider Intention and Transaction events. These are fields that are shared between intentions and transactions.

Signature descriptions:

  • Empty constructor required for cloning

  • Parses a line of TSV (tab delimited) from Smart Insider data

Parameters:

Name Type Description Default
tsv_line Optional[str]

Tab delimited line of data

None

transaction_id

transaction_id: str

Proprietary unique field. Not nullable

event_type

event_type: Optional[SmartInsiderEventType]

Description of what has or will take place in an execution

last_update

last_update: datetime

The date when a transaction is updated after it has been reported. Not nullable

last_i_ds_update

last_i_ds_update: Optional[datetime]

Date that company identifiers were changed. Can be a name, Ticker Symbol or ISIN change

isin

isin: str

Industry classification number

usd_market_cap

usd_market_cap: Optional[float]

The market capitalization at the time of the transaction stated in US Dollars

company_id

company_id: Optional[int]

Smart Insider proprietary identifier for the company

icb_industry

icb_industry: str

FTSE Russell Sector Classification

icb_super_sector

icb_super_sector: str

FTSE Russell Sector Classification

icb_sector

icb_sector: str

FTSE Russell Sector Classification

icb_sub_sector

icb_sub_sector: str

FTSE Russell Sector Classification

icb_code

icb_code: Optional[int]

Numeric code that is the most granular level in ICB classification

company_name

company_name: str

Company name. PLC is always excluded

previous_results_announcement_date

previous_results_announcement_date: Optional[datetime]

Announcement date of last results, this will be the end date of the last "Close Period"

next_results_announcements_date

next_results_announcements_date: Optional[datetime]

Announcement date of next results, this will be the end date of the next "Close Period"

next_close_begin

next_close_begin: Optional[datetime]

Start date of next trading embargo ahead of scheduled results announcment

last_close_ended

last_close_ended: Optional[datetime]

Date trading embargo (Close Period) is lifted as results are made public

security_description

security_description: str

Type of security. Does not contain nominal value

ticker_country

ticker_country: str

Country of local identifier, denoting where the trade took place

ticker_symbol

ticker_symbol: str

Local market identifier

announcement_date

announcement_date: Optional[datetime]

Date Transaction was entered onto our system. Where a transaction is after the London market close (usually 4.30pm) this will be stated as the next day

time_released

time_released: Optional[datetime]

Time the announcement first appeared on a Regulatory News Service or other disclosure system and became available to the market, time stated is local market time

time_processed

time_processed: Optional[datetime]

Time the transaction was entered into Smart Insider systems and appeared on their website, time stated is local to London, UK

time_released_utc

time_released_utc: Optional[datetime]

Time the announcement first appeared on a Regulatory News Service or other disclosure system and became available to the market. Time stated is GMT standard

time_processed_utc

time_processed_utc: Optional[datetime]

Time the transaction was entered onto our systems and appeared on our website. Time stated is GMT standard

announced_in

announced_in: str

Market in which the transaction was announced, this can reference more than one country

symbol

symbol: Symbol

Symbol representation for underlying Security

data_type

data_type: MarketDataType

Market Data Type of this data - does it come in individual price packets or is it grouped into OHLC.

time

time: datetime

Current time marker of this data packet.

end_time

end_time: datetime

The end time of this data. Some data covers spans (trade bars) and as such we want to know the entire time span covered

value

value: float

Value representation of this data packet. All data requires a representative value for this moment in time. For streams of data this is the price now, for OHLC packets this is the closing price.

price

price: float

As this is a backtesting platform we'll provide an alias of value as price.

ALL_RESOLUTIONS

ALL_RESOLUTIONS: List[Resolution] = ...

A list of all Resolution

This codeEntityType is protected.

DAILY_RESOLUTION

DAILY_RESOLUTION: List[Resolution] = ...

A list of Resolution.DAILY

This codeEntityType is protected.

MINUTE_RESOLUTION

MINUTE_RESOLUTION: List[Resolution] = ...

A list of Resolution.MINUTE

This codeEntityType is protected.

HIGH_RESOLUTION

HIGH_RESOLUTION: List[Resolution] = ...

A list of high Resolution, including minute, second, and tick.

This codeEntityType is protected.

OPTION_RESOLUTIONS

OPTION_RESOLUTIONS: List[Resolution] = ...

A list of resolutions support by Options

This codeEntityType is protected.

is_fill_forward

is_fill_forward: bool

True if this is a fill forward piece of data

data_time_zone

data_time_zone() -> Any

Specifies the timezone of this data source

Returns:

Type Description
Any

Timezone.

from_raw_data

from_raw_data(
    line: str, indexes: Dictionary[str, int]
) -> bool

Derived class instances populate their fields from raw TSV

Parameters:

Name Type Description Default
line str

Line of raw TSV (raw with fields 46, 36, 14, 7 removed in descending order)

required
indexes Dictionary[str, int]

Index per header column

required

Returns:

Type Description
bool

success of the parsing task.

parse_date

parse_date(date: str) -> datetime

Attempts to normalize and parse SmartInsider dates that include a time component.

Parameters:

Name Type Description Default
date str

Date string to parse

required

Returns:

Type Description
datetime

DateTime object.

to_line

to_line() -> str

Converts data to TSV

Returns:

Type Description
str

String of TSV.

clone

clone(fill_forward: bool) -> BaseData
clone() -> BaseData

Return a new instance clone of this object, used in fill forward

Parameters:

Name Type Description Default
fill_forward Optional[bool]

True if this is a fill forward clone

None

Returns:

Type Description
BaseData

A clone of the current object.

reader

reader(
    config: SubscriptionDataConfig,
    line: str,
    date: datetime,
    is_live_mode: bool,
) -> BaseData

Reader converts each line of the data source into BaseData objects. Each data type creates its own factory method, and returns a new instance of the object each time it is called. The returned object is assumed to be time stamped in the config.ExchangeTimeZone.

Parameters:

Name Type Description Default
config SubscriptionDataConfig

Subscription data config setup object

required
line str

Line of the source document

required
date datetime

Date of the requested data

required
is_live_mode bool

true if we're in live mode, false for backtesting mode

required

Returns:

Type Description
BaseData

Instance of the T:BaseData object generated by this line of the CSV.

requires_mapping

requires_mapping() -> bool

Indicates if there is support for mapping

Returns:

Type Description
bool

True indicates mapping should be used.

default_resolution

default_resolution() -> Resolution

Gets the default resolution for this data and security type

deserialize_message

deserialize_message(serialized: str) -> Iterable[BaseData]

Deserialize the message from the data server

Parameters:

Name Type Description Default
serialized str

The data server's message

required

Returns:

Type Description
Iterable[BaseData]

An enumerable of base data, if unsuccessful, returns an empty enumerable.

get_source

get_source(
    config: SubscriptionDataConfig,
    date: datetime,
    is_live_mode: bool,
) -> SubscriptionDataSource

Return the URL string source of the file. This will be converted to a stream

Parameters:

Name Type Description Default
config SubscriptionDataConfig

Configuration object

required
date datetime

Date of this source file

required
is_live_mode bool

true if we're in live mode, false for backtesting mode

required

Returns:

Type Description
SubscriptionDataSource

String URL of source file.

is_sparse_data

is_sparse_data() -> bool

Indicates that the data set is expected to be sparse

Returns:

Type Description
bool

True if the data set represented by this type is expected to be sparse.

should_cache_to_security

should_cache_to_security() -> bool

Indicates whether this contains data that should be stored in the security cache

Returns:

Type Description
bool

Whether this contains data that should be stored in the security cache.

supported_resolutions

supported_resolutions() -> List[Resolution]

Gets the supported resolution for this data and security type

to_string

to_string() -> str

Formats a string with the symbol and value.

Returns:

Type Description
str

string - a string formatted as SPY: 167.753.

update

update(
    last_trade: float,
    bid_price: float,
    ask_price: float,
    volume: float,
    bid_size: float,
    ask_size: float,
) -> None

Update routine to build a bar/tick from a data update.

Parameters:

Name Type Description Default
last_trade float

The last trade price

required
bid_price float

Current bid price

required
ask_price float

Current asking price

required
volume float

Volume of this trade

required
bid_size float

The size of the current bid, if available

required
ask_size float

The size of the current ask, if available

required

update_ask

update_ask(ask_price: float, ask_size: float) -> None

Updates this base data with the new quote ask information

Parameters:

Name Type Description Default
ask_price float

The current ask price

required
ask_size float

The current ask size

required

update_bid

update_bid(bid_price: float, bid_size: float) -> None

Updates this base data with the new quote bid information

Parameters:

Name Type Description Default
bid_price float

The current bid price

required
bid_size float

The current bid size

required

update_quote

update_quote(
    bid_price: float,
    bid_size: float,
    ask_price: float,
    ask_size: float,
) -> None

Updates this base data with new quote information

Parameters:

Name Type Description Default
bid_price float

The current bid price

required
bid_size float

The current bid size

required
ask_price float

The current ask price

required
ask_size float

The current ask size

required

update_trade

update_trade(last_trade: float, trade_size: float) -> None

Updates this base data with a new trade

Parameters:

Name Type Description Default
last_trade float

The price of the last trade

required
trade_size float

The quantity traded

required