Homepage
Tutoring Jobs
£25/h
1st lesson free!
Tutor profile verified
Response Time 24h
Lessons offered by Suman
  • Individual
  • In group
The lessons will be held
  • at your home
  • By webcam
Taught subjects
  • Computer Skills
  • Computer programming
  • C++
  • Programming languages
  • Python
Levels
  • All Levels

Hands On and Personalised Coding Tutorial in London by Experienced Quantitative Finance Consultant

Methodology

My teaching method is based on using simple terms to explain a topic, no jargon. I encourage student's view on a given topic and always encourage them to share their thoughts on a given topic or problem. I tend to explain a topic with enough number of practical examples and teach in a very hands on manner.

Background

I am an experienced quantitative finance consultant with 20 years of experience in the industry. I am entering the world of teaching. I have wealth of experience in computer programming and data analysis in the financial services industry. I believe that I will be able to share my experience and enrich student's learning. My teaching method is online and face-to-face, very much hands on with large number of practical examples. I spend most time on fundamental aspects of computer programming and value student's own approach to come up with ideas and solutions.

Rates

Transportation Fee : £7
Rate for online lessons : £25/h
Rate for 5 hours of lessons : £120
Rate for 10 hours of lessons : £235
Lessons offered by Suman
Individual
In group
The lessons will be held
at your home
webcam
Taught subjects
  • Computer Skills
  • Computer programming
  • C++
  • Programming languages
  • Python
Levels
  • All Levels

Suman's CV

Suman Datta

[British Citizen]

■ Data Analytics in Python (J. P. Morgan Chase & Co Investment Bank)
■ ISDA SIMM optimization and LCH Swap compression for T1 banks (Quantile Technologies)
■ CVA/DVA/FVA calculation, analysis and Stress Testing for PRA, DFAST, CCAR (HSBC Bank)
■ Statistical Risk Modelling in R for CCAR, FINMA Stress Testing (Credit Suisse Bank)
■ Pricing Exotic Derivatives and Stochastic Calculus (Barclays Capital Bank)
■ High performance low latency feed handler development (Bloomberg LP)
■ Expertise in Python, C++/ STL/Boost, R, Data Structures and Algorithms, SQL
■ Unix/Linux internals, IPC, Multithreading, Shell scripting, experience in C#, Java, Excel
■ 8 years in Quant Finance out of 20 years of industry experience in Software Design and Development

■ Topcoder (topcoder.com) Data Science Marathon Match high ranker (in top 20)

Education:
 Certificate in Quantitative Methods in Finance and Risk Management, Stanford University, USA, 2013
 M.S. in Software Systems, Birla Institute of Technology and Science, Pilani, India, 2002
 B.Tech. (Hons.) in Mechanical Engineering, Indian Institute of Technology Kharagpur, 1997

Software Tools:
OS: Linux, Windows, Solaris IDE: Eclipse, Visual Studio Process: Agile/Scrum, Waterfall
Source Control: GIT/BitBucket, SVN, Clearcase, Perforce, MKS, Visual Sourcesafe, Synergy
Test Automation using JENKINS TDD
Quant Qualification

Quantitative methods in Finance and Risk Management - Stanford University, USA
[1 year certificate course in Quantitative Finance]

Semester 1: Statistical Methods in Finance (Grade - A)
Semester 2: Statistical Models and Methods for Risk Management and Surveillance (Grade - A)
Semester 3: Algorithmic Trading and Quantitative Strategies (Grade - A)

Course objective: Apply regression analysis to the CAPM and multifactor pricing models Use analytic tools e.g. time series modelling and forecasting, to tackle rapidly changing financial markets Develop financial strategies based on algorithmic trading and statistical arbitrage
Key Topics: Linear Regression, Time series - ARIMA, GARCH, Black-Litterman, VaR and Expected Shortfall, Basel accords, Black-Scholes, Credit Risk and PD/LGD/EAD, Logistic regression, GLM/GLMM, Survival analysis and Cox proportional hazard model, Algorithmic Trading strategies, Pairs trading, Contrarian/Momentum strategies, Cointegration, Order Book dynamics

