The 21-year-old joined the Gunners as a youth player in 2006 from French side Monaco, and leaves the Emirates Stadium having made 32 first-team appearances, with his last coming in the 8-2 defeat to Manchester United.
The defender made his debut for the north London club against West Bromwich Albion in the League Cup aged 17.
Whilst under contract at Arsenal, the left-back spent loan spells at Portsmouth and Juventus.
He has represented France at Under-17, Under-18, Under-19 and Under-21 levels but switched nationalities this year to Senegal and made his first appearance for the national side in August 2011.
He told QPR's official website: "When I talked to Neil Warnock he was very passionate about what I could bring to the club.
"He was very motivated about playing me week in, week out, and that's what I need at this stage of my career.
"I've not been able to prove and show what I'm all about because I've been at two big, big clubs like Juventus and Arsenal. I'm looking forward to coming here and playing regular football.
"The ambition of the new owners and the calibre of players they are signing is something that really attracted me to the club."
Traore follows former Newcastle United midfielder Joey Barton and Aston Villa defender Luke Young in moving to Loftus Road in recent days.