ºÚ¹Ï³ÔÁÏÍø

Internal

IC208 - Programming for Finance

ºÚ¹Ï³ÔÁÏÍø

IC208-Programming for Finance

Module Provider: ICMA Centre
Number of credits: 20 [10 ECTS credits]
Level:5
Terms in which taught: Spring term module
Pre-requisites: IC104 Introductory Quantitative Techniques for Business and Finance
Non-modular pre-requisites:
Co-requisites:
Modules excluded:
Current from: 2022/3

Module Convenor: Dr Vu Tran
Email: v.tran@icmacentre.ac.uk

Type of module:

Summary module description:

The module objective is to introduce the students to Object Oriented Programming using Python as the main programming language, and to use the learning outcomes for data processing and applications in Finance. It covers the basics of programming, including class, objects, datatypes, conditional statements and loops, processing data from files, receiving inputs and displaying relevant outputs. Students who complete this course should be able to write simple programming functions in Python, process data files including reading, and modifying and writing data to external files. Additionally, students should be able to read and write to Excel and CSV files, connect to databases, obtain and process data from the Web, as well as use Python for Finance and Econometrics.



Ìý


Aims:


  • Learning fundamentals in Python programming including Object Oriented ProgrammingÌý

  • Learning about Python Packages and IDE software

  • Representing and working with different data types: tuples, lists, dictionaries and sets

  • Designing functions and organising larger programs into functions

  • Array Operations, Random Numbers

  • Data Management in Python

  • Data Visualisation in Python

  • Regression analysis including time series, cross-sectional, and panel data analyses.


Assessable learning outcomes:

By the end of the module, it is expected that students will be able to:Ìý




  • Write programming codes in Python for various applications in finance and business

  • Programmatically process large numbers of filesÌý

  • Programmatically read from and write to large numbers of Excel and CSV filesÌý

  • Connect to databasesÌý

  • Get and process data from the Web using PythonÌý

  • Use Python for Quantitative, Finance and Econometrics applications


Additional outcomes:

The module also aims to enable students to apply what they learn in classroom by using programming tools to conduct a quantitative project in Finance, which makes use of historical data and programming techniques to read, analyse and use different variable and signals for a decision making process such as designing a trading strategy.



Ìý


Outline content:


  • Introduction to Programming with Python

  • Class, Object, Variables, Datatypes

  • Conditional Statements, Loops and writing functions in Python

  • Important Python libraries including Numpy, Pandas

  • Pandas for data management

  • Data visualisation

  • Python I/O, interacting with the OS system, reading/writing from/to files

  • Using Python to connect to databases including connections to the Web

  • Using Python for applications in Finance/Econometrics


Global context:

Python is now one of the most common introductory programming languages taught at universities across the world specifically for future development of programming Financial & FinTech applications worldwide.


Brief description of teaching and learning methods:

Lectures will combine a theoretical framework as well as practical programming applications. Students are shown how to directly apply what they are being taught, as well as how to conduct quantitative assignments.


Contact hours:
Ìý Autumn Spring Summer
Lectures 20
Practicals classes and workshops 10
Guided independent study: Ìý Ìý Ìý
Ìý Ìý Wider reading (independent) 40
Ìý Ìý Wider reading (directed) 10
Ìý Ìý Advance preparation for classes 10
Ìý Ìý Preparation for tutorials 10
Ìý Ìý Completion of formative assessment tasks 80
Ìý Ìý Revision and preparation 20
Ìý Ìý Ìý Ìý
Total hours by term 0 200 0
Ìý Ìý Ìý Ìý
Total hours for module 200

Summative Assessment Methods:
Method Percentage
Project output other than dissertation 70
Class test administered by School 30

Summative assessment- Examinations:

Summative assessment- Coursework and in-class tests:

One class test – 30% of the final mark

Individual project – 70% of total final mark to be submitted in Week 32 on BlackBoard



The individual project makes use of historical data and programming techniques to read, analyse and use different variables and signals for a decision making process.



Ìý


Formative assessment methods:

Seminar questions are assigned for each class. The seminar leader will facilitate discussion and offer feedback.


Penalties for late submission:

submission are automatically generated):



Penalties for late submission on this module are in accordance with the University policy. Please refer to page 5 of the Undergraduate Guide to Assessment for further information:


Assessment requirements for a pass:

Final overall mark of 40%.


Reassessment arrangements:

Re-submission of an individual project in August / September


Additional Costs (specified where applicable):

1) A computer with at least 8Gb RAM.Ìý



2) Recommended textbook:Ìý



Yves Hilpisch (2019) Python for Finance: Mastering Data-Driven Finance 2nd Edition.Ìý



Guide price: £37.25


Last updated: 22 September 2022

THE INFORMATION CONTAINED IN THIS MODULE DESCRIPTION DOES NOT FORM ANY PART OF A STUDENT'S CONTRACT.

Things to do now