12 assignments including 2 quant projects were completed, programs were developed in R:
Project 1 - Black-Litterman model: Implementation of Black-Litterman model and apply it on Fama-French 6 portfolio data sets. The BL model allows for investors views having certain confidence levels to combine with historical trend to calculate portfolio weights and to predict portfolio return.

Project 2 - Algorithmic trading strategy: Development of a trading strategy for high frequency intraday trading data of 5 technology stocks taken from NYSE TAQ database. The key idea is to dynamically combine cointegration based method with momentum/contrarian based method to achieve consistent and high PNL. It concluded that cointegration, when exists, has a higher Sharpe Ratio than momentum methods, and combining cointegration and momentum produces better PNL than each method applied alone.
Significant Business Projects and Professional Experience

Data Analytics Consultant, J. P. Morgan Chase & Co. (CIB department), Glasgow Aug 2019 - Nov 2019

● Generic table operations using Python: Developed and delivered a python based software tool for generic and configuration driven composition and filtering of multiple data-frames, applied on infrastructure and reference data of the firm. In this implementation all the table compositions, logical operations e.g filtering are completely configurable and also allows any new custom table operation to fit into the framework efficiently.
● Recursive flattening of JSON tree: Delivered a multiprocessing enabled python program for dynamically flattening large JSON files containing data with multiple levels of nested dictionaries and lists. The implementation was based on breadth first traversal of the JSON tree.
 Key Areas: Python 2.7, pandas, numpy, sqlalchemy, Oracle-SQL, IntelliJ

Quant Developer / Specialist Consultant(Contract), Quantile Technologies, London June 2017 - June 2019

● ISDA SIMM Optimization: Developed a network flow based cycle cancelling algorithm using Boost C++ graph library to fast reduce a large chunk of margin for the participating banks. This program drastically improved performance of the overall optimization process which also involved a much slower matlab based gradient descent algorithm for minimizing quadratic objective function with quadratic constraints. I also developed and re-factored various python modules around the optimizer for data processing, cleaning and trade generation. I conducted internal daily runs and official weekly optimization runs for FX Delta for participating banks starting from data collection to posting results to clients.
● DASK based distributed computing: Developed a Python-DASK based parallel computing framework for the margin optimization process to execute over a cluster of machines, reducing execution time massively.
● SIMM against LCH: Assuming LCH is risk-free , margin to LCH by banks can be analytically minimized. Developed a software based on this analytical approach using R to minimize banks' IM against LCH. Later re-implemented and delivered this in C++ and integrated with above-mentioned network flow algorithm.
● LCH Swap compression: Designed and developed IR Swap compression software for LCH using a commercial optimizer. The compression optimizer minimizes total gross notional satisfying cash flow constraints and various other risk constraints while keeping the total trade-count of each of participating bank within prescribed limits. Developed a Q program to integrate the newly developed optimizer into a KDB/Q environment. Also experimented with open source COIN-OR solver to compare it with commercial solver.
● Efficient LCH data filtering: Developed and delivered a Python module that implements a large set of strict validation checks for LCH trade data and removes trades and netting keys stringently. This is a high performance Numpy based multiprocessing enabled module that produces clean data for the optimizer.
 Key areas: ISDA SIMM, Swap compression, C++, Boost graph library, Python (DASK, pandas, numpy, scipy, scikit-learn), Quantlib, AMPL programming with CPLEX, COIN-OR CBC solver


Quant Analyst and Developer (Contract), HSBC Bank, London, April 2016 - June, 2017

