MultiLegSpread
A detected multi leg options spread and its classification.
▶Proto definition.proto
message MultiLegSpread { string id = 1; int32 ticker_id = 2; string ticker = 3; string code = 4; Strategy strategy = 5; Direction direction = 6; OptionTradeSide net_side = 7; int64 executed_at = 8; int32 size = 9; int32 leg_count = 10; int32 txns = 11; string net_price = 12; string net_delta = 13; string net_theta = 14; string total_premium = 15; string underlying_price = 16; int32 min_dte = 17; int32 max_dte = 18; string min_strike = 19; string max_strike = 20; bool all_otm = 21; bool diff_strikes = 22; bool diff_expirations = 23; bool diff_types = 24; repeated int32 option_chain_ids = 25; repeated string trade_ids = 26; repeated MultiLegSpreadLeg legs = 27; bool all_opening_legs = 28; string bid_ask_spread = 29; repeated string uniq_exchanges = 30; repeated string strikes = 31; string max_profit = 32; string max_loss = 33; repeated string breakevens = 34; string avg_iv = 35; repeated string ivs = 36; string net_premium = 37; string net_bid = 38; string net_ask = 39; }
Fields
id
string
1
Unique id of the spread.
ticker_id
int32
2
The underlying ticker's id.
ticker
string
3
The underlying ticker symbol.
code
string
4
The trade code shared by the legs.
The classified strategy.
Whether the position is long or short.
Whether the spread was a net debit (ask) or a net credit (bid).
executed_at
int64
8
When the spread executed.
size
int32
9
The size of the spread.
leg_count
int32
10
How many legs the spread has.
txns
int32
11
How many separately executed transactions make up this spread.
net_price
string
12
Net price paid (positive) or received (negative) for the spread.
net_delta
string
13
The spread's net delta exposure.
net_theta
string
14
The spread's net theta exposure.
total_premium
string
15
Total premium across all legs.
underlying_price
string
16
The underlying price when the spread executed.
min_dte
int32
17
Shortest days to expiration among the legs.
max_dte
int32
18
Longest days to expiration among the legs.
min_strike
string
19
The lowest leg strike.
max_strike
string
20
The highest leg strike.
all_otm
bool
21
Whether every leg is out of the money.
diff_strikes
bool
22
Whether the legs use different strikes.
diff_expirations
bool
23
Whether the legs use different expirations.
diff_types
bool
24
Whether the legs mix calls and puts.
option_chain_ids
int32
repeated
25
The option chain ids of the legs.
trade_ids
string
repeated
26
The individual trades that make up the spread.
The legs of the spread.
all_opening_legs
bool
28
Whether every leg opened new positions.
bid_ask_spread
string
29
The net quoted bid ask width of the spread, empty when a leg has no quote.
uniq_exchanges
string
repeated
30
The distinct exchanges the legs traded on.
strikes
string
repeated
31
The distinct leg strikes.
max_profit
string
32
Max profit at expiration; empty when unbounded or multi expiration.
max_loss
string
33
Max loss at expiration; empty when unbounded or multi expiration.
breakevens
string
repeated
34
Underlying prices where the expiry payoff crosses zero. Ascending empty when multi expiration.
avg_iv
string
35
Size weighted average implied volatility across the fills.
ivs
string
repeated
36
Size weighted implied volatility per distinct strike, arranged like strikes; empty entry when unknown.
net_premium
string
37
Net premium paid (positive) or received (negative) across all legs. Empty when direction is unknown.
net_bid
string
38
Net NBBO bid of the classified spread (buy legs at bid, sell legs at ask). Empty when direction is unknown or a leg has no quote.
net_ask
string
39
Net NBBO ask of the classified spread (buy legs at ask, sell legs at bid). Empty when direction is unknown or a leg has no quote.