CF969: Big Data for Computational Finance
Due: 17 April 2020 (11:59:59 AM)
This assignment consists of two parts.
Part I: Research paper review (worth 66%)
You are asked to read and review a recent research paper in applications of machine learning for
Examples of possible papers to review are:
“Deep learning with long short-term memory networks for financial market predictions” by
T. Fischer and C. Krauss.
Available at: https://www.econstor.eu/bitstream/10419/157808/1/886576210.pdf
“A deep learning framework for financial time series using stacked autoencoders and longshort term memory” by W. Bao, J. Yue , and Y. Rao.
Available at: https://journals.plos.org/plosone/article?id=10.1371/journal.pone.0180944
“Deep Learning in Finance” by J. B. Heaton, N. G. Polson and J. H. Witte.
Available at: https://arxiv.org/pdf/1602.06561v2.pdf
“Classification-based Financial Markets Prediction using Deep Neural Networks” by M. Dixon,
D. Klabjan and J. H. Bang.
Available at: https://arxiv.org/abs/1603.08604
“Deep Modeling Complex Couplings Within Financial Markets”, W. Cao, L. Hu and L. Cao.
“Deep Learning for Mortgage Risk” by J. Sirignano, A. Sadhwani and K. Giesecke.
Available at: https://ssrn.com/abstract=2799443
“CLVSA: A Convolutional LSTM Based Variational Sequence-to-Sequence Model with
Attention for Predicting Trends of Financial Markets” by J. Wang, T. Sun, B. Liu, Y. Cao and H.
Available at: https://www.ijcai.org/Proceedings/2019/0514.pdf
“Deep Learning for Event-Driven Stock Prediction” by X. Ding, Y. Zhang, T. Liu, J. Duan.
Available at: https://www.ijcai.org/Proceedings/15/Papers/329.pdf
You are encouraged to search the literature and choose your own academic paper (i.e., they have to
contain serious scientific contributions along the lines of the aforementioned papers). In doubt, you
are welcome to contact me for feedback on the paper choice.
This part of your assignment assesses the following learning outcomes:
1. Understand the principles of (data-driven) algorithms such as modern machine learning and
data mining algorithms;
2. Understand the application of (data-driven) algorithms on financial industry.
A report of your review must be written, following scientific publication standards, and it should be at
most 1000 words long. You can include more information in an appendix if needed.
The report will be assessed attending factors such as its contents, clarity, explanations, references,
grounding in the theory of machine/deep learning, etc.
Part II: Software for financial industry (worth 34%)
You are asked to come up with a case study that showcases your knowledge of software tools for the
financial industry. You can use as a possible example our study of the correlation between closing
values of European markets and American ones (you will do this in labs #6 and #7). You can look at
other sources of financial data (e.g., forex exchange rates) and provide a piece of software that does
either some optimization or learning using the data.
Any language/software we covered during the modules is acceptable; you are welcome to use a
different one that you might have learnt independently or in some other module.
This part of your assignment assesses the following learning outcome:
3. Use software tools to build up data-driven algorithms and analyse the huge amount of
You have to produce a Jupyter-like notebook (if you do not use Python you do not need to include
“In/Out code” in the notebook) discussing your case study covering the aims of your software and
your solution. You should also comment on whether (and possibly why) your software has been
successful or not in fulfilling the project aims.
Your submission will be assessed attending factors such as contents, clarity, explanations, etc. of the
Jupyter-like notebook and correctness, techniques and style of the piece of software.
In a Jupyter Notebook it is possible to interchange blocks of codes with blocks of text, which
can and should be used to explain what you are doing. For examples: Take a look at all the
Jupyter Notebook files that contain the lab exercises for this module.
Various essential elements should be present in your Jupyter Notebook: It should of course
contain and discuss your code as I said in the above point, but should also discuss (i.) the data
(and where you got it from), (ii.) what experiments you are doing with the data, (iii.) the results
of the experiments (iv.) a discussion of to what extent the software/experiments were
successful, and why.
Complex pieces of code should also include comments within the blocks of code (for Python,
you use the ‘#’-character for this) which may discuss the technical details of the code,
potentially even line-by-line.
If you are using a language other than Python, then you can either create a document that
replicates the style of a Jupyter-like notebook, or you can opt to include a file containing just
the source code together with an auxiliary document that discusses your software, the data,
explains how to run the software, and describes and discusses the results of your experiments.
In the latter case, the code should still be explained, which can either be done by inserting
extensive comments throughout the code, which explain what you are doing, or including
such a break-down of the code in your auxiliary document.
The submission of the assignment must be done through Faser in a zip file, including
the review report (in PDF format);
the sources and executables (if any, compiled, either on a Mac or PC) of your software to allow
me to verify your results if needed;
a Jupyter-like notebook discussing your piece of software.
Please refer to the Student’s handbook on the Departmental Policy on Plagiarism and Late
EasyDue™ 支持PayPal, AliPay, WechatPay, Taobao等各种付款方式!
E-mail: firstname.lastname@example.org 微信:easydue