Decentralized cryptocurrencies have gained a lot of attention over the last decade. Bitcoin was introduced as the first cryptocurrency to allow direct online payments without relying on centralized financial entities. The use of Bitcoin has vastly grown as a financial asset rather than just a tool for online payments. A lot of cryptocurrencies have been created since 2011 with Bitcoin dominating the cryptocurrencies' market. With plenty of cryptocurrencies being used as financial assets and with millions of trades being executed through different exchange services, cryptocurrencies are susceptible to trading problems and challenges similar to those traditionally encountered in the financial domain. Price and trend prediction, volatility prediction, portfolio construction and fraud detection are some examples related to trading. In addition, there are other challenges that are specific to the domain of cryptocurrencies such as mining, cybersecurity, anonymity and privacy. In this paper, we survey the application of artificial intelligence techniques to address these challenges for cryptocurrencies with their vast amount of daily transactions, trades and news that are beyond human capabilities to analyze and learn from. This paper discusses the recent research work done in this emerging area and compares them in terms of used techniques and datasets. It also highlights possible research gaps and some potential areas for improvement.