The introduction of Bitcoin in January 2009 was the single most important FinTech development in history

BEEM061 Main Assignment Part A Brief

It consists of two equally weighted parts: part A) A 1,500 word essay based on Topic 2; and part B) A technical task-based assignment.

Part A) A 1,500 word essay based on Topic 2

Essay Title

“The introduction of Bitcoin in January 2009 was the single most important FinTech development in history.” Discuss this statement by comparing Bitcoin to previous advances in financial technology, and examples of current trends in FinTech. 

  • For assessment criteria see the ‘Generic Criteria for Assessment at level 7’ document.
  • For guidance on how to write the essay see ‘A Guide to Essay writing for Business School Students’ and ‘A Guide to Citing, Referencing and Avoiding Plagiarism’ documents.

Notice that there are two equally important issues to address in this essay. The first is placing bitcoin in the context of the broader previous history of financial technology, and the second is inclusion of examples of current trends in FinTech. Some of these current trends will be Bitcoin/blockchain related, while others not. Here you should draw on the activities of current FinTech firms – to this end you may find the formative group presentations useful, in addition to conducting your own research online and elsewhere.

You may find it useful to access the FT and Economist (for free) via library resources, in addition to material covered on the module to ensure you are as up-to-date as possible on current trends. To do this go to https://libguides.exeter.ac.uk/ , then click on ‘Go to A-Z List’ button on the right hand side:

 

then type ‘business’ in the box on the right

 

click ‘Go’ and you will find a range of resources as you scroll down, including the FT and the Economist.

 

BEEM061 Main Assignment Part B Brief

It consists of two equally weighted parts: part A) A 1,500 word essay based on Topic 2; and part B) A technical task-based assignment. This document outlines your tasks for Part B, which on its own contributes 40% to your overall module grade. Throughout the following tasks you MUST solve them using Jupyter Notebooks where appropriate, with each line of code stored. You will submit your assignment as a set of documents with your notebooks stored separately (with the .ipynb extension so that they can be easily verified). You are welcome to store your own code on your own github repository or elsewhere, but the .ipynb files must be submitted.

Explore the Bitcoin Blockchain and Basic Web Coding

(25 marks)

Extract Information From Your Own Transaction (15 marks)

Download a Bitcoin SV Wallet (we recommend Centbee) and share your address with your module lead, who will then send you a tiny amount (0.001 units of Bitcoin SV, roughly 10 pence).

Use this to send an even tinier amount (0.001 units of Bitcoin SV, roughly 1 pence) back (or to another address).

Once you have done this, go to your transaction history and find a way to locate the transaction on the blockchain. Centbee has a feature for viewing the transaction on the blockchain. Take a note of which block your transaction is in by taking its block height.

From a Jupyter notebook, extract the following information from the same block by fetching data from the whatsonchain API.

https://api.whatsonchain.com/v1/bsv/main/block/height/ place block height here

Your notebook should fetch, then print your data in JSON format, and you should obtain the following for the block with your transaction in it:

  • txcount
  • time
  • totalFees
  • confirmations
  • miner

Include some code that converts the unix timestamp into human readable format to the nearest second.

Explain what each of these parts of the block are in words.

Extract Information from Famous Blocks (5marks)

For the famous transactions below, go through the same process to obtain the time they occurred, including some code that converts the unix timestamp into human readable format.

The First ever transaction from Satoshi to Hal Finney in 2010 f4184fc596403b9d638783cf57adfe4c75c605f6356fbc91338530e9831e9e16 The Pizza purchase for 10,000BTC in 2010 a1075db55d416d3ca199f55b6084e2115b9345e16c5cf302fc80e9d5fbf5d48d

Basic Web Coding (5 marks)

Construct your own simple web page in a simple text editor and save at as a .html file that can be read by a web browser like Chrome. This page should include a javascript function that allows the viewer to change an image back and forth when they click on it.

Time Series Investigation of Bitcoin Price (50 marks)

You are working for a FinTech firm that provides customers with real time financial data and analysis. Part of the marketing strategy for this firm is providing a regular newsletter via a blog discussing current issues for personal portfolio management. Your boss has asked you to investigate the idea that Bitcoin is mostly viewed as a store of value. To provide the background to this report, you are required to carry out the following:

Obtain Time Series Data (5 marks)

Obtain the following data by calling the FRED api from a Jupyter notebook, and provide simple time series plots of the raw data:

  1. BTC Bitcoin Price in US Dollars CBBTCUSD
  2. Gold Price (including gold plated with platinum), unwrought ID7108
  3. S&P500 (index measure of the overall US stock market) SP500
  4. 3-Month Treasury Bill Secondary Market Rate (measure of the risk free rate) TB3MS

You may find it helpful to label them in your Python code as the following:

  1. bitcoinprice
  2. goldprice
  3. market
  4. riskfreerate

Data Transformations (15 marks)

Conduct your analysis from January 2016 to as recent as possible

Transform series 1 and 3 from daily to monthly data

Then, for series 1-3, you need to transform monthly price observations into monthly returns by obtaining new series:

!

where xt is the value of a variable for a particular observation and xt−1 is its value 1 month before.

To convert the series 4 annualised percentages to monthly simply divide this series by 12. You now have 4 transformed series which we will label as follows:

1. rbt
2. rgt
3. rmt
4. rft

Data Analysis(30 marks)

What is the correlation between:

  1. Bitcoin Returns rbt and Gold Returns rgt
  2. Bitcoin Returns rbt and Market Returns rmt

Interpret these results by comparing the view that Bitcoin is an alternative to gold to the view that Bitcoin is a new form of high-risk high-return asset.

According to the assumptions behind the strict form of CAPM theory, equations of the following form should fully explain returns to holding any particular asset, here for bitcoin and gold:

(rbt rft) = αb + βb(rmt rft) + ubt (rgt rft) = αg + βg(rmt rft) + ugt

where ubt and ugt are idiosyncratic unpredictable error terms associated with Bitcoin and Gold

respectively. According to the strict form of CAPM, α should be zero, and β provides a systematic measure of how high up the risk/return trade-off the asset is. Estimate α and β for Bitcoin and Gold using OLS regression, and interpret the results

Machine Learning in Practice (25 marks)

The background to this section is found at this repository:

https://github.com/SarunasGirdenas/fintech presentation. A recording of this session with full subtitles can also be found on ele under the ’TOPIC 4 AI and Machine Learning for FinTech’. Sarunas is also happy to answer any questions you may have via his email address here: sarunas.girdenas@prudential.co.uk.

High Level Description of FinTech Firm (10 marks)

Provide a high level description of Sarunas’ FinTech firm in words. You are not expected to explain technical parts in depth, but provide a mechanical description of what each of the four structural parts do, how they interact, and what they achieve overall.

Written Description of Python Code (10 marks)

Reproduce the model (saved under model building.ipynb) within your own Jupyter notebook. To do this you will have to download the large dataset from Kaggle following Sarunas’ instructions. This data will need to be saved in your active Jupyter notebook directory. Once you have reproduced it with the same results, using cell markdown, choose 5 lines of the code and include brief verbal descriptions of what those lines perform. Finally, save this as your own Jupyter notebook and include this in your submission.

Improve the Model(5 marks)

How could the model in the previous section be improved? You are not expected to actually improve it, but you must include descriptions of how the accuracy of the model could be improved, including alternative modelling strategies.