Cryptocurrency Price Predictor
Cryptocurrency Price Predictor
Presentation
By Group 6 Supervised By
● We examine the prediction of prices, or rather inability to do so, before introducing the
Currency Predictor.
● Web application developed as part of this project, Containing up to date prices, this web
application predicts prices of Bitcoin using machine learning. The research planning
methodologies, technologies, and design and evaluation of this application are described in
detail in the penultimate chapter of this dissertation, followed by a concluding word on the
process as a whole.
Motivation
● The global economy is inevitably moving towards a digital ecosystem. From investment to
money transfer, everything is going paperless. The newest and most promising addition to the
digital payment sector is cryptocurrency.
● A cryptocurrency is a medium of exchange like normal currencies such as USD, but designed
for the purpose of exchanging digital information. Cryptocurrency is defined by
Investopedia.com as a decentralised “digital or virtual currency that uses cryptography for
security” making it difficult to counterfeit. Since it is not issued by a central authority,
governments can’t take it away from you. This popularity of bitcoin made us think of an
analyzer to analyse it using machine learning techniques.
● Following Bitcoin’s dramatic surge, early investors in crypto are rueing the day that they
decided to sell up — and this man’s story will make you cringe.
● Martti Malmi mined 55,000 BTC on his laptop in 2009 and 2010, and turned most of them into
cash before 2012. At current rates, this haul would have been worth an astounding $1.25
billion. Amazingly calm for someone who has missed out on a life-changing sum of money.
Project Objectives
● Introduce the concept of this project.
● Provide the reader with a rounded understanding of cryptocurrencies.
● Explain to the reader how volatile cryptocurrency prices can be.
● Describe in detail the applied aspect of this project.
● Create a simple web application which is easy to use and clear to understand.
● Deliver cryptocurrency prices to the user.
● Provide an educated guess as to future changes in prices.
● Work closely with the given learning outcomes for this project.
● Conduct work as a team.
What is Currency
● A currency is a standardisation of money in any form when in use or circulation as a medium
of exchange, for example banknotes and coins. A more general definition is that a currency is
a system of money in common use within a specific environment over time, especially for
people in a nation state.Under this definition, U.S. dollars (US$), euros (€), Indian rupee (₹),
Japanese yen (¥), and pounds sterling (£) are examples of (government-issued) fiat currencies.
Currencies may act as stores of value and be traded between nations in foreign exchange
markets, which determine the relative values of the different currencies.Currencies in this
sense are defined by governments, and each type has limited boundaries of acceptance.
● Currency is a medium of exchange for goods and services. In short, it's money, in the form of
paper or coins, usually issued by a government and generally accepted at its face value as a
method of payment.
● Currency is the primary medium of exchange in the modern world, having long ago replaced
bartering as a means of trading goods and services.Currency in some form has been in use for
at least 3,000 years. Money, usually in the form of coins, proved to be crucial to facilitating
Evolution of
Currencies
Crypto
Currencies
A digital currency in which transactions are
verified and records maintained by a
decentralised system using cryptography,
rather than by a centralised authority.A
cryptocurrency is a form of digital asset based
on a network that is distributed across a large
number of computers. This decentralised
structure allows them to exist outside the
control of governments and central authorities.
Experts believe that blockchain and related
technology will disrupt many industries,
including finance and law. The advantages of
cryptocurrencies include cheaper and faster
money transfers and decentralised systems
that do not collapse at a single point of failure.
The disadvantages of cryptocurrencies include
their price volatility, high energy consumption
for mining activities, and use in criminal
Blockchain
● Central to the appeal and functionality of Bitcoin and other cryptocurrencies is blockchain
technology. As its name indicates, blockchain is essentially a set of connected blocks or an
online ledger. Each block contains a set of transactions that have been independently verified
by each member of the network. Every new block generated must be verified by each node
before being confirmed, making it almost impossible to forge transaction histories.The
contents of the online ledger must be agreed upon by the entire network of an individual
node, or computer maintaining a copy of the ledger.
● Experts say that blockchain technology can serve multiple industries, such as supply chain,
and processes such as online voting and crowdfunding. Financial institutions such as JPMorgan
Chase & Co. (JPM) are testing the use of blockchain technology to lower transaction costs by
streamlining payment processing.
Why Cryptocurrency
● The main point of cryptocurrency is to fix the problems of traditional currencies by putting the
power and responsibility in the currency holders’ hands. They each also attempt to solve one
or more real-world problems.A cryptocurrency is a digital form of money that is a more secure
medium of exchange.
● The big idea is that because transactions are public, irreversible, mostly unhackable, and
controlled by the people, users and their digital finances are more protected.
○ Cryptocurrency Is Owned By Everyone
○ Cryptocurrency Is Almost Impossible To Forge
○ Cryptocurrency Transactions Are (Mostly) Confidential
○ Cryptocurrency Security Grows Through Time & Value
Cryptocurrency Mining
● There are three primary ways of obtaining bitcoin and other cryptocurrencies. You can buy
them on an exchange like Coinbase, receive them as payment for goods or services, or
virtually “mine” them. It’s the third category that we’re explaining here, using Bitcoin as our
example.
● Crypto mining refers to gaining cryptocurrencies by solving cryptographic equations with the
use of high-power computers. It is a formula with a set of specific properties that makes it
extremely useful for encryption. The solving process involves verifying data blocks and adding
transaction records to a public record (ledger), a blockchain secured by applying complex
encryption techniques. Cryptocurrencies use a decentralised method of distribution. For
verification of transactions, it takes the help of cryptographic algorithms. Hence there is no
central authority, nor is there a centralised ledger. To get new coins on the ledger involves
solving complicated mathematical puzzles that assist in verifying virtual currency transactions
and then updating them on the decentralised blockchain ledger. As the outcome of this work,
the miners receive pay with cryptocurrency. This is mining as it allows new coins into
circulation.
Predicting The Prices of
Cryptocurrencies
Traditional currencies are influenced by many things, such as warfare,
political instability, and national debt.
Price of Bitcoin due to its popularity- The price of Bitcoin often affects the
price of other cryptocurrencies. One could argue that if the price of
Bitcoin is affected by the same events as other cryptocurrencies, its
prices will change in tandem with those of other cryptocurrencies.
● Teamwork:
We will measure the success of our teamwork by reflecting on how we resolved any
Currency Analyser Web
Application
Research Methodology: The team did some light reading of the latest news items
relating to cryptocurrency and moved on to researching a list of technologies, examining
which would be best to include in the applied project.
● Public API of Prices- The team carried out some quick searching online and found
there to be numerous free cryptocurrency APIs (Application Programming Interfaces)
available, all of which stored vast amounts of records for prices of cryptocurrency
against a variety of traditional currencies for increments of time, usually every minute.
Link -
https://min-api.cryptocompare.com/data/histoday?fsym=BTC&tsym=CAD&limit=800
● Machine Learning: With regards to attempting to decipher trends in prices, the team
decided to use of TensorFlow. Having been using this machine learning framework in
class for some time at this point, the team were familiar with the framework and had
been using the technology with Python 3. It was agreed that this combination should
be used, as it would fit in well with the overall project architecture.
Currency Analyser Web
Application
● Web Application Back-End- Having decided
the details of the project’s machine learning
system, the team began discussing the back-
end of the application. The backend should be
able to manage the machine learning model
and should be able to deliver the predictive
results to the front-end .So as to have the
inter-language communication effectively
Python framework Django is used and an API
is exposed for the front-end.
Django - Django is a Python-based web framework, free and open-source, that follows the
model–template–views
architectural pattern.
SQLite - SQLite is a C-language library that implements a small, fast, self-contained, high-
reliability, full-featured, SQL database engine.The machine learning data and predicted
prices of Bitcoin also needed to be stored somewhere and SQLite has built-in support from
Django.
HTML- The HyperText Markup Language or HTML is the standard markup language for
documents designed to be displayed in a web browser.
CSS- Cascading Style Sheets is a style sheet language used for describing the presentation
of a document written in a markup language such as HTML.
Chart.js- Chart.js is a free, open-source JavaScript library for data visualization, which
supports eight chart types: bar, line, area, pie, bubble, radar, polar, and scatter .
Machine Learning
● The machine learning element of this application was built using Python 3 and
TensorFlow. Machine learning is the use of statistics and computation in order to
give systems the ability to ”learn” and improve from past experience without being
explicitly programmed to do so. Artificial neural networks, inspired by the biological
networks within our brains, is the particular strain of machine learning which is used
within this project.
● The Long Short Term Memory or LSTM algorithm, an efficient gradient based
model introduced by Hochreiter and Schmidhuber in 1997, was used in the building
of the neural network model for this system. Recurrent Neural Networks attempt to
address memory issues in traditional neural networks by adding loops within them,
allowing information to persist. A reasonable analogy, is to envision recurrent neural
network as numerous copies of the same network, each passing a message to a
parent. This chainlike nature resembles the behaviour of sequences and lists, making
them naturally suited to the architecture of a neural network.
Machine Learning
● Unfortunately, recurrent neural networks are burdened with the problem of
handling long-term dependencies. As the neural network grows, gaps between past
relevant data grows, and the recurrent neural network model becomes unable to
learn to connect the information. In theory, recurrent neural networks are absolutely
capable of handling this issue. In fact, some are. Long Short Term Memory is an
extension or type of recurrent neural network that is capable, being very efficient on
a large variety of problems including timeline data, and is now widely used to solve
these problems. LSTM models have an additional loop learning what data to forget
and what data to remember; they still have the aforementioned chain like structure,
but with four different layers communicating in a certain way.
Running
Model
Prediction
Graph
Final Architecture
Database
ML model
Front-end Backend
Public API
Conclusion
With the increasing number of people using cryptocurrencies, it has become essential to
develop a system to predict its price efficiently and accurately. The motivation for the study was to
find the most efficient way for the prediction of cryptocurrency price. The study can be used as a
simple tool by all the investors and traders. It would help the people to do their investment in a
more efficient way.
References:
● F. Mai, Z. Shan, Q. Bai, X. Wang, R. Chiang, “How does social media impact bitcoin value? a test of
the silent majority hypothesis,” Journal of Management Information Systems, vol. 35, no. 1, pp. 19–
52, 2018.
● D. Chaum, “Blind signatures for untraceable payments,” in Advances in Cryptology, pp. 199–203,
Springer, Boston, MA, 1983.
● S. Higgins, “3 pre-bitcoin virtual currencies that bit the dust.” URL: https://www.coindesk.com/ 3-pre-
bitcoin-virtual-currencies-bit-dust/.
● A Novel Cryptocurrency Price Prediction Model Using GRU, LSTM and bi-LSTM Machine Learning
Algorithms (Arab American University)
● https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/skeleton_website
● https://www.geeksforgeeks.org/how-to-create-an-app-in-django/
Thank You