● Counterparty Credit Risk calculation and analysis - Stress Testing for PRA, CCAR, DFAST scenarios:
 Composite CDS curve construction and Stress Testing: Developed an algorithm that linearly combines counterparty default probabilities from rating based historical transition matrix and from CDS curve to produce a composite CDS curve. This involves bootstrapping the CDS curve, combining historical and implied probabilities and then re-pricing the CDS legs. During stress testing, shock is directly applied on the composite CDS and this helps in automating the entire stress testing process.
 Run stressed scenarios with shocks applied on CDS spread, yield curve, funding spread and FX rates and analyze the shocked XVA values and identify counterparties with large move.
 Monthly calculation and reporting of XVA values (CVA, DVA, FVA) for multiple sites and scenarios including major hubs for the bank (NY, London, Paris, Hong Kong) involving ~10000 counterparties per hub. This includes XVA sensitivity calculation by observing changes in XVA values between base and bumped scenarios. Bumps are applied on Interest Rates and FX rates following regeneration of exposures (EPE and ENE).
 Analysis of bilateral CVA numbers, comparing with previous month's values, detecting and explaining significant deviation at counterparty level if any, and digging down to per trade exposure changes.
 Various contributions to C++ based quant library in terms of new feature development, bug fixing and test development. Most of these features are migrated from Excel implementation to C++ library. I worked very closely with the IT team to integrate new quant functionalities with the UI of the in-house software and supervised them to test all new features thoroughly.

● Bid-Offer Spread modeling for Stress Testing: I developed a linear regression based stress testing framework in R for calculating shock on bid-offer spread when a shock on mid price is given. This method is applied on FX VOL and Interest Rates products to calculate changes in Bid-Offer reserve under stress situation.
 Key areas: XVA calculation and analysis, Stress Testing, C++, R

Senior Quant Model Developer (Contract), Crisil UK Ltd (at Credit Suisse), London June 2015 - Dec 2015

● Statistical Risk Modeling for Scenario Analysis for CCAR, FINMA Stress Testing in R:
Implemented a set of quantitative models in R for calculating shocks on risk factors in a stressed economic scenario. An adverse or severely adverse scenario is given by regulators with shocks defined on a set of macro-economic parameters (e.g. GDP, Employment rate). Quantitative models are developed to propagate the shocks to internal risk factors where the bank has positions. A given scenario contains risk factors from different asset classes and a risk factor can be a tradable ticker or synthesized from a set of such tickers. Each risk factor has its own historical time series used for correlation calculation. The risk factors are arranged in hierarchical levels and shocks are propagated across the levels using following statistical methods:
 Partial and Semi-Partial Correlation based linear regression: Manual and PCA methods
 One-to-One correlation method
 Nelson-Siegel method for yield curve interpolation
 Standardization of time-series and shocks
The above models were developed in R and successfully applied on multiple regulator-defined and internal scenarios containing up to 4000 risk factors. Shock propagation and subsequent analysis were done for base, adverse and severely adverse scenarios. A Java Spring/Hibernate based database with Swing UI were developed for storing scenarios where I contributed towards SQL query specific module development.
 Key areas: Statistical Model Development and Analysis, Stress Testing, R , SQL, JAVA

Quant Developer (Contract), Barclays Capital Investment Bank, London Jul 2014 - April 2015

● Pricing Exotic Derivatives using Monte-Carlo simulation:
 I was engaged with the "Quantitative Analytics Central" group of Barclays Capital investment bank. The group aimed at developing a generic (asset class agnostic) quantitative framework for pricing derivatives. Developed and integrated an existing Monte-Carlo engine into this new generic framework for pricing exotic derivatives using Longstaff-Schwartz algorithm. The key work was to design and develop software modules for the calibration and the valuation phases of the algorithm. The design took care of the fact that the Monte-Carlo simulation is run in a distributed environment, and the results were needed to be assembled appropriately. The developed software was tested with data from energy market. The entire development was done in C++ using Visual Studio on Windows7.
 As part of test framework improvement, I developed a Python module to enable automatic comparison of xml formatted test outputs. In addition I wrote a number of tests for calculation of Present Values and various Option Greeks for different trades. This work involved programming in C#.
 In addition to development contribution, I was also responsible for overseeing one build and release process of the 'Quantitative Analytics' library. I successfully completed this week-long process by coordinating with multiple development groups and synchronizing their codes to release a stable library.
 Key areas: Quantitative Finance, C++/STL/Boost, Python, Visual Studio, Perforce, C#
