The Official Open-Sourcing of LEAN

Thanks to the community's support, we're proud to announce that the LEAN Algorithmic Trading Engine is now 100% open source. You can connect any data source, execute through any brokerage and design any algorithm 100% locally.

Moment of our Open Sourcing, Jan 12th 2015

It's an exciting new frontier for algorithmic trading; through open source, QuantConnect is breaking open the traditionally secretive world of algorithmic trading to give you the same powerful tools as major hedge funds.

Lean is "plug and play." Running your first backtest takes about 23 seconds.

1. Star/Fork and Download the QuantConnect/LEAN Repo* from GitHub 2. Open Lean Project in Visual Studio (let Nuget download all dependencies) 3. Press F5 to Run Project

Presto - you've run your first backtest! Here is a step-by-step guide for building your first algorithm. You can also design custom indicators, import data for international stock markets, and connect with any brokerage. We even ship some data with the repo so you can get started instantly.

Clone LEAN Today to Start Your Journey

 Clone LEAN Today to Start Your Journey

We're incredibly grateful to the QuantConnect pioneers for making this possible. With your support, we can build the best algorithmic trading platform in the world. Sustainable, independent, and community-driven.

More Raw Power

To be profitable, you need to iterate quickly. Last week we upgraded our backtest processing servers: you can now run a 10-year, event-driven backtest in 33 seconds. Your algorithms run on beautiful i7x3930s with six cores/12 threads/64GB ram. We are the world's first cloud-desktop hybrid algorithmic trading platform aiming to give you the best of both worlds; ease of local development and horsepower of the cloud.

Dynamic Indicator System

Thanks to some long hours by Michael H, we launched an elegant, powerful, and dynamic new indicator library. It lets you implement designs quickly and avoids reinventing the wheel. Creating an indicator is only a single line of code! Get started with the sample algorithm.

var rsi = RSI("SPY", 14);
var bb = BB(_symbol, 20, 1, MovingAverageType.Simple, Resolution.Daily); 
if (rsi > 80) {
    SetHoldings("SPY", 1);
} else if (rsi < 20) {
    SetHoldings("SPY", -1);
}
Plot("BB", bb.UpperBand, bb.MiddleBand, bb.LowerBand); 
Clone the sample algorithm which implements 15+ indicators.

Clone the sample algorithm, which implements 15+ indicators.