Skip to main content

Basics

The OpenBB Terminal is based off the Command Line Interface (CLI) which is installed by default on every computer. By opening the application you have installed from the Installation Page, you are greeted with the following interface:

The OpenBB Terminal is centered around keyboard input. To navigate and perform analysis you will have to type in the name of the command followed by an ENTER (⏎). If you wish to see information about the OpenBB Terminal you can do so by typing about and then press ENTER (⏎). As you are typing, you will notice that you receive suggestions, by using the DOWN (⌄) arrow and pressing ENTER (⏎) you can select the command and execute it.

Throughout the entire terminal, the same set of colors are used which all share the same representation. This is structured as follows:

  • Light Blue: represents commands.
  • Dark Blue: represents menus, also recognizable by the `>` in front.
  • Orange: represents titles and headers.
  • Yellow: represents descriptions of a parameter or variable.
  • White: represents text, usually in combination with a description that is in Yellow.

Explanation of Menus

Menus, depicted in Dark Blue, take you to a new section of the terminal referred to as a menu. For example, if you wish to view information about stocks, you can do so by typing stocks and pressing ENTER (⏎). This opens a new menu as depicted below.

Stocks Menu

Depending on the menu you are in, you are presented with a new set of commands and menus you can select. There are interactions in place between each menu. For example, when selecting a company within the stocks menu, the terminal will remember your selection when you visit the fa or options menu. See Introduction to Stocks.

Pro tip: you can quickly jump between menus by using a forward slash (/). For example, if I want to access the options menu, You can type /stocks/options to instantly arrive at this menu. You can do this from any location within the OpenBB Terminal!

Explanation of Commands

Commands, depicted in Light Blue, execute an action or task. For example, the commands that you are able to use from any menu in the terminal (see Explanation of Menus) are as follows:

  • cls: clears the screen, by executing this command you are left with an empty screen.
  • help, h or ?: displays the menu that you are currently on.
  • quit, q or ..: allows for navigation through the menu. E.g. if you type stocks press ENTER (⏎) and then use q and press ENTER (⏎) you return to where you started. Validate this by typing ? and pressing ENTER (⏎).
  • support: allows you to submit bugs, questions and suggestions.
  • about: this opens the related guide, linking to this website. It also has the ability to open a guide to a specific command. For example, within the stocks menu, about candle opens this guide.
  • wiki: search for a given expression on the Wikipedia without leaving the terminal.

Continuing with the example mentioned at quit, revisit the stocks menu and look at the commands. At the top you will see a command named load. To understand what this command can do, you can use load -h followed by ENTER (⏎). The -h stands for help and every command will have this feature. This will return the following:

2022 May 19, 05:27 (🦋) /stocks/ $ load -h
usage: load [-t TICKER] [-s START] [-e END] [-i {1,5,15,30,60}] [-p] [-f FILEPATH] [-m] [-w] [-r {ytd,1y,2y,5y,6m}] [--exchange] [--performance] [-h] [--export EXPORT]
[--source {YahooFinance,IEXCloud,AlphaVantage,Polygon,EODHD}]

Load stock ticker to perform analysis on. When the data source is yf, an Indian ticker can be loaded by using '.NS' at the end, e.g. 'SBIN.NS'.

optional arguments:
-t TICKER, --ticker TICKER
Stock ticker (default: None)
-s START, --start START
The starting date (format YYYY-MM-DD) of the stock (default: 2020-01-09)
-e END, --end END The ending date (format YYYY-MM-DD) of the stock (default: 2023-01-13)
-i {1,5,15,30,60}, --interval {1,5,15,30,60}
Intraday stock minutes (default: 1440)
-p, --prepost Pre/After market hours. Only works for 'yf' source, and intraday data (default: False)
-f FILEPATH, --file FILEPATH
Path to load custom file. (default: None)
-m, --monthly Load monthly data (default: False)
-w, --weekly Load weekly data (default: False)
-r {ytd,1y,2y,5y,6m}, --iexrange {ytd,1y,2y,5y,6m}
Range for using the iexcloud api. Longer range requires more tokens in account (default: ytd)
--exchange Show exchange information. (default: False)
--performance Show performance information. (default: False)
-h, --help show this help message (default: False)
--export EXPORT Export raw data into csv, json, xlsx (default: )
--source {YahooFinance,IEXCloud,AlphaVantage,Polygon,EODHD}
Data source to select from (default: YahooFinance)

For more information and examples, use 'about load' to access the related guide.

This shows you all arguments the command has. These are additional options you can provide to the command. Each default value is also displayed which is used when you do not select this option. For example, if I would use the stock ticker of Amazon (AMZN, which can also be found with search amazon), I can use load AMZN which will return the following:

2023 Jan 13, 11:22 (🦋) /stocks/ $ load AMZN

Loading Daily data for AMZN with starting period 2020-01-09.

The default values you see within load -h have been inputted here. E.g. the starting period is 2019-05-15. I can decide to change these default values by calling the argument and inputting a different value.

Whenever you wish to apply an optional argument, you use the related shortcode, e.g. -s or --start. Then, if there is an additional word behind the argument (in this case there is, which is START) it implies the argument expects you to define a value. Within the documentation you can read that the format must be YYYY-MM-DD implying that 2010-01-01 will be valid. If there is not an additional word behind it, it is enough to write down load AMZN -p (which refers to the prepost optional argument)

Let's change the starting and ending period of the data that is being loaded in by doing the following:

2023 Jan 13, 11:23 (🦋) /stocks/ $ load AMZN -s 2005-01-01 -e 2010-01-01

Loading Daily data for AMZN with starting period 2005-01-03.

We can check that this period has changed by looking into the candle chart with candle. This, again shares the same -h argument. This results in the following which indeed depicts our selected period.

2022 May 19, 05:44 (🦋) /stocks/ $ candle
Amazon Candle Chart

As mentioned in the Explanation of Menus, some information also transfers over to other menus and this includes the loaded market data from load. So, if you would visit the ta menu (which stands for Technical Analysis) you will see that, by running any command, the selected period above is depicted again. Return to the Stocks menu again by using q and use it again to return to the home screen which can be shown with ?.

Defining your own source of data

The OpenBB Terminal is built on a lot of different data sources. The example above collects data from Yahoo Finance. This could be undesirable and therefore we allow for a variety of different data sources. Think of Polygon, IEX Cloud, Alpha Vantage and Binance to name a few.

Some of these sources require you to set an API Key to connect with their data. You can find more information about setting these keys in the OpenBB Terminal here.

It is also possible to use your own datastreams. It could be that you have a dataset in Microsoft Excel or similar that you would like to import for usage within any of our functionalities. In that case, have a look here.