Senior Software Engineer in R&D, Bloomberg LP, London Nov 2011 - May 2014

● Exchange connectivity, Network programming using Boost::ASIO - analyze feeds data and market structure:
 A data feed software connects with the stock exchange using a specific network protocol, receives and processes financial data (trades, quotes, reference data), manages connection and data flow throughout the market hours, recovers lost data if required, and maintains a low latency while processing the data. I analyzed market model and financial context of the data and developed feeds software for several European and African stock exchanges making the data available on Bloomberg terminal. The programs were developed using C++/STL/Boost, Python and SQL in a multithreaded low-latency environment.
 Developed SQL programs to fetch data from exchange database to be processed by C++ based parser
 Developed software for handling several market messaging protocols e.g. FIX, ITCH
 Implemented market data modelling standards e.g. Security Status 2.0, Market Model Typology 2.0
 Feeds software development for various stock exchanges and generate tick data:
- BATS/Chi-X OTC market: Implementation of Market Model Typology 2.0 standard for trade reporting - Ghana Stock exchange: implementation of Order book processing
- Johannesburg Stock exchange: security creation on Bloomberg terminal for Interest Rate and Currency Derivative market, Volatility data processing for Options and Futures
- Nordpool spot market: News data processing
- MTS Prague: Implementation of the new Security status 2.0 standard
- Financial Express: process and update database with 5-years of historical data
- Istanbul Stock Exchange: New feature addition to Derivative and Bond market
- Seychelles Stock Exchange: develop new feed software for this newly launched exchange
● Framework Development and Maintenance:
 Proposed and developed a new feeds software model using boost::ASIO and boost::Signal. This is a single-threaded asynchronous model, performance efficient and can scale up to handle large amount of data with low-latency, and can adapt to available hardware concurrency
 Regular maintenance and address issues related to Feeds software framework libraries and build process
 Key areas: C++/STL/Boost, Python, SQL, Linux, Eclipse, Network Programming, Market Data models, FIX 4.4 protocol

Senior Software Engineer, Alcatel-Lucent Ltd Jan 2011 - Oct 2011

● Network programming for Content Delivery
 Design and implementation of a request-response based network protocol API deployed on a multithreaded and distributed Linux environment. It used non-blocking threads which used unix epoll interface for event-based communication and also used lockless FIFO queue to avoid locking overhead
 Implementation of a Python-based test module for a geographic cache selection algorithm
 Migrating a database from MySQL to SQLITE3 and re-writing the C++ interface
 Key areas: C++/STL, Python, Multithreading, Linux (Ubuntu), Eclipse, Low latency Network programming, GDB

Senior Software Engineer, Nokia (Symbian) UK Ltd Feb 2009 – Dec 2010 (site closed)

● Developing a Graphics Composition Engine (OpenWF) for Symbian Operating System
 Design and implementation of OpenWF graphics composition pipeline on Symbian OS using C and C++ and using multi-threading to handle rendering work and rendering requests simultaneously
 Analysis of Symbian OS architecture including its thread and process model, inter-thread communication, memory architecture, graphics and display drivers, event driven multi-tasking and error handling mechanism
 Integration of a GPU accelerated secondary display (TV) driver into Symbian OS
 Key areas: C++, Graphics algorithms, Symbian OS internals, Eclipse

Design Engineer, Imagination Technologies Ltd. UK Jun 2007 - Feb 2009

● OpenVG Graphics Driver development on 3D graphics hardware for embedded systems
 OpenVG is a 2D scalable graphics standard primarily for Map Visualization and UI development on mobile devices. The development environment was Linux and WinCE
 Adaptive path tessellation algorithm for cubic Bezier curves using Fixed Point mathematics
 Mask operations on GPU, filtering operations for separable and non-separable filters
 Glyph API for text visualization
 Graphics driver's performance calculation: Analysis of load distribution between CPU and GPU
 Key areas: C, GPU programming, Geometric algorithms, WinCE, Linux, Data Display Debugger

Researcher and Teaching Assistant, Computer Science, Loughborough University, UK Aug 2005 - Jun 2007

