Virtually anything you might buy or sell derives at least some of its value from faith, and currencies are no exception to this. In other words, as long as a sufficient number of people believe that 1BTC is worth ~$680, then 1BTC is indeed worth ~$680.
This is even true of gold to a certain extent - its value goes up and down too, though it's seldom as volatile because it has other uses beyond currency.
When something happens to shake that faith, the value drops. When something happens to strengthen that faith, the value rises.
Any currency that isn't backed by something tangible (eg. a precious metal) by definition derives more-or-less all its value from faith. This isn't usually a big deal - most countries came off the gold standard decades ago - but one side-effect is that if your country's government is unstable, there's a very good chance your currency will follow suit in short order. For extreme examples, see Zimbabwean dollars, Afghan Afghanis and German Papiermarks.