Stroll graduated to F1 with Williams in 2017 as the reigning European Formula 3 champion and continued with the team this year.
The 20-year-old drove for the team for the first in the two-day post-race race tyre test, and his “long-term deal” was confirmed as a race driver on Friday afternoon.
“I’m pleased that we can finally confirm Lance’s arrival to race alongside Sergio next year,” said team principal Otmar Szafnauer.
“It gives us an exciting line-up with the perfect blend of youth, talent, and experience.
“Lance is only 20 and already has two years of Formula 1 experience under his belt, as well as a podium finish and a front-row start.”
Stroll scored a best finish of third, in the 2017 Azerbaijan GP, at Williams.
“This is the beginning of an incredibly exciting journey in my Formula 1 career,” said Stroll.
“I look forward to working alongside a successful team with a great culture. It’s a new challenge and I am excited to embrace this new opportunity.”
Szafnauer reckons Force India will be able to help Stroll “flourish”.
“Our team has enjoyed great success nurturing and developing young and talented drivers, and we are very excited to begin our journey with Lance,” he said.
“I would also like to take the opportunity to thank Esteban Ocon for his contribution to the team over the last two seasons and WISh him well for the future.”
2019 F1 line-up: