The 21-year-old makes the move from Jagiellonia Bialystok in Poland, having scored seven goals in 17 league appearances this season.
He told the Celtic website: "I understands how massive a club Celtic is but I feel I’m ready for this now. I want to give the fans a lot of happiness and hopefully score a lot of goals for Celtic.”