Open Interest For The Open Source Community: The Options Menu in the OpenBB Terminal. #FOSS
Danglewood
Posted on May 14, 2022
The Options menu in the OpenBB Terminal is jam-packed with features. For those new to the asset class, the information in the next sections provide context and then defines some key terms. The intention is not to explain how to trade options, but to understand what options are, and how to use the Terminal for researching setups and monitoring trends. Experienced options traders can advance to the heading title, Options Menu Items.
Introduction & Market Coverage
The set of features behind OpenBB's Options menu uses the ticker loaded in the parent menu (stocks) by default. A new ticker can be selected by using the load command from the Options submenu. At the time of writing, OpenBB is able to provide coverage only for US-listed equity and ETF options. While not officially supported, some additional markets and index options may be accessible with yFinance as the source.
(π¦) /stocks/options/ $ load -h
usage: load [-t TICKER] [-s {tr,yf}] [-h]
Load a ticker into option menu
optional arguments:
-t TICKER, --ticker TICKER
Stock ticker (default: None)
-s {tr,yf}, --source {tr,yf}
Source to get option expirations from (default: None)
-h, --help show this help message (default: False)
As OpenBB matures, coverage will expand to include more markets. In the meantime it is safe to generalize options as referring to American-listed options priced in $USD, unless noted.
American versus European Options
There are key differences between American and European options, which changes the output of a formula or value model.
American options can be exercised at any time during the life of the contract, and shares are deliverable upon execution.
All optionable stocks and exchange-traded funds (ETFs) have American-style options while only a few broad-based indices have American-style options.
Quarterlies trade until the last trading day of the calendar quarter, while weeklies cease trading on Wednesday or Friday of the specified week.
European options may be exercised only at expiration.
European index options stop trading one day earlier, at the close of business on the Thursday preceding the third Friday of the expiration month.
European options carry significantly more risk during the settlement period.
On the third Friday of the month, the opening price for each stock in the index is determined. Individual stocks open at different times, with some of these opening prices available at 9:30 a.m. ET while others are determined a few minutes later.
The underlying index price is calculated as if all stocks were trading at their respective opening prices at the same time. This is not a real-world price because you cannot look at the published index and assume the settlement price is close in value.
The settlement price for the underlying asset (stock, ETF, or index) with American-style options is the regular closing price or the last trade before the market closes on the third Friday. After-hours trades do not count when determining the settlement price. Markets close on Friday, that's the final price. There is no uncertainty of moneyness from close through settlement.
The difference between settlement procedures is crucial to understand. It is nearly impossible to determine the value of European options after trading ceases but prior to settlement. Especially with large indices, the opening price of all constituents on Friday morning can swing the final settlement price violently.
Pay attention to expiring contracts in your account because most brokerage platforms will automatically exercise expired ITM options. If there is not enough cash to cover costs they will liquidate other holdings indiscriminately. They may also charge the phone-in commission rate for each transaction, which will be significantly higher. Exposure to liquidity risk can bring unexpected margin calls, so stay vigilant.
Key Terms and Lingo
Options contracts usually represent 100 shares.
The cost of executing a call option is: [(strike + premium) x 100] + (commissions + fees)
Derivatives: The parent asset class to equity options. Derivatives and options are frequently used interchangeably, because all options are derivatives; however, not all derivatives are options.
Call: The holder of a call option contract has the right, but are not required, to purchase 100 shares of the underlying asset at the strike price, until the date of expiration.
Put: The holder of a put option contract has the right, but are not required, to sell 100 shares of the underlying asset at the strike price, until the date of expiration.
Covered: Collateralized contracts guaranteed with shares or the full cash cost to exercise. Selling cash-secured puts, as a strategy for accumulating shares below spot price, is a low-risk method for generating yield on cash in a trading account. Selling puts is bullish and selling calls is bearish.
Naked: Non-collateralized contracts on margin. This is how accounts blow up really fast.
Expiration: The future date when the contract expires.
DTE: Days 'till expiry.
Chain: All options available on the underlying asset at the selected expiration date.
Exercised: The options contract has been executed or has expired ITM. Most brokerages will automatically execute options expiring in-the-money, be mindful of any pending liabilities in your account.
Strike: The pre-determined stock price that contract will be executed for.
Premium: The amount paid for the right to own the contract.
ITM: In-the-money. The strike price of a call is less than the underlying stock price, and puts with a strike above the share price are in-the-money.
OTM: Out-the-money. The opposite of ITM.
ATM: At-the-money. Where strike price = share price.
NTM: Near-the-money. Where the strike price approaches the share price, from above or below.
Moneyness: The difference, expressed as a percent, between the strike and share prices.
OI: Open interest. The number of contracts for calls and puts outstanding at a strike & expiry. It is important to note that open interest is not updated during market hours. The total open interest will be adjusted at the beginning of the next session.
Volume: The number of contracts traded during the trading session. Unusual options activity can be measured as a ratio of volume-to-OI.
Flow: A type of technical analysis that follows large blocks of capital traded by market makers or institutions.
Greeks: Delta, Gamma, Vega, Theta, Rho, Phi, Charm, Vanna, Vomma
Implied Volatility: In financial mathematics, the implied volatility (IV) of an option contract is that value of the volatility of the underlying instrument which, when input in an option pricing model (such as BlackβScholes), will return a theoretical value equal to the current market price of said option. A non-option financial instrument that has embedded optionality, such as an interest rate cap, can also have an implied volatility. Implied volatility, a forward-looking and subjective measure, differs from historical volatility because the latter is calculated from known past returns of a security. To understand where implied volatility stands in terms of the underlying, implied volatility rank is used to understand its implied volatility from a one-year high and low IV. Implied volatility is so important that options are often quoted in terms of volatility rather than price, particularly among professional traders.(Wikipedia)
Vega: Greek that measures an option's sensitivity to implied volatility. It is the change in the option's price for a one-point change in implied volatility.
Delta: Delta measures how much an option's price can be expected to move for every $1 change in the price of the underlying security or index.
Gamma: The gamma of an option tells us by how much the delta of an option would increase by when the underlying moves by $1.
Theta: A measure of the time decay of an option, the dollar amount an option will lose each day due to the passage of time. For at-the-money options, theta increases as an option approaches the expiration date. For in- and out-of-the-money options, theta decreases as an option approaches expiration.
Rho: Represents the rate of change between an option's value and a 1% change in the interest rate. This measures sensitivity to the interest rate. Rho is positive for purchased calls as higher interest rates increase call premiums. Conversely, Rho is negative for purchased puts as higher interest rates decrease put premiums.
Rho2: The sensitivity of the price of a foreign exchange option to the interest rate of the foreign currency.
Phi: The sensitivity of the price of a stock option relative to dividend yield.
Lambda: The Greek letter assigned to a variable that tells the ratio of how much leverage an option is providing as the price of that option changes. This measure is also referred to as the leverage factor, or in some countries, effective gearing.
Charm: Delta decay of an option, charm indicates how much the delta will change as one trading day passes. A second-order derivative of the option value, it is very important to options traders because if today the delta of your position or portfolio is 0.2 and charm is, for instance, 0.05 tomorrow your position will have a delta equal to 0.25.
Vanna: A second order Greek that measures movements of the delta with respect to a 1% change in implied volatility. Alternatively, it can also be interpreted as the fluctuations of vega with respect to small changes in the underlying price.
Vomma: Vomma measures how Vega is going to change with respect to implied volatility and it is normally expressed in order to quantify the influence on vega should the volatility oscillate by 1 point. out-of-the-money options have the highest vomma, while at-the-money options have a low vomma which means that vega remains almost constant with respect to volatility.
Image and explanation from this blog post on second order Greeks
The shape of vomma is something that every options trader should bear in mind while trading because it clearly confirms that the vega that will be influenced the most by a change in volatility will be the one of OTM options while the relationship with ATM options will be almost constant. This makes sense because a change in implied volatility would increase the probability of an OTM options to expire in-the-money and this is precisely why vomma is the highest around the OTM area.
Options Menu Items
Navigating the Options menu will be the same as anywhere else in the Terminal. After reading the jargon above, many of the features will be self-explanatory. Refer to the user documentation for details on any individual feature or menu.
At the bottom of the menu, there are items prefaced with a character, >. Like everywhere else in the OpenBB Terminal, > placed before a menu item indicates the presence of a submenu.
(π¦) /stocks/ $ options
Loaded expiry dates from Tradier
unu show unusual options activity [Fdscanner.com]
calc basic call/put PnL calculator
load load new ticker
exp see and set expiration dates
Ticker: SPY
Expiry: None
pcr display put call ratio for ticker [AlphaQuery.com]
info display option information (volatility, IV rank etc) [Barchart.com]
chains display option chains with greeks [Tradier]
oi plot open interest [Tradier/YFinance]
vol plot volume [Tradier/YFinance]
voi plot volume and open interest [Tradier/YFinance]
hist plot option history [Tradier]
vsurf show 3D volatility surface [Yfinance]
grhist plot option greek history [Syncretism.io]
plot plot variables provided by the user [Yfinance]
parity shows whether options are above or below expected price [Yfinance]
binom shows the value of an option using binomial options pricing [Yfinance]
greeks shows the greeks for a given option [Yfinance]
> screen screens tickers based on preset [Syncretism.io]
> payoff shows payoff diagram for a selection of options [Yfinance]
> pricing shows options pricing and risk neutral valuation [Yfinance]
Here's what's behind the screen submenu:
(π¦) /stocks/options/ $ screen
view view available presets (or one in particular)
set set one of the available presets
PRESET: high_IV
scr screen data from this preset
Last screened tickers:
> ca take these to comparison analysis menu
> po take these to portoflio optimization menu
The Payoff submenu:
(π¦) /stocks/options/ $ payoff
Ticker: SPY
Expiry: 2022-05-18
pick long, short, or none (default) underlying asset
Underlying Asset: None
list list available strike prices for calls and puts
add add option to the list of the options to be plotted
rmv remove option from the list of the options to be plotted
sop selected options
plot show the option payoff diagram
The Pricing submenu:
(π¦) /stocks/options/ $ pricing
Ticker: SPY
Expiry: 2022-05-18
add add an expected price to the list
rmv remove an expected price from the list
show show the listed of expected prices
rnval risk neutral valuation for an option
Next, we'll go over what you should know about operating the OpenBB Terminal within the Options Menu.
Using the Options Menu
Let's get started using it. Tag any command with, -h, to see the help dialogue.
(π¦) /stocks/options/ $ load -h
usage: load [-t TICKER] [-s {tr,yf}] [-h]
Load a ticker into option menu
optional arguments:
-t TICKER, --ticker TICKER
Stock ticker (default: None)
-s {tr,yf}, --source {tr,yf}
Source to get option expirations from (default: None)
-h, --help show this help message (default: False)
The default source for options is Tradier, and you can obtain a free developer API key here. It's not perfect, but the price is right. Alternatively, there is a choice to use yFinance data sets by attaching the flag as shown below. More data sources will be added as OpenBB grows.
(π¦) /stocks/options/ $ load -t GOOGL -s yf
The next step is to select an expiration date.
(π¦) /stocks/options/ $ exp
Available expiry dates:
0. 2022-05-20
1. 2022-05-27
2. 2022-06-03
3. 2022-06-10
4. 2022-06-17
5. 2022-06-24
6. 2022-07-15
7. 2022-08-19
8. 2022-09-16
9. 2022-10-21
10. 2022-11-18
11. 2022-12-16
12. 2023-01-20
13. 2023-03-17
14. 2023-06-16
15. 2024-01-19
(π¦) /stocks/options/ $ exp 8
Expiration set to 2022-08-19
(π¦) /stocks/options/ $ voi -h
usage: voi [-v MIN_VOL] [-m MIN_SP] [-M MAX_SP] [-s {tr,yf}] [-h] [--export EXPORT]
Plots Volume + Open Interest of calls vs puts.
optional arguments:
-v MIN_VOL, --minv MIN_VOL
minimum volume (considering open interest) threshold of the plot. (default: -1)
-m MIN_SP, --min MIN_SP
minimum strike price to consider in the plot. (default: -1)
-M MAX_SP, --max MAX_SP
maximum strike price to consider in the plot. (default: -1)
-s {tr,yf}, --source {tr,yf}
Source to get data from (default: tr)
-h, --help show this help message (default: False)
--export EXPORT Export raw data into csv, json, xlsx and figure into png, jpg, pdf, svg (default: )
(π¦) /stocks/options/ $ voi
(π¦) /stocks/options/ $ info
Options Information
βββββββββββββββββββββββββ³ββββββββββββββββββββββββββ
β Info β Value β
β‘ββββββββββββββββββββββββββββββββββββββββββββββββββ©
β Implied Volatility β 37.06% ( -4.75%) β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β Historical Volatility β 39.77% β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β IV Percentile β 92% β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β IV Rank β 60.60% β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β IV High β 50.22% on 04/26/22 β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β IV Low β 16.81% on 09/01/21 β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β Put/Call Vol Ratio β 0.53 β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β Today's Volume β 51,816 β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β Volume Avg (30-Day) β 27,791 β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β Put/Call OI Ratio β 0.78 β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β Today's Open Interest β 349,771 β
βββββββββββββββββββββββββΌββββββββββββββββββββββββββ€
β Open Int (30-Day) β 330,789 β
βββββββββββββββββββββββββ΄ββββββββββββββββββββββββββ
Autocomplete will provide some help along the way.
Read the user documentation for this feature
(π¦) /stocks/options/ $ binom -h
usage: binom [-s STRIKE] [-p] [-e] [-x] [--plot] [-v VOLATILITY] [-h]
Gives the option value using binomial option valuation
optional arguments:
-s STRIKE, --strike STRIKE
Strike price for option shown (default: 0)
-p, --put Value a put instead of a call (default: False)
-e, --european Value a European option instead of an American one (default: False)
-x, --xlsx Export an excel spreadsheet with binomial pricing data (default: False)
--plot Plot expected ending values (default: False)
-v VOLATILITY, --volatility VOLATILITY
Underlying asset annualized volatility. Historical volatility used if not supplied. (default: None)
-h, --help show this help message (default: False)
(π¦) /stocks/options/ $ binom --plot -v 0.376
(π¦) /stocks/options/ $ plot -h
usage: plot [-p] [-x {ltd,s,lp,b,a,c,pc,v,oi,iv}] [-y {ltd,s,lp,b,a,c,pc,v,oi,iv}] [-c {smile}] [-h] [--export EXPORT]
Shows a plot for the given x and y variables
optional arguments:
-p, --put Shows puts instead of calls (default: False)
-x {ltd,s,lp,b,a,c,pc,v,oi,iv}, --x_axis {ltd,s,lp,b,a,c,pc,v,oi,iv}
ltd- last trade date, s- strike, lp- last price, b- bid, a- ask,c- change, pc- percent change, v- volume, oi- open interest, iv- implied volatility (default: None)
-y {ltd,s,lp,b,a,c,pc,v,oi,iv}, --y_axis {ltd,s,lp,b,a,c,pc,v,oi,iv}
ltd- last trade date, s- strike, lp- last price, b- bid, a- ask,c- change, pc- percent change, v- volume, oi- open interest, iv- implied volatility (default: None)
-c {smile}, --custom {smile}
Choose from already created graphs (default: None)
-h, --help show this help message (default: False)
--export EXPORT Export figure into png, jpg, pdf, svg (default: )
(π¦) /stocks/options/ $ plot -x s -y lp
(π¦) /stocks/options/ $ plot -x s -y oi
The options screener reads .INI files from the local installation path. Presets can be created using the file: template.ini
~/Applications/OpenBB/openbb_terminal/stocks/options/presets/
Monitoring unusual options is a popular way of identifying institution and market maker hedging activity. Unusual options can be a substitute for subscription services dedicated to options flow.
(π¦) /stocks/options/ $ unu -h
usage: unu [-l LIMIT] [-s {Strike,Vol/OI,Vol,OI,Bid,Ask,Exp,Ticker} [{Strike,Vol/OI,Vol,OI,Bid,Ask,Exp,Ticker} ...]] [-a] [-p] [-c] [-h] [--export EXPORT]
This command gets unusual options from fdscanner.com
optional arguments:
-l LIMIT, --limit LIMIT
Limit of options to show. Each scraped page gives 20 results. (default: 20)
-s {Strike,Vol/OI,Vol,OI,Bid,Ask,Exp,Ticker} [{Strike,Vol/OI,Vol,OI,Bid,Ask,Exp,Ticker} ...], --sortby {Strike,Vol/OI,Vol,OI,Bid,Ask,Exp,Ticker} [{Strike,Vol/OI,Vol,OI,Bid,Ask,Exp,Ticker} ...]
Column to sort by. Vol/OI is the default and typical variable to be considered unusual. (default: Vol/OI)
-a, --ascending Flag to sort in ascending order (default: False)
-p, --puts_only Flag to show puts only (default: False)
-c, --calls_only Flag to show calls only (default: False)
-h, --help show this help message (default: False)
--export EXPORT Export raw data into csv, json, xlsx (default: )
(π¦) /stocks/options/ $ unu -s Exp -p
Last Updated: 2022-05-13 15:20:48 (EST)
ββββββββββ³βββββββββββββ³ββββββββββ³βββββββ³βββββββββ³βββββββββββ³ββββββββββ³βββββββββββ³βββββββ
β Ticker β Exp β Strike β Type β Vol/OI β Vol β OI β Bid β Ask β
β‘βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ©
β AAPL β 2023-09-15 β 80.00 β Put β 13.70 β 1559.00 β 114.00 β 2.25 β 2.50 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β KO β 2023-06-16 β 55.00 β Put β 31.40 β 4275.00 β 136.00 β 2.43 β 2.65 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β WFC β 2022-11-18 β 40.00 β Put β 12.20 β 3749.00 β 308.00 β 3.45 β 3.55 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β FCX β 2022-08-19 β 25.00 β Put β 13.70 β 2829.00 β 207.00 β 0.74 β 0.82 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β AXP β 2022-07-15 β 135.00 β Put β 27.50 β 3024.00 β 110.00 β 3.15 β 3.35 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β SYF β 2022-06-17 β 30.00 β Put β 13.10 β 16274.00 β 1243.00 β 0.90 β 0.95 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β NEM β 2022-05-20 β 64.00 β Put β 47.50 β 20825.00 β 438.00 β 1.06 β 1.13 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β OXY β 2022-05-20 β 63.00 β Put β 23.50 β 14074.00 β 600.00 β 1.94 β 2.00 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β BA β 2022-05-13 β 126.00 β Put β 17.30 β 6970.00 β 403.00 β 0.05 β 0.09 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β AMD β 2022-05-13 β 94.00 β Put β 13.70 β 20062.00 β 1462.00 β 0.04 β 0.05 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β TSLA β 2022-05-13 β 760.00 β Put β 33.40 β 59742.00 β 1788.00 β 0.31 β 0.38 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β NVDA β 2022-05-13 β 175.00 β Put β 12.20 β 39326.00 β 3235.00 β 0.13 β 0.15 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β AMZN β 2022-05-13 β 2220.00 β Put β 12.20 β 5891.00 β 481.00 β 0.90 β 1.00 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β TSLA β 2022-05-13 β 755.00 β Put β 24.40 β 26674.00 β 1094.00 β 0.12 β 0.13 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β TSLA β 2022-05-13 β 740.00 β Put β 13.60 β 24897.00 β 1830.00 β 0.02 β 0.04 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β DAL β 2022-05-13 β 36.50 β Put β 22.70 β 4618.00 β 203.00 β 0.00e+00 β 0.01 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β BA β 2022-05-13 β 124.00 β Put β 19.70 β 5400.00 β 274.00 β 0.00e+00 β 0.01 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β BA β 2022-05-13 β 127.00 β Put β 14.30 β 3433.00 β 240.00 β 0.25 β 0.37 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β TSLA β 2022-05-13 β 750.00 β Put β 14.80 β 79306.00 β 5348.00 β 0.04 β 0.06 β
ββββββββββΌβββββββββββββΌββββββββββΌβββββββΌβββββββββΌβββββββββββΌββββββββββΌβββββββββββΌβββββββ€
β TSLA β 2022-05-13 β 765.00 β Put β 39.60 β 33733.00 β 852.00 β 1.00 β 1.13 β
ββββββββββ΄βββββββββββββ΄ββββββββββ΄βββββββ΄βββββββββ΄βββββββββββ΄ββββββββββ΄βββββββββββ΄βββββββ
If you have been following along with your terminal you will now be able to confidently manoeuvre around, and use the filters available for each command shown by requesting the help dialogue, -h.
Those requiring technical support should use the support command, from anywhere in the terminal!
Visit the community Discord server and chat with us about your options: https://discord.com/invite/Up2QGbMKHY
Tag OpenBB on Twitter with your degenerate options trades: https://twitter.com/openbb_finance
Visit OpenBB's website to get the latest updates and downloads: https://openbb.co
Posted on May 14, 2022
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.