Professional Documents
Culture Documents
Report Phase 2
Report Phase 2
PROJECT REPORT ON
BACHELOR OF ENGINEERING
IN
COMPUTER SCIENCE AND ENGINEERING
Submitted by
CHETHAN G 1DA18CS037
DARSHAN S 1DA18CS041
DINESH KUMAR T P 1DA18CS046
GAURAV YADAV 1DA18CS051
CERTIFICATE
This is to certify that the project work, entitled “CryptoChart – Cryptocurrency Price
Tracker” is a bonafide work carried out by CHETHAN G (1DA18CS037), DARSHAN
S (1DA18CS041), DINESH KUMAR TP (1DA18CS046), GAURAV YADAV
(1DA18CS051) in the partial fulfilment for the award of Degree in Bachelor of Engineering
in Computer Science & Engineering of Visvesvaraya Technological University, Belgaum
during the year 2021-22. It is certified that all corrections/suggestions indicated for the
internal assessment have been incorporated in the report deposited in the departmental
library.
ACKNOWLEDGEMENT
The satisfaction that accompanies to this seminar would be incomplete without the mention
of the people who made it possible, without whose constant guidance and encouragement
would have made our efforts go in vain.
We consider ourselves privileged to express our gratitude and respect towards all those
who guided us through the project “CryptoChart - Cryptocurrency Price Tracker”.
We would like to express our gratitude to Dr. M. MEENAKSHI, Principal, Dr. AIT, for
providing us the congenial environment to work in.
We would like to express our profuse gratitude to Dr. SIDDARAJU, HOD, Dept. of
Computer Science & Engineering, Dr. AIT, for giving us the support, encouragement
and providing us the required digital facilities that was necessary for the completion of this
seminar.
As a token of gratitude, we would like to acknowledge our sincere gratefulness to the guide
Dr. Shamshekhar S Patil, Associate Professor, Dept. of CSE, Dr. AIT for unlimited
support and encouragement provided throughout the process. We also express our gratitude
and sincere thanks to all the teaching and non-teaching staff of Computer Science &
Engineering Department. Finally, yet importantly, we would like to express our heartfelt
thanks to our beloved and compassionate Parents for their blessings and our Friends for
their help and wishes for the successful completion of this seminar report.
Chethan G
[1DA18CS037]
Darshan S
[1DA18CS041]
Dinesh Kumar T P
[1DA18CS046]
Gaurav Yadav
[1DA18CS051]
ABSTRACT
A cryptocurrency price tracker monitors the current value of different digital currencies
and tokens. Many of these services provide historical data as well, allowing users to
compare current prices against older values. And a section that predicts the future price
based on the older price records. Currently people are more interested in investing towards
different kinds of crypto currency so this application will provide the baseline for them to
get started with investing in cryptocurrency.
Investors routinely spend a lot of time searching for the latest coins, the one with the most
exciting prospects or the one that's the most undervalued. Savvy investors also look to
different cryptocurrency exchanges, applications, and services to maximize their
investment potential. But fewer individuals who invest time and money into the
cryptocurrency space spend an adequate amount of time considering the impact that price
tracker has on their experience. So, by using this application investors will know all the
information they need prior buying the cryptocurrencies like current price, market cap,
older price comparisons etc. by constantly updating the data.
We are also predicting the future price. As financial institutions begin to embrace artificial
intelligence, machine learning is increasingly utilized to help make trading decisions.
Although there is an abundance of stock data for machine learning models to train on, a high
noise to signal ratio and the multitude of factors that affect stock prices are among the several
reasons that predicting the market difficult. At the same time, these models don’t need to
reach high levels of accuracy because even 60% accuracy can deliver solid returns. One
method for predicting stock prices is using a long short-term memory neural network
(LSTM) for times series forecasting.
TABLE OF CONTENTS
ACKNOWLEDGEMENT .................................................................................................. 3
ABSTRACT .................................................................................................................... 4
INTRODUCTION ............................................................................................................ 1
1.1 Existing System ............................................................................................................... 2
1.2 Proposed System ............................................................................................................ 2
1.2.1 Scope of the Work ......................................................................................................... 3
1.2.2 Problem Statement ........................................................................................................ 3
1.3 Objectives ...................................................................................................................... 4
LITERATURE SURVEY .................................................................................................... 5
2.1 Abstract .......................................................................................................................... 5
2.2 Introduction ................................................................................................................... 5
2.4 Research methodology ................................................................................................... 7
2.5 Cryptocurrency and how it works ................................................................................... 7
SYSTEM REQUIREMENT SPECIFICATIONS ....................................................................... 9
3.1 Hardware and Software Requirements ........................................................................... 9
3.1.1 Software requirements .................................................................................................. 9
3.1.2 Hardware requirements ................................................................................................ 9
3.2 Functional Requirements .............................................................................................. 10
3.3 Non-Functional Requirements ....................................................................................... 10
SYSTEM DESIGN ......................................................................................................... 12
4.1 Iterative model design .................................................................................................. 12
4.2 App Development ......................................................................................................... 13
4.3 System Architecture ..................................................................................................... 14
4.4 Flow Chart .................................................................................................................... 15
4.5 Class Diagram ............................................................................................................... 16
SYSTEM IMPLEMENTATION ........................................................................................ 17
5.1 Machine Learning ......................................................................................................... 17
SYSTEM TESTING ........................................................................................................ 22
6.1 Introduction ................................................................................................................. 22
6.1.1 Verification .................................................................................................................. 22
6.1.2 Validation ..................................................................................................................... 23
6.2 Testing Process ............................................................................................................. 23
6.3 Testing Plan .................................................................................................................. 23
6.4 Test strategy ................................................................................................................ 24
6.4.1 Phases of Testing ......................................................................................................... 24
6.5 Unit Testing .................................................................................................................. 25
6.5.1 Benefits of Unit testing ............................................................................................... 25
6.7 Unit Test Cases ............................................................................................................. 26
6.8 Integration Test Cases .................................................................................................. 29
SNAPSHOTS AND RESULTS .......................................................................................... 30
................................................................................................................................... 31
CONCLUSION .............................................................................................................. 33
REFERENCES ............................................................................................................... 35
TABLE OF FIGURES
LIST OF TABLES
CryptoChart-Cryptocurrency Price Tracker”
CHAPTER 1
INTRODUCTION
Cryptocurrency comes under many names. You have probably read about some of the most popular
types of cryptocurrencies such as Bitcoin, Litecoin, and Ethereum. Cryptocurrencies are increasingly
popular alternatives for online payments. Before converting real dollars, euros, pounds, or other
traditional currencies into (the symbol for Bitcoin, the most popular cryptocurrency), you should
understand what cryptocurrencies are, what the risks are in using cryptocurrencies, and how to protect
your investment.
Cryptocurrencies are still relatively new, and the market for these digital currencies is very volatile.
Since cryptocurrencies don't need banks or any other third party to regulate them; they tend to be
uninsured and are hard to convert into a form of tangible currency (such as US dollars or euros.) In
addition, since cryptocurrencies are technology-based intangible assets, they can be hacked like any
other intangible technology asset. Finally, since you store your cryptocurrencies in a digital wallet, if
you lose your wallet (or access to it or to wallet backups), you have lost your entire cryptocurrency
investment.
• Look before you leap! Before investing in a cryptocurrency, be sure you understand how it
works, where it can be used, and how to exchange it. Read the webpages for the currency itself
(such as Ethereum, Bitcoin or Litecoin) so that you fully understand how it works, and read
independent articles on the cryptocurrencies you are considering as well.
• Use a trustworthy wallet. It is going to take some research on your part to choose the right
wallet for your needs. If you choose to manage your cryptocurrency wallet with a local
application on your computer or mobile device, then you will need to protect this wallet at a
level consistent with your investment. Just like you wouldn't carry a million dollars around in
a paper bag, don't choose an unknown or lesser-known wallet to protect your cryptocurrency.
You want to make sure that you use a trustworthy wallet.
• Have a backup strategy. Think about what happens if your computer or mobile device (or
wherever you store your wallet) is lost or stolen or if you don't otherwise have access to it.
Without a backup strategy, you will have no way of getting your cryptocurrency back, and you
could lose your investment.
One of the remarkable financial forms that have been emerged in the past few years is Cryptocurrency.
Hence, Several Price Tracking applications has been developed in the market such as "livecoinwatch"
& "delta.app" but they are in not able to provide accurate tracking stats of coins. They are limited to
the coins i.e they don't showcase the history of the coins and variety of coins. The application interfaces
are complex and some of them charge while signing up into the app. They provide limited services
and don't support transactions or crypto trading i.e they don't have features to sync up with other
cryptocurrency applications. No portfolio system is add to list the favourite coins. Lack of services to
track trending coins. There is no doubt that the era of information and communication technologies
has created many golden opportunities in several aspects. One of the fields that benefit from these
technologies and online connections is the financial and business sector. A growing number of online
users has activated virtual world concepts and created a new business phenomena. Thus, new types of
trading, transactions and currencies have been arising. Cryptocurrency is said to be a weak form of
commodity because investors are not able to predict the future prospect because there is no available
information from the past (Urquhart, 2016). This is true since the inception of cryptocurrency has only
emerged in 2009, nearly a decade ago. There’s one more problem that is typical of cryptocurrency
trackers i.e Loss of a wallet file due to poor security systems.
The proposed system includes all the information and support in one place. A hybrid app with language
support and a high-level design promotes easy access. One application to track all the data related to
Dr. AIT, Dept of CSE 2021-2022 2
CryptoChart-Cryptocurrency Price
Tracker”
the cryptocurrency of their choice. Traders can keep track of their cryptocurrency of their choice, and
for easier access they can add it to their accounts portfolio and keep track of it easily.
Price prediction is a difficult challenge because several factors are to be taken into consideration, based
on these factors the price of a cryptocurrency is predicted successfully. Traders may consider the
predicted price for their future investment plans. Price prediction may be done in a variety of ways.
This review paper looked into what has been done in the literature about the use of machine learning
in cryptocurrency price prediction.
Cryptocurrency price trackers should use reliable data and consistently update their data. And by using
correct machine learning algorithms and right datasets the future value of the Coins can be predicted.
This is done by using Machine Learning by using LSTM Neural Networks. Machine learning has been
successful in predicting stock market prices through a host of different time series models, its
application in predicting cryptocurrency prices has been quite restrictive.
A Crypto currency price tracker monitors the current values of the digital currencies, in addition to
information about market capitalization, trading volume, price charts and other types of data. The
trackers accuracy can have a significant bearing on the investors decisions, because of this, investors
should choose their price tracker carefully.
So, by using this application investors will know all the information they need prior buying the
cryptocurrencies like current price, market cap, older price comparisons etc. by constantly updating
the data.
In last decade, cryptocurrency has emerged in financial area as a key factor in businesses and financial
market opportunities. Accurate predictions can assist cryptocurrency investors towards right investing
decisions and lead to potential increased profits. Additionally, they can also support policy makers and
financial researchers in studying cryptocurrency markets behaviour. Nevertheless, cryptocurrency
price prediction is considered a very challenging task, due to its chaotic and very complex nature. In
this we evaluated some of the most successful and widely used deep learning algorithms forecasting
cryptocurrency prices. The results obtained, provide significant evidence that deep learning models
are not able to solve this problem efficiently and effectively. Conducting detailed experimentation and
Dr. AIT, Dept of CSE 2021-2022 3
CryptoChart-Cryptocurrency Price
Tracker”
results analysis, we conclude that it is essential to invent and incorporate new techniques, strategies
and alternative approaches such as: more sophisticated prediction algorithms, advanced ensemble
methods, feature engineering techniques and other validation metrics.
1.3 Objectives
This Application allows users to view Crypto currency prices and monitor their rise and drop.
Dr. AIT, Dept of CSE 2021-2022 4
CryptoChart-Cryptocurrency Price
Tracker”
CHAPTER 2
LITERATURE SURVEY
2.1 Abstract
The focus on cryptocurrencies in the finance and banking sectors is gaining momentum. In this paper,
we investigate the role of cryptocurrencies in modern finance. We apply a narrative literature review
method to synthesize prior research and draw insights into the opportunities and challenges of
leveraging cryptocurrencies. The results indicate that cryptocurrencies offer businesses and
individual’s lower transaction costs, higher efficiencies, increased security and privacy, meaningful
diversion cation benefits, alternative financing solutions, and financial inclusion. Challenges exist
related to the integration of cryptocurrencies in modern finance. These include the lack of regulatory
standards, the risk of criminal activity, high energy and environmental costs, regulatory bans and usage
restrictions, security and privacy concerns, and the high volatility of cryptocurrencies. The current
review is useful for scholars and managers, including those seeking to have a more balanced
understanding of these emerging financial instruments.
2.2 Introduction
Since the inception of the fiat money, people have been using it for everyday transaction.
Trading and transaction has been much easier. In the year 2009, after the global crash of 2008, the first
form of cryptocurrency has emerged in the form of Bitcoin. It was first introduced by Nakamoto
(2008), an anonymous group or individual that has introduced Bitcoin as the first digital currency for
easier day-to-day transaction from individual to individual. Bitcoin is operated without the middle man
such as banks and monetary institutions. It is a form of peer-to-peer transaction, without the need to
reveal one’s identity for a transaction to happen. Unlike the current practice, the bank functions as the
middleman or the go-between, knows the identity of buyer and seller, thus engendering the issues of
personal data protection. Bitcoin platform has made the trading and transaction of cryptocurrency
much easier and more independent, without compromising personal information and details. To some,
opting for this method of transaction has entitled them to transact freely and anonymously.
Dr. AIT, Dept of CSE 2021-2022 5
CryptoChart-Cryptocurrency Price
Tracker”
The instruments used as exchange instruments to make the trade transactions as easy as possible
according to the market needs have experienced a huge development and change. Those instruments
used to intermediate the exchange of goods are known as money. Money as something that serves as
a medium of exchange, a unit of accounting, and a store of value. Money is a medium of exchange in
the sense that we all agree to accept it in making transactions. Merchants agree to accept money in
exchange for their goods; employees agree to accept money in exchange for their labor. As a unit of
accounting, money provides a simple device for identifying and communicating value. Money serves
as a store of value in that it allows us to store the rewards of our labor or business in a convenient tool.
According to Bohme et al (2015), the basis of the bitcoin value is based on scarcity. It serves as the
foundation to put a value to any form of money. In the current practice of using the fiat currency, the
monetary authority or the central bank hold and reserve the money. Central bank of a country has the power
in adjusting the circulation of money and its absolute quantity. The bank is able to produce only limited
amount of these paper money for regulating fiscal economic of a country, therefore creating scarcity. This
scarcity will be recorded in the bank bookkeeping and will be preserved by the legal rules.
The big question that arise as Bitcoin was introduced, are these cryptocurrencies considered as real money?
According to Ali et al. (2014), the history has outlined that money must have the following criteria: (1) A
store of value. It is a purchasing power that users can manipulate to buy goods in the current time to the
future. (2) A medium of exchange. The ability to make payments and (3) A unit of account. The value that
can be measured of any goods for sale. Money theoretically must meet all these criteria but it is not always
the case. Analyzing Bitcoin and other cryptocurrency in their current form, all the three criteria are debatable.
One can postulate that it does have a store value due to the ability for purchasing power, but due to
uncertainty, one cannot estimate whether Bitcoin can be used in the future as it is being used now. For
medium of exchange, some can justify that cryptocurrency can be used for a medium of exchange, but to
others the goods that can be exchanged are limited.
If all these three criteria are set to be the pre-requirement for any commodity to be given the stature of
money, therefore it should be accepted within the context of its use and application. Radford (1945) reported
that cigarettes met all these criteria during the hard time of World War 2 where prisoners in war camps used
it for transaction. Further back in time, cooking salt can be regarded as having value in the time of Roman
Empire where the troop’s wages were paid in salt. As for cryptocurrency, it can be regarded as money to
people who are computer and internet enabled. The problem lies on the fact that only a small fraction of the
people worldwide has the access to internet devices. Therefore, within this context, similar to the prisoner
in the war camp and the Roman troops, cryptocurrency only is limited to those having access to the internet.
Dr. AIT, Dept of CSE 2021-2022 6
CryptoChart-Cryptocurrency Price
Tracker”
Ali et al. (2014) reported that only about 20,000 Bitcoin holders in the United Kingdom with only 300
transactions each day. This number would be even smaller in emerging and developing countries due to the
lack of internet access.
Bohme et al. (2015) suggested that cryptocurrency, particularly Bitcoin is more of a platform for payment
rather than currency due to its real time convertible to a conventional currency in fixed value. This
cryptocurrency is different from other assets in term of its portfolio analysis, risk management and sentiment
analysis (Dyhrberg, 2016). Compared to other assets such as gold, property, stocks and equity,
cryptocurrency does possess similar portfolio in term of having certain value. Cryptocurrency however,
resembles people’s sentiment as when the value elevates with more and more people willing to accept them
as payment. These differences create various opportunities to the market where investors and stakeholders
alike can benefit from it. Therefore, to acknowledge cryptocurrency as the replacement for the fiat money
in today’s economics is still premature and requires further understanding in application, theoretically and
practically.
We have selected analytical research methodology for the study. This survey is based on secondary
data referring to various sources such as journals, newspaper articles, websites and statutory reports.
Dr. AIT, Dept of CSE 2021-2022 7
CryptoChart-Cryptocurrency Price
Tracker”
new cryptocurrency. The blockchain system consisting of users, developers, miners, node maintainers
and the interactions that ensure the functionality of the distributed ledgers. Such mining process
requires miners to have capital expenses in purchasing the software and hardware. The software
includes GUIMiner, BFGminer and CGminer are the examples used in Bitcoin mining. While the
hardware’s are AntMiner, Avalon and ASICMiner. Mining of other currencies that uses many different
algorithms requires the use of high-end and high-speed graphic cards. For a new miner, one needs to
register a wallet and an encrypted banking online that can store and accept the cryptocurrency. When
a miner is able to solve the puzzle in the blockchain system, the digital coins will be rewarded and
transferred to the wallet that has been predetermined earlier.
According to many of the cryptocurrency protocols, the way mining works is by validating transaction
by linking to the block that was accepted earlier. The blockchain technology will record every
transaction in its unit. A unique ID is assigned on each block and the block preceding it. This is called
the proof of work protocol. Proof of work is a protocol of verifying a transaction and informing others
about it. Users or miners have to do work in validating or proofing that they are the real identities.
These works revolve around algorithm and puzzle that can be solved by computers mathematical
process. Proof of work adapted in cryptocurrency working principle is to replace the centralized
payment system imposed by the banking system. The main basis of this system is to charge the user
i.e. the service requester in solving a problem that is considered to be hard to solve compared to
verifying it.
Miners would have to solve the puzzle embedded in the block, which contain the hash of the previous
block, the current block transaction hash and address that will be rewarded after the puzzle is solved.
This is the basic of the mining process. This in turn created a block chain, a trace of the transaction
that happened. This blockchain technology will prevent any fraudsters to double spend of
cryptocurrency by tampering the transactions in the ledger.
Dr. AIT, Dept of CSE 2021-2022 8
CryptoChart-Cryptocurrency Price
Tracker”
CHAPTER 3
The software requirement specifies the pre-installed software needed to run the code being
implemented in this project.
• Operating system: Windows 10/MacOS
• Coding language: Java, Xml, Python,Kotlin
• IDE: Android Studio
• Additional software’s: Adobe Photoshop and Canva
• Storage: 50GB
The hardware requirement specifies the necessary hardware which provides us the platform to
implement our programs.
• Storage: 100MB(min)
Dr. AIT, Dept of CSE 2021-2022 9
CryptoChart-Cryptocurrency Price
Tracker”
3.2 Functional Requirements
Functional requirements are those requirements that are used to illustrate the internal working nature
of the system, the description of the system, and explanation of each subsystem. It consists of what
task the system should perform, the process involved, which data should the system holds and the
interfaces with the user. The functional requirements identified are:
It describes aspects of the system that are concerned with how the system provide the functional
requirements they are:
• Security: Security is also the prime focus of this project. A username and password will be
required to log in to access the user interface. Authentication of user is done by verifying the
email address by sending the verification link to the user’s email.
• Performance: Performance is going to be very important for this project. For everything to
run smoothly for this project, the REST APIs will have to be able to update data on
cryptocurrencies as frequently as possible. The REST APIs will also need to supply requested
data to the users at a reasonable speed. The database server will need to keep up with all
database requests and transactions.
Dr. AIT, Dept of CSE 2021-2022 10
CryptoChart-Cryptocurrency Price
Tracker”
• Maintainability: Very little maintenance should be required for this setup. An initial
configuration will be the only system required interaction after system is put together. The only
other user maintenance would be any changes to settings after setup, and any specified special
cases where user settings or history need to be changed. Physical maintenance on the system
is not required since most of the services run on cloud platforms. Upgrades of hardware and
software should have little effect on this project, but may result in downtime.
Dr. AIT, Dept of CSE 2021-2022 11
CryptoChart-Cryptocurrency Price
Tracker”
CHAPTER 4
SYSTEM DESIGN
Systems design is the process of defining elements of a system like modules, architecture, components
and their interfaces and data for a system based on the specified requirements. Bottom-Up or Top-
Down approach is required to take into account all related variables of the system.
The system design of project is discussed in terms of pictorial representation. The flow of project is
analyzed and explained which helps in building the prototype. The sequence and use case diagram
understand the interaction of each modules.
Iterative process starts with a simple implementation of a subset of the software requirements and
iteratively enhances the evolving versions until the full system is implemented.
At each iteration, design modifications are made and new functional capabilities are added. The basic
idea behind this method is to develop a system through repeated cycles iterative and in smaller portions
at a time incremental.
Iterative and Incremental development is a combination of both iterative design or iterative method
and incremental build model for development. "During software development, more than one iteration
of the software development cycle may be in progress at the same time." and "This process may be
described as an "evolutionary acquisition" or "incremental build" approach."
Following is a diagrammatic representation of different phases of waterfall model.
Dr. AIT, Dept of CSE 2021-2022 12
CryptoChart-Cryptocurrency Price
Tracker”
An iterative life cycle model does not attempt to start with a full specification of requirements. Instead,
development begins by specifying and implementing just part of the software, which is then reviewed
in order to identify further requirements. This process is then repeated, producing a new version of the
software at the end of each iteration of the model.
In incremental model the whole requirement is divided into various builds. During each iteration, the
development module goes through the requirements, design, implementation and testing phases. Each
subsequent release of the module adds function to the previous release. The process continues till the
complete system is ready as per the requirement.
The key to successful use of an iterative software development lifecycle is rigorous validation of
requirements, and verification & testing of each version of the software against those requirements
within each cycle of the model. As the software evolves through successive cycles, tests have to be
repeated and extended to verify each version of the software.
low-level programming functionalities like pointers. Also, Java code is always written in the
form of classes and objects. Android heavily relies on the Java programming language all
the SDKs required to build for android applications use the standard libraries of Java.
• Firebase: Google Firebase is a Google-backed application development software that enables
developers to develop iOS, Android and Web apps. Firebase provides tools for tracking
analytics, reporting and fixing app crashes, creating marketing and product experiment.
• Kotlin: Kotlin is an Object-oriented and functional programming are both supported by the
open-source, statically typed programming language Kotlin. Similar syntax and ideas from
several other languages, including C#, Java, and Scala, are available in Kotlin. Instead of
attempting to be original, Kotlin draws inspiration from decades of linguistic advancement.
There are versions of it that cater to native code (Kotlin/Native), JavaScript (Kotlin/JS), and
the JVM (Kotlin/JVM).
• XML: Android layouts are written in eXtensible Markup Language, also known as XML.
Much like HTML (or HyperText Markup Language), XML is also a markup language. It was
created as a standard way to encode data in internet-based applications.
Dr. AIT, Dept of CSE 2021-2022 13
CryptoChart-Cryptocurrency Price
Tracker”
However, unlike HTML, XML is case-sensitive, requires each tag is closed properly, and
preserves whitespace.
To put this project into action, we first needed to create an authentication system using Firebase's
authentication service. It is based on the email and the password method, with password as an optional
extra. It is efficient in monitoring the user's routing to different pages depending upon if the user is
logged in or not.
After logging in, you will be prompted to the home page where you can view your portfolio page. The
top of the screen will contain a row where the top cryptocurrencies will be displayed. You can freely
search for your required product in the search bar, which is located in the navigation bar. You can
search from thousands of cryptocurrencies available and the eye button at the top and be used to
favourite the cryptocurrency are to add it to your portfolio. Click on any Cryptocurrency you like and
then view the detailed description and then add it to the portfolio. You can view the different
cryptocurrencies that you have added to your portfolio in the main page and then, if you want, you can
remove the cryptocurrency you want.
Dr. AIT, Dept of CSE 2021-2022 14
CryptoChart-Cryptocurrency Price
Tracker”
4.4 Flow Chart
Dr. AIT, Dept of CSE 2021-2022 15
CryptoChart-Cryptocurrency Price
Tracker”
4.5 Class Diagram
Dr. AIT, Dept of CSE 2021-2022 16
CryptoChart-Cryptocurrency Price
Tracker”
Chapter 5
SYSTEM IMPLEMENTATION
RNN: RNN’s are recurrent neural networks. Traditional neural networks can’t remember previous
sequences but RNN’s are capable of remembering previous sequences. It gives output based on current
as well as previous inputs. Recurrent neural networks (RNN) are the state of the art algorithm for
sequential data and are used by Apple's Siri and Google's voice search. It is the first algorithm that
remembers its input, due to an internal memory, which makes it perfectly suited for machine learning
problems that involve sequential data. It is one of the algorithms behind the scenes of the amazing
achievements seen in deep learning over the past few years. In this post, we'll cover the basic concepts
of how recurrent neural networks work, what the biggest issues are and how to solve them.
RNNs are a powerful and robust type of neural network, and belong to the most promising algorithms
in use because it is the only one with an internal memory.
Like many other deep learning algorithms, recurrent neural networks are relatively old. They were
initially created in the 1980’s, but only in recent years have we seen their true potential. An increase
in computational power along with the massive amounts of data that we now have to work with, and
the invention of long short-term memory (LSTM) in the 1990s, has really brought RNNs to the
foreground.
Because of their internal memory, RNN’s can remember important things about the input they
received, which allows them to be very precise in predicting what’s coming next. This is why
they're the preferred algorithm for sequential data like time series, speech, text, financial data, audio,
video, weather and much more. Recurrent neural networks can form a much deeper understanding of
a sequence and its context compared to other algorithms.
LSTM: LSTM is a variant of recurrent neural networks (RNN) which can store both short and long-
term data. They are the artificial recurrent neural networks used in the field of deep learning. Long
Short Term Memory is a kind of recurrent neural network. In RNN output from the last step is fed
as input in the current step. LSTM was designed by Hochreiter & Schmidhuber. It tackled the
problem of long-term dependencies of RNN in which the RNN cannot predict the word stored in the
Dr. AIT, Dept of CSE 2021-2022 17
CryptoChart-Cryptocurrency Price
Tracker”
long-term memory but can give more accurate predictions from the recent information. As the gap
length increases RNN does not give an efficient performance. LSTM can by default retain the
information for a long period of time. It is used for processing, predicting, and classifying on the
basis of time-series data.
Structure of LSTM
LSTM has a chain structure that contains four neural networks and different memory blocks
called cells.
Information is retained by the cells and the memory manipulations are done by the gates. There are
three gates –
1. Forget Gate: The information that is no longer useful in the cell state is removed with the
forget gate. Two inputs x_t (input at the particular time) and h_t-1 (previous cell output) are
fed to the gate and multiplied with weight matrices followed by the addition of bias. The
resultant is passed through an activation function which gives a binary output. If for a
particular cell state the output is 0, the piece of information is forgotten and for output 1, the
information is retained for future use.
Dr. AIT, Dept of CSE 2021-2022 18
CryptoChart-Cryptocurrency Price
Tracker”
3. Output gate: The task of extracting useful information from the current cell state to be
presented as output is done by the output gate. First, a vector is generated by applying tanh
function on the cell. Then, the information is regulated using the sigmoid function and filter
by the values to be remembered using inputs h_t-1 and x_t. At last, the values of the vector
and the regulated values are multiplied to be sent as an output and input to the next cell.
Dr. AIT, Dept of CSE 2021-2022 19
CryptoChart-Cryptocurrency Price
Tracker”
For dataset for price prediction we are using Yahoo Finance API. The dataset contains following
attributes.
Dr. AIT, Dept of CSE 2021-2022 20
CryptoChart-Cryptocurrency Price
Tracker”
Dataset is normalized using minmaxscaler for building the model. We are splitting the data set into
training set and testing set for training, testing and validating the model as shown in the below diagram.
• Training data - 80%
• Testing data – 20%
After normalization closing price is extracted for prediction of cryptocurrency price.We are using
Tensor flow for building the model and Matplotlib for plotting the graph. Optimizer used is adam for
updating the weights.
The LSTM model is built and trained using the data and the predicted output is produced by
using test data.
Fig 5.7: Graph plotted between actual and predicted price using LSTM model
Dr. AIT, Dept of CSE 2021-2022 21
CryptoChart-Cryptocurrency Price
Tracker”
Chapter 6
SYSTEM TESTING
6.1 Introduction
System Testing is a basic form of verification and validation performed on a completely integrated
system. Testing is not meant to replace other ways to ensuring quality (like reviews). It is one of the
method to detect defects in the software product. The purpose of testing is to uncover the defects in
the system. Testing is done by the group of people within the software product (organization) whose
goal and charter is to uncover the defects in the product before it reaches the customer.
The developer normally prepares a set of test cases that are planned to break the system behavior that
is developed. In engineering, normally testing process is seen as a destructive process rather than
constructive. Testing the application within the stipulated time increases chances of the product to
meet its requirements completely. Testing requires asking about and understanding what you are trying
to test, knowing what the correct outcome is and why you are performing any test.
If we carry out tests without understanding why we are running them, we will end up in running in
appropriate tests that do not address what the product is intended to do. We would like to assign a
broader meaning to the term ‘customer’. IT does not mean just external customers. There are also
internal customers. IF a product is built using different components from different groups within an
organization, the users of these different components should be considered as customers.
6.1.1 Verification
Verification normally contributes towards the quality assurance of the product, in other words it
includes the set of activities to focus on the question “Are we constructing the product or the module
right”? To build the product right, a set of conditions/procedures should be maintained at the
beginning of the life cycle. These activities are considered as “proactive”. As their purpose is to
prevent the defects before they take in shape.
The verification and quality assurance are one and the same. Requirement review, design review and
the code review are some examples of the verification activities. The requirement specification might
alone contain many fault portions which needs to be detected in early stages, else the project or the
module developed on this specification will collapse.
Dr. AIT, Dept of CSE 2021-2022 22
CryptoChart-Cryptocurrency Price
Tracker”
6.1.2 Validation
Validation involves the process to evaluate the system component at the end of the development
process and will checked against the software requirements so as to know whether the business needs
are met or not. Examples of validation process are smoke testing, functional testing, regression testing,
system testing etc.
Dr. AIT, Dept of CSE 2021-2022 23
CryptoChart-Cryptocurrency Price
Tracker”
A good test plan leads to deliver the product on time which leads to customer satisfaction. The test
organizations prepare the plan to acquire / develop test equipment and other resources required to
implement the test methods. The test responsibilities include, collecting the pre- condition data, to
know how the data will be stored and reported. The outcome of successful test plan will be a
record/report of the verification of all the requirement specifications of the product/application under
test. This plan will be agreed upon by all parties (client and team).
There are different phases of testing involved in any of the testing process, each phase of testing will
focus on different aspects of the systems. The basic levels of testing followed in industry are unit
testing, integration testing, system and acceptance testing.
• Unit Testing: It is the primary phase of testing. Normally unit testing involves verification of
code developed by the developer during the coding phase. The coding should satisfy all the
standards such as syntax, logic, coverage etc. This type of testing is done by the programmer
or the developer of the module. It focuses on testing the smallest unit of the product designed.
Each individual modules or units will be tested against the specifications produced during
the design of the module. Once the testing is carried out on individual modules/units, then
integration of these small units will be done later. Since most of the times, unit testing
concentrates on coding part, it is also called as “coding and unit testing”. The unit testing
might be done concurrently or serially based on the model of the testing being used in the
project.
• Integration Testing: After the completion of unit testing of every single unit available in the
system, modules are integrated. After integration, there might be chances that unexpected
behavior might be noticed at the interface level between any two sub systems. So, integration
testing focuses on module integration.
Dr. AIT, Dept of CSE 2021-2022 24
CryptoChart-Cryptocurrency Price
Tracker”
• System Testing: It includes testing the entire system against the requirement document to see
if all the business needs are met or not. It usually includes both functional and nonfunctional
requirements of the system.
• Acceptance Testing: The testing that is normally carried out by the customers or the
representative of the customers. This will be either done at the customer site or at the
organization level itself. It mainly focuses on the external behaviour of the system.
• Since unit testing is carried out on simple units, we can test the software without waiting for
another unit, hence dependency on other modules does not come into picture.
• Once the modification is done for the unit code, it allows the developer to regress throughout
the code at later time to make sure that the module is working even after the changes
incorporation.
• It helps the developer to understand the functionality featured by every single unit of the
system.
Dr. AIT, Dept of CSE 2021-2022 25
CryptoChart-Cryptocurrency Price
Tracker”
6.7 Unit Test Cases
Dr. AIT, Dept of CSE 2021-2022 26
CryptoChart-Cryptocurrency Price
Tracker”
Dr. AIT, Dept of CSE 2021-2022 27
CryptoChart-Cryptocurrency Price
Tracker”
Description Able to accurately show the currency details and statistics with graph
Dr. AIT, Dept of CSE 2021-2022 28
CryptoChart-Cryptocurrency Price
Tracker”
6.8 Integration Test Cases
Input Cryptocurrency
Dr. AIT, Dept of CSE 2021-2022 29
CryptoChart-Cryptocurrency Price
Tracker”
Chapter 7
Dr. AIT, Dept of CSE 2021-2022 30
CryptoChart-Cryptocurrency Price
Tracker”
Dr. AIT, Dept of CSE 2021-2022 31
CryptoChart-Cryptocurrency Price
Tracker”
Dr. AIT, Dept of CSE 2021-2022 32
CryptoChart-Cryptocurrency Price
Tracker”
CONCLUSION
A Crypto currency price tracker monitors the current values of the digital currencies, in addition to
information about market capitalization, trading volume, price charts and other types of data. The
trackers accuracy can have a significant bearing on the investors decisions, because of this, investors
should choose their price tracker carefully. Cryptocurrency price trackers should use reliable data and
consistently update their data and by using correct machine learning algorithms and right datasets the
future value of the Coins can be predicted. This is done by using Machine Learning by using LSTM
Neural Networks. So, by using this application investors will know all the information they need prior
buying the cryptocurrencies like current price, market cap, older price comparisons etc. by constantly
updating the data.
The future of trading lies well with new emerging technologies that are able to benefit mankind. Needless
to say that, users and industry player can evaluate whether cryptocurrency can benefit or harm them, in
accordance with their objectives and perspectives in owning it. The opportunities in cryptocurrency in term
of its security of its technology, low transaction cost and high investment return. For the challenges, the
discussion revolved around law and regulation, high energy consumption, possibility of crash and bubble,
and attacks on network. The improvement and future work on system include improving the security
protocol, working on proof of activity, using the by-product of proof of work and applying the knowledge
management system. Looking at the positive outlook of the blockchain technology and the prospect of
government in regulating cryptocurrency, more in-depth studies on several aspects of cryptocurrency should
be done. From then, application in using cryptocurrency in the best of its ability would be one of the most
prominent discoveries in the 21st century.
Dr. AIT, Dept of CSE 2021-2022 33
CryptoChart-Cryptocurrency Price
Tracker”
FUTURE ENHANCEMENT
It is undeniable that the emergence of cryptocurrency will play a significant role in the world’s
economic fabric. So, in future we would be making it all in one featured application i.e it would be
possible for the users to create their own secure portfolio and a service to validate the coins would be
added. Future research on reducing the 51% attack on the market place by adding blockchain's best
algorithms. The security protocol should be better and trust on the system would allow it to be the
norm for users in doing their daily transaction via the internet. CoinShares i.e Capital Markets matches
human capital with purpose-built infrastructure and systems to help institutional counterparties meet
their unique liquidity needs through a full suite of trading, risk management, and hedging services
would be available. Transaction history helps in user identifying there capital stats and the transaction
rates will help him keep update of the marketcaps and other mandatory charges can be our future
works.
Dr. AIT, Dept of CSE 2021-2022 34
CryptoChart-Cryptocurrency Price
Tracker”
REFERENCES
[1] FAUZI, M.A., PAIMAN, N. and OTHMAN, Z., 2020. Bitcoin and cryptocurrency:
Challenges, opportunities and future works. The Journal of Asian Finance, Economics, and
Business, 7(8), pp.695-704.
[2] DeVries, P.D., 2016. An analysis of cryptocurrency, bitcoin, and the future. International
Journal of Business Management and Commerce, 1(2), pp.1-9.
[3] Giudici, G., Milne, A. and Vinogradov, D., 2020. Cryptocurrencies: market analysis and
perspectives. Journal of Industrial and Business Economics, 47(1), pp.1-18.
[4] Bonneau, J., Miller, A., Clark, J., Narayanan, A., Kroll, J.A. and Felten, E.W., 2015, May. Sok:
Research perspectives and challenges for bitcoin and cryptocurrencies. In 2015 IEEE
symposium on security and privacy (pp. 104-121). IEEE.
[5] Damsgaard, J., 2022. The Real Value of Cryptocurrency. Available at SSRN 4034312.
[6] Rejeb, A., Rejeb, K. and Keogh, J.G., 2021. Cryptocurrencies in Modern Finance: A Literature
Review. Etikonomi, 20(1), pp.93-118.
[7] Valdeolmillos, D., Mezquita, Y., González-Briones, A., Prieto, J. and Corchado, J.M., 2019,
June. Blockchain technology: a review of the current challenges of cryptocurrency.
In International Congress on Blockchain and Applications (pp. 153-160). Springer, Cham.
[8] Jani, S., 2018. The growth of cryptocurrency in India: Its challenges & potential impacts on
legislation. Research gate publication.
[9] Marne, S., Correia, D., Churi, S. and Gomes, J., 2020. Predicting Price of Cryptocurrency-A
deep learning approach. NTASU-9 (3).
[10] Abraham, J., Higdon, D., Nelson, J. and Ibarra, J., 2018. Cryptocurrency price prediction using
tweet volumes and sentiment analysis. SMU Data Science Review, 1(3), p.1.
[11] Tanwar, S., Patel, N.P., Patel, S.N., Patel, J.R., Sharma, G. and Davidson, I.E., 2021. Deep
learning-based cryptocurrency price prediction scheme with inter-dependent relations. IEEE
Access, 9, pp.138633-138646.
[12] Narayan, P.K., Narayan, S., Rahman, R.E. and Setiawan, I., 2019. Bitcoin price growth and
Indonesia's monetary system. Emerging Markets Review, 38, pp.364-376
[13] Lahmiri, S. and Bekiros, S., 2019. Cryptocurrency forecasting with deep learning chaotic
neural networks. Chaos, Solitons & Fractals, 118, pp.35-40.
[14] Mallqui, D.C. and Fernandes, R.A., 2019. Predicting the direction, maximum, minimum and
closing prices of daily Bitcoin exchange rate using machine learning techniques. Applied Soft
Computing, 75, pp.596-606.
Dr. AIT, Dept of CSE 2021-2022 35