● Development of an image analysis module for defect detection on rail surfaces
 Development of an edge detection and analysis module to analyze cracks from the images of rail surface and classification of cracks based on length and straightness (1.5 year funded project by Network Rail)
 Key areas: C++, Image processing algorithms, Windows and Visual C++


Senior Systems Analyst (Team Lead), LG Electronics, India, South Korea Apr 2004 - Aug 2005

● Software implementation of OpenGL 3D graphics API for mobile phone
 The aim of this project is to develop the OpenGL graphics library (v1.0) for embedded systems. The work is based on the OpenGL-ES API specifications published by Khronos group and the aim is to implement the entire graphics processing pipeline
 The developed OpenGL-ES passed the conformance criteria set by Khronos conformance test suite
 Among important algorithms implemented by me were point and line rasterization, scan-line algorithm for triangle rasterization including perspective texture mapping and multi-texturing
 A fixed point math module was developed for faster floating point calculation
 A 3d game engine was developed for testing the OpenGL driver. This included algorithms for collision detection and 3d object culling.
 Key areas: C, C++, OpenGL pipeline, 3D graphics algorithms, Windows and Visual Studio


Senior Software Engineer, Parametric Technology Corporation, India Jan 1999 - Mar 2004

● 3D Graphics and Visualization using Hoops3D / OpenGL
 Integration of Hoops3D graphics library into CADDS5 (a CAD software) graphics pipeline
 Analysis of Hoops3D and OpenGL graphics pipeline and incorporating network based features of Hoops3D in Cadds5
 3D Viewing in CADDS5: Analysis of 3D viewing pipeline and unification of two independent viewing modules into one
 Surface Modelling: Shrinking Convex Hull Algorithm
 Design and development of an algorithm that shrinks a convex hull of a point data set to a certain extent to reveal the concavity present in the point data distribution
 Key areas: C, C++, High-level 3D graphics data structures and algorithms, Sun Solaris

Management Trainee, Tata Electric Co., India Jul 1997 - Oct 1998

 Understanding the working of thermal and hydro-electric power plants

Special Achievement:
 Microsoft Research Award for the best poster competition at the BCS Summer School, Plymouth, UK, June 2006: Runner-up prize
 Brainbench Master’s Level certificate in Programming Concept
 Recipient of Certificate of Merit ‘Grade A’ in the ‘Intelligence and Science Talent Test’ in 1989 and 1991, organized by National Science Society, India

Extra-Academic Activities:
 Member of Milton Cricket Club, Cambridge (2010 Summer Season Cricket League)
 Sub-warden and Fire-management person at Harry French Court, Loughborough University
 Winner of the Silver Medal in the Inter Hall Cricket Competition at IIT Kharagpur, 1996
 Member of PTC cricket team in Inter-Information Technology Cricket Tournament, Pune, India
 Member of the Guard of Honor cadre at the NCC camp held in December, 1993

Similar tutors

computer skills lessons closeby? Here's a selection of tutor listings that you can check out.
Superprof can also suggest computer programming lessons to help you.
Learning isn't a problem, C++ lessons for all!
Taking programming languages lessons has never been easier: you're going to learn new skills.

London
IT engineer with 9 years of experience willing to offer coaching on all computer related technology
£15
Ankit
  • (9 reviews)
1st lesson free!

Being an IT Engineer, I can easily teach basic skills like Excel, PowerPoint, Access, Word along with skills like Testing...

Lessons by webcam Face to face lessons Approved profile Responds within an hour
London
Lead iOS Developer, Teaching the latest topics of apple programming in simplest way
£40
Connor
  • (2 reviews)
1st lesson free!

You want to know how to make an iOS app and wonder how? first, you need to believe yourself, then I help you to stay on the...

Lessons by webcam Face to face lessons Approved profile Responds within an hour
London
Data Scientist looking to teach Python and other programming languages. Machine Learning and Deep Learning also included in the curriculum
£25
Kasturi
1st lesson free!

I focus on a hands on approach as I believe that gives the best learning experience. I also break down the concepts so that...

