HAMILTON — Brandon Banks and the Hamilton Tiger-Cats exorcised plenty of demons Saturday night.

Banks scored three touchdowns — including the game-winner with under three minutes to play — to lead Hamilton past Calgary 30-23 on Saturday night. With the victory, the Ticats (4-1) snapped a dubious 15-game losing streak to the Stampeders (2-2) that included the 2014 Grey Cup and head into their bye week with their first home victory over the West Division squad since a 24-17 decision Sept. 8, 2009.

"I wouldn't say demons were exorcised but it does feel good to get that win," said Ticats starter Jeremiah Masoli, who improved to 1-4 all-time versus the Stampeders. "Any win is good but that's a good one with Calgary."

Hamilton is 4-1 for the first time since 1998 when it made the first of two consecutive Grey Cup appearances against Calgary. The Ticats lost that year before downing the Stampeders in '99 for their last CFL title.

Hamilton coach Orlondo Steinauer said Hamilton's intention Saturday night was to simply improve to 4-1, not change history against Calgary.

"We just didn't have that approach or mindset," he said. "It was a reality and we were going to have to talk about it as long as it existed.

"It doesn't exist anymore."

Masoli's 20-yard TD strike to Banks put Hamilton ahead 30-23 at 12:16 of the fourth. The two hooked up on a 22-yard touchdown pass three minutes into the quarter to give the Ticats a 23-16 advantage but Calgary countered with Ka'Deem Carey's three-yard TD run — his second of the game — at 7:12 to make it 23-23 before 22,921 spectators at Tim Hortons Field.

It was a record-breaking night for Banks, who recorded his CFL-record fifth TD off a missed field goal attempt in the first half. Will Likely III also got into the act with a kickoff return touchdown as Hamilton ended the first half tied 16-16 despite mustering just 67 offensive yards.

"It (special teams) is always a big part of the game up here," said Steinauer. "We were able to keep ourselves in the ballgame.

"It had a chance to get away from us but I just credit the belief of the men, the execution and it gave us a chance to win the game."

Banks's nickname, appropriately, is Speedy and he lived up to that moniker after the game. When reporters were allowed into Hamilton's locker room, Banks had left to catch a late flight.

"I'm just proud of (Banks) because he works hard," Steinauer said. "There's a lot that goes right into that (winning) touchdown he caught in order to open that space up for him.

"Brandon is very deserving of the credit but let's start up front with the offensive line, Jeremiah with an outstanding throw. There's a time when need is a strong word but we were pretty close to that. We needed a play at that point and he made it."

However, Calgary made it interesting at the end. Lirim Hajrullahu's punt put the Stampeders at their own seven-yard line with 27 seconds remaining but Nick Arbuckle completed a 57-yard Hail Mary pass to Colton Hunchak to the Ticats' 15-yard line on the game's final play.

"We just didn't play good, winning football,” Calgary head coach Dave Dickenson said. "I thought our defence showed up and played a heck of a game, but offence and special teams weren't good enough.

"We scored on special teams and gave it right back."

Masoli finished 25-of-34 passing for 192 yards with two TDs and an interception. Arbuckle, in his second straight CFL start, completed 24-of-40 attempts for 366 yards.

Reggie Begelton scored Calgary's other touchdown. Rene Paredes added a single and two converts with the other points coming on a safety.

Banks and Nikola Kalinic added two-point converts for Hamilton. Hajruallhu kicked two converts.

Wild special-teams play dominated the first half. Banks returned Paredes's missed 51-yard field goal try 115 yards for the touchdown at 14:17 before Masoli found Kalinic on the two-point convert to tie the score.

Banks's electrifying return came following a huge second-down sack by former Stampeder Ja'Gared Davis that forced Calgary to attempt the field goal. Davis's play helped ignite a 10-point swing for Hamilton.

"They'd just made a big play so I knew we had to come out and respond," said Davis. "It was a big momentum swing.

"For us to come back and score on our own, you couldn't ask for a bigger play."

Before the game, Davis and defensive back Tunde Adeleke, another former Stampeder, both received the Grey Cup rings they earned with Calgary last season.

A safety conceded by Adeleke at 12:29 put Calgary ahead 16-8. It came after the two teams combined for three touchdowns — two coming on special teams — in under three minutes.

Likely III returned a Pardedes kickoff 110 yards for the TD at 6:52, then Masoli found Banks for the two-point convert to cut Hamilton's deficit to 14-8. Carey blocked Hajruallhu's punt, then recovered the ball and scored to put Calgary ahead 14-0 at 6:18.

It came after Begelton's six-yard TD run at 4:06 capped an 83-yard, seven-play drive that was aided by a 15-yard spearing penalty against Adeleke.