Documentation
Learn to use QuantConnect and Explore Our Features
Cloud Platform
Learn how to use the Cloud Platform
Local Platform
Securely deploy quantitative strategies on-premise with proprietary datasets
Writing Algorithms
Make your first steps to writing a quantitative trading strategy
Research
Using the interactive Jupyter research environment
LEAN CLI
Cross-platform CLI which makes it easier to develop with the LEAN engine locally and in the cloud
LEAN Engine
Learn the engine powering QuantConnect
Try QuantConnect Now
QuantConnect's LEAN engine manages your portfolio and data feeds letting you focus on your algorithm strategy and execution. Data is piped into your strategy via event handlers, upon which you can place trades. We provide basic portfolio management and fill modelling underneath the hood automatically. This is provided by the QCAlgorithm base class.
Design and Test Your Strategy
Deploy it to Your Live Brokerage
Code in Multiple Languages
Harness Our Cluster of Servers
public class BasicTemplateAlgorithm : QCAlgorithm { public override void Initialize() { // Setup algorithm requirements: cash, dates and securities. // Initialize is called once at the start of the algorithm. } public override void OnData(Slice slice) { // Data requested is then piped into event handlers like this one. } }
class BasicTemplateAlgorithm(QCAlgorithm): def initialize(self) -> None: '''Initialise the data and resolution required, as well as the cash and start-end dates for your algorithm. All algorithms must initialized.''' pass def on_data(self, slice: Slice) -> None: '''OnData event is the primary entry point for your algorithm. Each new data point will be pumped in here. data is a Slice object keyed by symbol containing the stock data''' pass