Lessons by webcam Face to face lessons Approved profile Responds within an hour
London
An Engineering and Business student offering basics maths, computing and business lessons.
£15
Oghosa
1st lesson free!

My teaching method depends on the type of student I am teaching. The approach I take is very easy as I start from the basics...

Lessons by webcam Face to face lessons Approved profile
London
Engineering Masters graduate Student offering Maths and computing (coding) lessons in london
£9
Norman
1st lesson free!

I have a student centered approach to learning, being a student myself I try to understand and tailor every study session...

Lessons by webcam Face to face lessons Approved profile
London
Cyber Security student offering basic-intermediate level computer science, repairs and IT security lessons
£12
Ornel
1st lesson free!

I believe the best teaching method is a hands on approach rather than just have the student sit there and listen to...

Lessons by webcam Face to face lessons Approved profile
London
Offering Systems Architecture, Web/Desktop Programming, Hands-On Hardware and Software tutoring up to Degree levels
£20
Pasha
1st lesson free!

Based on the topic and pupil's learning preferences, I would either pick a good book to systematically go through with...

Lessons by webcam Face to face lessons Approved profile
London
Media expert, teaching sql and relational databases and programmatic display advertising london
£20
Imad
1st lesson free!

I will structure my lesson on the basics and making sure the student understands the fundamentals and share experience

Lessons by webcam Face to face lessons Approved profile
London
Top tech company software development engineer Offering software engineering and interview lessons up to university level
£80
Lizhang
1st lesson free!

For individual lessons, I base my lesson on the requirements from the student. If a student is interested in seeing real...

Lessons by webcam Face to face lessons Approved profile
London
First year CS undergraduate student offering C++ and Java lessons in London
£8
Arisha
1st lesson free!

I would enjoy giving lessons to anyone up till high school level that is interested in C++ or Java coding. I aim to make my...

Lessons by webcam Face to face lessons Approved profile
Greater london
Highly Qualified IT Engineer Based in London Offering Basic and Advanced Technology Tutoring and Support
£25
Harry
  • (6 reviews)

Hello All, My name is Harry Mckeady and I am an IT Engineer based in central London. I have many years of experience...

Lessons by webcam Face to face lessons Approved profile
London
A drone engineer offering engineering AutoCAD lesson in London. Fusion 360, Creo, OnShape etc.
£30
Mitsutaka
1st lesson free!

Learning with a student while I am teaching is what I love to do. This method always encourages students to work more. They...

Lessons by webcam Face to face lessons Approved profile
London
A drone engineer offering computer programming lessons in London. Python, Matlab, C, C++, etc.
£30
Mitsutaka
1st lesson free!

Learning with a student while I am teaching is what I love to do. This method always encourages students to work more. They...

Lessons by webcam Face to face lessons Approved profile
London
Basic Programming courses using Python (No coding Experience required). A step by step guide.
£15
Osama
1st lesson free!

My teaching methodology is different, i focus on problem based teaching rather than lectures. I use real world problems to...

Lessons by webcam Face to face lessons Approved profile
London
UCL Msc Computer Graphics, Vision and Imaging(Distinction). Comfortable in Java, C++ and Python. I teach both Computer science and Mathematics.
£15
Ujjayanta
  • (1 review)
1st lesson free!

I am currently a teaching assistant at University College London. You would have lots of examples and the simplest...

Lessons by webcam Face to face lessons Approved profile
London
I can teach you how to become a videographer and create a passive income with your camera.
£10
Gokhan
1st lesson free!

My lessons will be direct and easy to understand. I will not get in to historical details of camera etc, you can research it...

Lessons by webcam Face to face lessons Approved profile
Greater London
Designer offers lessons in basic computer skills and Adobe programs in London.
£30
Kaiva
1st lesson free!

Highly creative and open minded person who loves new opportunities and challenges. Has a design oriented thinking: aspires...

Lessons by webcam Face to face lessons Approved profile
at his home at your home By webcam
1 hour Not available £32 £25
5 hours Not available £155 £125
10 hours Not available £305 £250
Book a class