mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-11-09 19:02:19 +00:00
* post-install clarification, fix links * more links * change word * toolkit cleanup * rename 'contributing' to 'development' * update extensions * some urls * Update sdk-platform and v4-develop in urls (#5730) * Update sdk-platform and v4-develop in urls * Seprate Intrinio financials data tags into a different command (#5723) * add `ebit` field in income statement standard model * only add required data tags * remove calculations data * use `name` key instead of `tag` key * set `period` as required in data * remove `period` and `cik` from provider models * add `equity/fundamental/search_financial_attributes` with tests * clean descriptions file * add `equity/fundamental/financial_attributes` with tests * set `value` as `Optional` * Fix threadpool test error (#5734) * Remove ultima from deps (#5736) * remove ultima from deps * skip ultima test * black * change skip location * try except statement to avoid error on the ci * new currency reference rates pr (#5724) * point files to linters (#5739) * remove news from equity (#5741) * Add tiingo provider (#5740) * first commit * things * Add news endpoints * CryptoHistorical * Add currency and trailing dividend yield * things working * deps * fix pre commit things * tests? * black on the tests * pratty told me to add it * integration tests * added helpers * crypto revamped * currency revamped * trailing dividend yield revamped * equity historical revamped * company news overhauled * global news overhauled * remove `tags` param from news models * crypto correct `exchanges` description * james smh * re-recorded fetcher tests * fixed integration tests * econometrics smh * james smh again --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Add `derivatives` extension for `futures` and `options` (#5742) * removed options and futures * add derivatives extension * cleanup * bug #5649 (#5722) * bug #5649 * fixing --a upmom, downmom --------- Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> * Rename the fmp search -> screener (#5744) * Rename the fmp search -> screener * misses some * i cant copy paste * docs/fix-urls: Updates the Terminal About URLs to match `/develop` (#5720) * update Terminal about URLs and some other broken links * ruff * intro * changing the heading levels * dependency management sections * structure * developer guides * structure * contributor guides * keywords and descriptions * broken urls * cool cards * Cool cards (#5727) * tidy up terminal/content * some more tidy up * fix styling for platform that was missing * more tidy up * improve color for dark and light mode * create new reference card for more basic cards * rename back to menus * implement all index.md for terminal, except reference * improve bot title * more refactoring * fix remaining index * header styling * more styling * heheheheheheeh * Revert "heheheheheheeh" This reverts commit7d095fcfd2. * Ccards (#5733) * links * more links * improved styling and chevron aligned to title * fix index.mdx urls for Terminal * update package.json * update index.mdx * fix generation * spelling * toolkit_extensions * update data extensions * couple of links * add tiingo to data extensions list --------- Co-authored-by: hjoaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> Co-authored-by: James Maslek <jmaslek11@gmail.com> * Stock leftover cleanup (#5745) * change to equity in `.md` files * `HistoricalStockSplits`->`HistoricalSplits` * `StockInsiderTrading`->`InsiderTrading` * sorry fmp * `EquityHistorical` cleanup * `EquityNBBO` cleanup * .md leftover * the last of stocks * post-install clarification, fix links * more links * change word * toolkit cleanup * rename 'contributing' to 'development' * Hotfix/urllib to dev group (#5732) * use the urllib3 dependency on the dev group instead * adapt the version script for the nightlies - if it's a nightly the package distribution name will have a different name * add dev dependencies to the dev installation bc of the ci * updating the import on validate_call according to: https://docs.pydantic.dev/latest/concepts/validation_decorator/ the way we were importing it breaks if pydantic=2.5 @montezdesousa * loosing urllib3 version specification on the provider and adding it to platform dev deps * rmeoving urllib from top level deps; and removing --with dev flag * changing to ^ instead * Revert "changing to ^ instead" This reverts commit7300904e9f. * unnecessary dep --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/v4-bop - Add ECB Balance of Payments (Replaces #5716) (#5726) * add ecb balance of payments * missing __init__.py files * Nasdaq calendar earnings and fix FMP calendar earnings (#5718) Co-authored-by: James Maslek <jmaslek11@gmail.com> * feature/us-treasury-auctions: Adds Treasury Auctions endpoint and provider for US Government Data. (#5746) * add government_us provider and treasury auctions endpoint * black * add param for cusip * move logic for setting default start/end date * Update hub<>platform credentials map (#5749) * update hub<>platform credentials map * typo * Add API settings schema to system settings (#5743) Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> * Skip checking creds (#5737) * skip checking creds * fix bug * ok mypy * add comment * rename required_credentials * fix * fix top_retail bug * don't require creds in some nasdaq fetchers * black * this was not here before * fix tests * update fetcher test * update contributing guidelines * Fix Quote (#5752) * Fix Quote * fixed return type and model validation --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * Wrap up renaming global news to world news on a model level (#5750) * Wrap up renaming global news to world news on a model level * cleanup --------- Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> * update extensions * some urls * Revert changes to v3 docs --------- Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: Danglewood <85772166+deeleeramone@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Ramazan <guvencramazan@yandex.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt> * POST request example * update post example * find symbols * market calendars * codespell * codespell ftw * improve main page light mode --------- Co-authored-by: Theodore Aptekarev <aptekarev@gmail.com> Co-authored-by: Henrique Joaquim <h.joaquim@campus.fct.unl.pt> Co-authored-by: Pratyush Shukla <ps4534@nyu.edu> Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com> Co-authored-by: montezdesousa <79287829+montezdesousa@users.noreply.github.com> Co-authored-by: James Maslek <jmaslek11@gmail.com> Co-authored-by: Ramazan <guvencramazan@yandex.com> Co-authored-by: andrewkenreich <andrew.kenreich@gmail.com> Co-authored-by: DidierRLopes <dro.lopes@campus.fct.unl.pt>
229 lines
5.9 KiB
Markdown
Vendored
229 lines
5.9 KiB
Markdown
Vendored
---
|
|
title: Installation
|
|
sidebar_position: 1
|
|
description: This page presents the general system requirements, supported environments,
|
|
installation procedures, and setup for running the OpenBB Platform. It discusses
|
|
the prerequisites including Python version, operating system requirements, Docker
|
|
usage, and the process of building the platform from source.
|
|
keywords:
|
|
- OpenBB Platform
|
|
- Python
|
|
- System requirements
|
|
- Supported environments
|
|
- Installation
|
|
- Docker
|
|
- Python virtual environment
|
|
- Installation from source
|
|
- Windows 10
|
|
- Mac OS Big Sur
|
|
- Linux
|
|
- Package installation
|
|
- VS Code
|
|
- PyCharm
|
|
- Jupyter
|
|
- GitHub
|
|
- Conda
|
|
- venv
|
|
- API
|
|
- Repository
|
|
- pip
|
|
- Poetry
|
|
- Toml
|
|
- PyPI
|
|
- Node.js
|
|
- npm
|
|
---
|
|
|
|
import HeadTitle from '@site/src/components/General/HeadTitle.tsx';
|
|
|
|
<HeadTitle title="Installation | OpenBB Platform Docs" />
|
|
|
|
## General System Requirements
|
|
|
|
Most systems capable of running Python 3.8-3.11 will be compatible with the OpenBB Platform. A modern processor (five years or less), running an up-to-date operating system, with at least 4GB of RAM, is recommended. Maintaining the system with current patches ensures maximum compatibility. At a minimum, Windows and macOS should be:
|
|
|
|
- Windows 10
|
|
- Mac OS Big Sur
|
|
|
|
Linux users should run the command line update for the package manager, prior to installation.
|
|
|
|
## Supported Environments
|
|
|
|
The OpenBB Platform is installed within a Python virtual environment. It is compatible with versions of Python between 3.8 and 3.11, inclusively. The method for creating the environment will be a matter of user preference, from the command line - [Conda](https://docs.conda.io/projects/miniconda/en/latest/miniconda-install.html), [venv](https://docs.python.org/3/library/venv.html), [Docker](https://hub.docker.com/), etc. - or in a code editor and IDE - [VS Code](https://code.visualstudio.com/docs/languages/python), [PyCharm](https://www.jetbrains.com/pycharm/), [Jupyter](https://jupyter.org/).
|
|
|
|
[Docker](/platform/installation#docker) builds the environment during the installation process, skip ahead to the specific section [below](/platform/installation#docker).
|
|
|
|
For those new to Python, [this article](https://www.infoworld.com/article/3306656/python-virtualenv-and-venv-dos-and-donts.html) shares some tips on getting started and why environments are important.
|
|
|
|
See [this guide](https://code.visualstudio.com/docs/python/environments) for creating a Python environment in VS Code.
|
|
|
|
With the container created, and activated, begin the installation process.
|
|
|
|
## Installation
|
|
|
|
Before installation, update the package manager so that `pip` is current, then create the environment with the desired version of Python and install the following packages:
|
|
|
|
:::note
|
|
Installing packages directly to the system Python or `base` environment is not recommended. Create a new environment.
|
|
:::
|
|
|
|
```console
|
|
pip install poetry toml
|
|
```
|
|
|
|
### PyPI
|
|
|
|
Install from PyPI with:
|
|
|
|
```console
|
|
pip install openbb --pre
|
|
```
|
|
|
|
To install all of the extensions and providers:
|
|
|
|
```console
|
|
pip install openbb[all] --pre
|
|
```
|
|
|
|
:::note
|
|
While still under active development, the `pre` flag is required to install the core OpenBB Platform latest version.
|
|
:::
|
|
|
|
To install a single extension:
|
|
|
|
```console
|
|
pip install openbb[charting] --pre
|
|
```
|
|
|
|
```console
|
|
pip install openbb[ta] --pre
|
|
```
|
|
|
|
Import the package with:
|
|
|
|
```console
|
|
from openbb import obb
|
|
```
|
|
|
|
### Docker
|
|
|
|
OpenBB supplies a `.dockerfile` on [GitHub](https://github.com/OpenBB-finance/OpenBBTerminal).
|
|
|
|
Run the following command from the repo root to build the image:
|
|
|
|
```bash
|
|
docker build -f build/docker/api.dockerfile -t openbb-platform:latest .
|
|
```
|
|
|
|
To run it:
|
|
|
|
```bash
|
|
docker run --rm -p 8000:8000 -v ~/.openbb_platform:/root/.openbb_platform openbb-platform:latest
|
|
```
|
|
|
|
This will mount the local `~/.openbb_platform` directory into the Docker container to use with the API keys and preferences from there, and it will expose the API on port `8000`.
|
|
|
|
### Source
|
|
|
|
To build the OpenBB Platform from the source code, first install `git`:
|
|
|
|
```console
|
|
pip install git
|
|
```
|
|
|
|
Next, clone the repository from GitHub:
|
|
|
|
```console
|
|
git clone git@github.com:OpenBB-finance/OpenBBTerminal.git
|
|
```
|
|
|
|
When it is done, checkout the branch where the code is living:
|
|
|
|
```console
|
|
git checkout develop
|
|
```
|
|
|
|
Then, `cd` into the directory:
|
|
|
|
```console
|
|
cd openbb_platform
|
|
```
|
|
|
|
Finally, run the developer installation script:
|
|
|
|
```console
|
|
python dev_install.py
|
|
```
|
|
|
|
:::note
|
|
To install all extensions and providers, run: `python dev_install.py -e`
|
|
:::
|
|
|
|
## Post-Installation
|
|
|
|
With a fresh installation, and upon installing or uninstalling extensions, the Python interface needs to be built. This is done automatically, but can be manually triggered if required. Start a Python session and then `import openbb`:
|
|
|
|
```console
|
|
python
|
|
|
|
import openbb
|
|
|
|
exit()
|
|
```
|
|
|
|
To manually trigger the build:
|
|
|
|
```python
|
|
import openbb
|
|
openbb.build()
|
|
```
|
|
|
|
Restart the Python interpreter and then begin using the OpenBB Platform.
|
|
|
|
```python
|
|
from openbb import obb
|
|
```
|
|
|
|
Start the REST API with:
|
|
|
|
```console
|
|
uvicorn openbb_core.api.rest_api:app --host 0.0.0.0 --port 8000 --reload
|
|
```
|
|
|
|
## Documentation
|
|
|
|
The documentation and packages are kept in the `/website` folder, at the base of the repository. Navigate there to install the dependencies and start the development server.
|
|
|
|
#### Node.js
|
|
|
|
- [Node.js](https://nodejs.org/en/) >= 16.13.0
|
|
To check if Node.js installed, run this command:
|
|
|
|
```bash
|
|
node --version # should be v16.13.0 or higher
|
|
```
|
|
|
|
#### Install Dependencies
|
|
|
|
```bash
|
|
npm install
|
|
```
|
|
|
|
#### Start Development Server
|
|
|
|
```bash
|
|
npm start
|
|
```
|
|
|
|
This starts a local development server at: [http://localhost:3000](http://localhost:3000)
|
|
|
|
Most changes are reflected live without having to restart the server.
|
|
|
|
#### Build
|
|
|
|
```bash
|
|
npm run build
|
|
```
|
|
|
|
This command generates static content into the `build` directory and can be served using any static contents hosting service. OpenBB uses Github Pages to host our website, it's deployed in the `gh-pages` branch.
|