---
title: "Getting Started"
description: "Before you run backtests, test your hypothesis in the Research Environment. It's easy to perform data analysis and produce plots in the Research Environment."
canonical: https://www.quantconnect.com/docs/v2/cloud-platform/research/getting-started
markdown: https://www.quantconnect.com/docs/v2/cloud-platform/research/getting-started.md
language: python
source: https://github.com/QuantConnect/Documentation/tree/master/01%20Cloud%20Platform/07%20Research/01%20Getting%20Started
modified: 2026-10-30
index: https://www.quantconnect.com/llms.txt
---

# Getting Started

[Documentation](https://www.quantconnect.com/docs/v2.md) > [Cloud Platform](https://www.quantconnect.com/docs/v2/cloud-platform.md) > [Research](https://www.quantconnect.com/docs/v2/cloud-platform/research.md) > Getting Started

> Code examples are shown in Python. Append `?lang=csharp` to this URL for the C# version of this page.

![Running a jupyter notebook cell](https://cdn.quantconnect.com/i/tu/research-env-getting-started.gif)

## Introduction

The Research Environment is a [Jupyter notebook](https://jupyter-notebook.readthedocs.io/en/stable/notebook.html)-based, interactive commandline environment where you can access our data through the `QuantBook` class. The environment supports both Python and C#. If you use Python, you can [import code from the code files in your project into the Research Environment](https://www.quantconnect.com/docs/v2/research-environment/key-concepts/research-engine.md#05-Import-Project-Code) to aid development.

Before you run backtests, we recommend testing your hypothesis in the Research Environment. It's easier to perform data analysis and [produce plots in the Research Environment](https://www.quantconnect.com/docs/v2/research-environment/charting.md) than in a backtest. The Research Environment also supports [debugging](https://www.quantconnect.com/docs/v2/research-environment/debugging.md) for Python projects.

Before backtesting or live trading with machine learning models, you may find it beneficial to train them in the Research Environment, save them in the Object Store, and then load them from the Object Store into the backtesting and live trading environment

In the Research Environment, you can also use the QuantConnect API to [import your backtest results](https://www.quantconnect.com/docs/v2/research-environment/meta-analysis/backtest-analysis.md) for further analysis.

> Note: This chapter is an introduction to the Research Environment for the Algorithm Lab. For more comprehensive information on using research notebooks, see our dedicated [Research Environment](https://www.quantconnect.com/docs/v2/research-environment.md) documentation.

## Example

The following snippet demonstrates how to use the Research Environment to plot the price and Bollinger Bands of the S&P 500 index ETF, SPY:

```python
# Create a QuantBook
qb = QuantBook()

# Add an asset.
symbol = qb.add_equity("SPY").symbol

# Request some historical data.
history = qb.history(symbol, 360, Resolution.DAILY)

# Calculate the Bollinger Bands.
bbdf = qb.indicator_history(BollingerBands(30, 2), symbol, 360, Resolution.DAILY).data_frame

# Plot the data
bbdf[['price', 'lowerband', 'middleband', 'upperband']].plot();
```

![Bollinger Bands plotting in research environment](https://cdn.quantconnect.com/i/tu/research-env-python-demo.png)

## Open Notebooks

Each new project you create contains a notebook file by default. Follow these steps to open the notebook:

1. [Open the project](https://www.quantconnect.com/docs/v2/cloud-platform/projects/getting-started.md#02-View-All-Projects).
2. In the right navigation menu, click the ![Local lab explorer icon](https://cdn.quantconnect.com/i/tu/local-lab-explorer-icon.jpg) **Explorer** icon.
3. In the Explorer panel, expand the **Workspace (Workspace)** section.
4. Click the `research.ipynb` file.

When you open a notebook, it automatically tries to connect to the correct Jupyter server and select the correct kernel, which can take up to one minute. If the top-right corner of the notebook displays a **base (Python x.x.x)** button, wait for the button to change to **Foundation-Py-Default** before you run the cells. If you run cells before the notebook connects to the server and kernel, you may get the following error message:

`NameError: name 'QuantBook' is not defined`

## Run Notebook Cells

Notebooks are a collection of cells where you can write code snippets or MarkDown. To execute a cell, press **Shift+Enter**.

![Python jupyter notebook interface](https://cdn.quantconnect.com/i/tu/notebook-cells-py.jpg)

The following describes some helpful keyboard shortcuts to speed up your research:

| Keyboard Shortcut | Description |
| --- | --- |
| **Shift+Enter** | Run the selected cell. |
| **a** | Insert a cell above the selected cell. |
| **b** | Insert a cell below the selected cell. |
| **x** | Cut the selected cell. |
| **v** | Paste the copied or cut cell. |
| **z** | Undo cell actions. |

There is a 15 minute timeout period before the cells becomes unresponsive. If this occurs, restart the notebook to be able to run cells again.

## Stop Nodes

You need [stop node permissions](https://www.quantconnect.com/docs/v2/cloud-platform/organizations/members.md#09-Permissions) to stop research nodes in the cloud.

Follow these steps to stop a research node:

1. [Open the project](https://www.quantconnect.com/docs/v2/cloud-platform/projects/getting-started.md#02-View-All-Projects).
2. In the right navigation menu, click the ![Resources icon](https://cdn.quantconnect.com/i/tu/resources-icon.png) **Resources** icon.
3. Click the **stop** button next to the research node you want to stop.

## Add Notebooks

Follow these steps to add notebook files to a project:

1. [Open the project](https://www.quantconnect.com/docs/v2/cloud-platform/projects/getting-started.md#02-View-All-Projects).
2. In the right navigation menu, click the ![Local lab explorer icon](https://cdn.quantconnect.com/i/tu/local-lab-explorer-icon.jpg) **Explorer** icon.
3. In the Explorer panel, expand the **Workspace (Workspace)** section.
4. Click the ![Add new file icon](https://cdn.quantconnect.com/i/tu/new-file-icon.png) **New File** icon.
5. Enter `fileName .ipynb`.
6. Press **Enter**.

![Adding a research notebook in Python development environment](https://cdn.quantconnect.com/i/tu/add-notebook-py.gif)

## Rename Notebooks

Follow these steps to rename a notebook in a project:

1. [Open the project](https://www.quantconnect.com/docs/v2/cloud-platform/projects/getting-started.md#02-View-All-Projects).
2. In the right navigation menu, click the ![](https://cdn.quantconnect.com/i/tu/local-lab-explorer-icon.jpg) **Explorer** icon.
3. In the Explorer panel, right-click the notebook you want to rename and then click **Rename**.
4. Enter the new name and then press **Enter**.

The following directory names are reserved: `.ipynb_checkpoints`, `.idea`, `.vscode`, `__pycache__`, `bin`, `obj`, `backtests`, `live`, `optimizations`, `storage`, and `report`.

## Delete Notebooks

Follow these steps to delete a notebook in a project:

1. [Open the project](https://www.quantconnect.com/docs/v2/cloud-platform/projects/getting-started.md#02-View-All-Projects).
2. In the right navigation menu, click the ![](https://cdn.quantconnect.com/i/tu/local-lab-explorer-icon.jpg) **Explorer** icon.
3. In the Explorer panel, right-click the notebook you want to delete and then click **Delete Permanently**.
4. Click **Delete**.

## Learn Jupyter

The following table lists some helpful resources to learn Jupyter:

| Type | Name | Producer |
| --- | --- | --- |
| Text | [Jupyter Tutorial](https://www.tutorialspoint.com/jupyter/index.htm) | tutorialspoint |
| Text | [Jupyter Notebook Tutorial: The Definitive Guide](https://www.datacamp.com/tutorial/tutorial-jupyter-notebook) | DataCamp |
| Text | [An Introduction to DataFrame](https://devblogs.microsoft.com/dotnet/an-introduction-to-dataframe/) | Microsoft Developer Blogs |
