The versatile back, who can play at centre or at fly-half, starred for Glasgow in Saturday's 22-20 win over Leinster, scoring the opening try of the game against the defending PRO12 champions.
The 24-year-old has made 64 appearances for the Warriors, since he made his debut against Ulster in March 2009.
He has scored a number of crucial tries,including the winning touchdown against Northampton in the Heineken Cup two seasons ago.
Horne, who made his Scotland debut against Samoa on last year's summer tour to South Africa, has gone on to win five caps for his country.
Peter Horne said: "I'm delighted to sign this contract. The club is going in the right direction and we've shown that over the last couple of years.
"Since I joined the club I've progressed as a player, with the help of the coaches and the players around me and I want to keep progressing to become the best player I can be.
"It's nice to feel wanted and it's great the club have put faith in me and it's the perfect place for me to develop.
"We've got a fantastic squad and they are my best friends and we hang out a lot.
"It's a brilliant place to be and I'm loving living in Glasgow, so for me it was a no brainer to sign this deal."
Glasgow Warriors head coach Gregor Townsend added: "It's fantastic news that Peter is staying at Scotstoun for another few years and this will give everyone at the club a big boost so early in the new season.
"He works really hard at his game and is improving all the time.
"Peter is a Scotland international with the ability to play at 10 and 12, so we are delighted he has committed his future to the club."
Month-long deal for Strain
Former Dalziel and Glasgow Hawks prop Gary Strain has signed a one-month training contract with Glasgow, after spending last season at Aviva Premiership side, Newcastle Falcons.
Before joining Newcastle, the 26-year-old spent two seasons at RC Massy in France.
The former Scotland under-20 cap will be available to play for Glasgow Hawks, when he's not involved with Gregor Townsend's squad
Guinness PRO12
Suite 208, Alexandra House,
The Sweepstakes
Ballsbridge, Dublin 4, Ireland