Blockchain Oracles Will Make Smart Contracts Fly - Hacker Noon

At a very high level, using an oracle means receiving data from outside of a blockchain. Said another way, an oracle provides a connection between real world events and a blockchain. In my opinion, all of the really interesting complex smart contracts require outside information - financial derivatives, gambling, stablecoins, identity...literally anything where you want to incorporate something happening in the real world.