Well based on what I know, it is based on the law of supply and demand, all markets are. As we all know the supply of Bitcoin is constant in 21 Million so technically, it is based on the demand, so the more people sell, the demands go down so it the price, and if there's more people interested and are buying Bitcoins, the demand will increase and so is the price.
That is the basic rule of trading that is base on supply and demand and it doesn't only apply to cryptocurrencies but in other markets too like stocks and even the every day products that we buy. There are three factors that affect how the price of a coin would move and it would be technical analysis, fundamental analysis and market sentiment. As for technical analysis, the more traders use TA on a trade, the price would be able to follow where the traders would like it to go since the traders most likely would have the same support and resistance level. For fundamental analysis, when there are news that would affect the price of bitcoin, it would go up or down depending on whether its good or bad news. As for market sentiment, when the general public saw what happen to the price if it goes down then they wouldn't think of buying it but if it goes up along with good news then they would FOMO.