PYTHON PROGRAMMING IN FINTECH - 2023/4

Module code: MANM491

Module Overview

This course introduces modern programming concepts and practice for students with little or no background in computing using the computer language Python.


The course will start with a presentation of basic programming concepts, including data types and structures as they exist in Python. Loops and conditional statements will then be introduced, as well as custom functions, along with a wider discussion of structured programming and ways to reuse code.


Students will then consider practical applications of programming. They will learn to work with data input and output in different formats, use suitable libraries for scientific computing and data analysis, and create plots and visualizations to display results.


Throughout the course, students will engage with professional programming practices and tools (test-driven development, version control, code reviewing, debugging), and will have the opportunity to collaborate with peers to develop their skills.

Module provider

Surrey Business School

Module Leader

WANG Shuhui (SBS)

Number of Credits: 15

ECTS Credits: 7.5

Framework: FHEQ Level 7

Module cap (Maximum number of students): N/A

Overall student workload

Independent Learning Hours: 95

Lecture Hours: 11

Laboratory Hours: 22

Guided Learning: 11

Captured Content: 11

Module Availability

Semester 2

Prerequisites / Co-requisites

None.

Module content

Introduction to Python:


  • Variables, Loops

  • Operators, Data type

  • list, tuple, dictionary

  • Function

  • Data structures



Object Oriented programming (OOP) in Python:


  • Introduce the OOP and understand class, attribute, objects and method

  • Features of OOP: Encapsulation; Inheritance; Polymorphism



Matplotlib, Pandas and Numpy in Python :


  • Various application methods: plot the figures

  • Understand the Pandas: powerful data structure

  • Introduce the Numpy: another data structure



Web crawling data: read data from a Web source

Assessment pattern

Assessment type Unit of assessment Weighting
School-timetabled exam/test Individual programming problem set 1 (120 Min) 25
School-timetabled exam/test Individual programming problem set 2 (120 Min) 25
Examination Individual programming problem set 3 (120 Min) 50

Alternative Assessment

None

Assessment Strategy

The assessment strategy is designed to provide students with the opportunity to demonstratetheir understanding of both the theoretical concepts and their practical application. Thus, the two online tests are based mostly on the theoretical concepts and some application of them in practical situation while the final exam assesses both theoretical and practical understanding of topics covered.

Thus, the summative assessment for this module consists of:


  • Two online class-tests during the semester

  • A final exam during the examination period



Formative assessment -will be provided through students engagement with practice tests throughout the module.  Students will receive feedback during lab sessions and are encouraged to seek further guidance through the use of student feedback and consultation hours. 
Feedback

Formative and summative feedback for the class tests will be provided following the test. This will enable the students to assess their learning at that stage and to further prepare for their final exam.

Module aims

  • Provide the conceptual foundations for understanding, analysing and interpreting python programming language
  • Enable students to apply Python programming to the business world
  • Enable students to have ability to develop their own coding

Learning outcomes

Attributes Developed
001 Apply Python programming skills to real world examples and data. KCP
002 Create various programmatic data analysis in financial services and regulation KCPT
003 Apply the python programming skills in order to develop their own codings KCP
004 Evaluate different codings and have the ability to distinguish the optimized methodologies KCPT

Attributes Developed

C - Cognitive/analytical

K - Subject knowledge

T - Transferable skills

P - Professional/Practical skills

Methods of Teaching / Learning

The learning and teaching strategy is designed to:


The teaching and learning methods include the use of weekly lecture and labs to illustrate the theory and allow the student to practice the practical application of such theory with a range of weekly lab questions.  Lecture material will be supported by directed reading and weekly guided learning exercises will be set to test students’ understanding on an on-going basis.  Surrey – Learn will be used as an information portal and will contain lecture notes, practical exercises and model answers plus past exam papers and model answers.


The learning and teaching methods include:


  • Lectures 

  • Lab sessions

  • Captured contents

  • Guided learning


Indicated Lecture Hours (which may also include seminars, tutorials, workshops and other contact time) are approximate and may include in-class tests where one or more of these are an assessment on the module. In-class tests are scheduled/organised separately to taught content and will be published on to student personal timetables, where they apply to taken modules, as soon as they are finalised by central administration. This will usually be after the initial publication of the teaching timetable for the relevant semester.

Reading list

https://readinglists.surrey.ac.uk
Upon accessing the reading list, please search for the module using the module code: MANM491

Other information

This module enables students to develop skills relevant for their personal employability including data storytelling, Digital Skills, Digital Capabilities which will allow students to apply knowledge and skills in a global environment.

Employability: The module provides a variety of current events and live information on python programming. Key to this, students develop the ability to critically evaluate the problem at hand, interact with peers with different working experiences, and exchange their ideas. As a result, students develop and enhance their interpersonal and professional skills.

Global and Cultural Capabilities: Programming language is a global trend and an innovative topic. Students will learn and develop their ability to work in groups effectively with other students from diverse backgrounds to broaden their world view, own perspectives and interpretations and reinterpreting issues against a broader spectrum of ideas and representations

Digital Capabilities: The skills taught in this module provide students with a solid grounding in the foundation knowledge of programming language by learning from a various of digital resources. Students will also collect financial data from datasets to conduct data analysis using Excel and other data processing software.  Students will be exposed to real-world situational problems which will allow them to evolve skills and attributes to be forward-thinking in their application and implementation of digital solutions to meet diverse and complex challenges. Students will develop proficiency in all aspects of digital engagement.

Resourcefulness & Resilience (R&R): Students will develop attributes such as confidence, adaptability, self-regulation, self-efficacy, problem solving and decision-making abilities, through interacting in their groups, and engaging with their group members. The effectiveness of the R&R will be inherent in assessment design.

Please note that the information detailed within this record is accurate at the time of publishing and may be subject to change. This record contains information for the most up to date version of the programme / module for the 2023/4 academic year.