Financial technology research projects

Project 1: Performance model for secure fund transfer services, at low cost, on blockchain
Creation of a fund transfer model for developing countries, where users do not have to go to a wire transfer facility, and that instills total trust in the service. A survey was conducted in Kinshasa, Congo to determine users’ concerns regarding the use of a blockchain-based mobile fund transfer application.
Objective
The blockchain-based payment process experiences problems with increasing loading. In addition, during heavy traffic, transactions slow down and the cost becomes prohibitive for small fund transfers. A low-cost solution for the fund transfer problem would be possible through the DLT Business Model, proposed by Professor Kaiwen Zhang from ÉTS. This project aims to develop a proof of concept for an experimental mobile fund transfer service using blockchain technology.
Challenge
Ensure that the transfer is fast, reliable and inexpensive. Ensure that a mechanism is put in place to confirm that the deposit was made, either directly to the suppliers identified by the user, or directly to the user. The system must be reliable and fast to gain users’ trust.
What we did
An initial version of the software prototype will allow tests to be done during which the sender transfers funds to a payee without any conditions. In this scenario, the sender receives an acknowledgement of receipt when the payee retrieves the funds.
A second test involves having a sender transfer funds to a third party. This amount is intended for a payee, but requires the consent of the third party before the funds are disbursed.
A third test will allow the sender to send a budget to the recipient, in which the sender can specify to which service provider currently providing services to the third party are the funds assigned or reserved. The third party can thus obtain services from these providers until the budget has been depleted (such as for tuition fees).
Lastly, the final proposed test will validate the budget reallocation function.

Students:
- T. Maketa
- I. Sion
Technologies used:
- Ethereum
- Solidity
- Metamask
- Ganache Truffle Suite
- Python
- Django
- Web3.py
- REST
- HTML
- CSS
- Postgre
- MySQL
Project 2: Automated high-frequency trading
Creation of a semantic extractor to automatically obtain useful information when automated trading decisions are made. The various extractors, which are interchangeable and interconnectable, all generate a buy, sell or wait signal and include a context indicator.
Objective
There is increased interest in automated trading among brokerage firms and investors. They are looking to add information, originating from all types of sources on the web, to improve their investment decisions. To do so, it is difficult for them to obtain, summarize and automate all the information in real time.
We develop standardized collectors for the automated extraction of information from specialized websites (such as MarketWatch, Bloomberg, Reuters), messages from influential experts (e.g., @PaulScolardi, @Burns277, @OptionsHawk), specialized databases (e.g., NasTraq, Taq, OptionsMetrics) and technical analysis algorithms.
See our article in Québec Science magazine (in French).
Challenge
Experiment with various techniques for obtaining data on web pages, as well as various interfaces with different formats and types of APIs to obtain information in real time. Experiment with the potential impact of information on a buy or sell order.
What we did
We use an agile development process that enables short iterations for testing. Here are some interim reports (in French) of feeling analysis in finance (PDF), automated trading signals (PDF) and signal enhancement (PDF).
Currently, our objective is to develop an estimation component of the market trend. Several AI techniques have been tested in the past (see the following articles for more information: 1, 2 and 3). This component must collect market information using the API and predict the trend for the next 2 to 5 minutes.

Project 3: Statistics engine
This project was proposed by Revelate, a young Montreal company specializing in big data in the financial sector. Revelate’s typical clients are stock exchanges, alternative trading systems (ATS), and trading groups in financial institutions. The platform can also be used by compliance departments as well as regulators.
Challenge
Work on huge quantities of stock market data. The first objective consists in optimizing, scaling up and generalizing using Scala/Spark technology, a software prototype that creates stock market statistics such as price gap curves. The second objective is to validate the results and ensure that new estimators can be easily added to the proposed architecture. Eventually, a user will be able to provide their own formulas and the statistics engine will be able to launch the formula and present the results to them automatically. Lastly, the third objective of the project is to create a post-trading analysis module by adding relevant trading-related statistics (i.e., volumes, spreads and volatility realized, slippage, trading profiles, etc.) to the statistics engine.
What we did
A parser was installed in an initial version of the prototype for generating statistical formulas, using “scala.util.pars.combinator,” which creates mathematical grammar and allows the elements of the statistical formulas to be expressed syntactically. Users will therefore be able to use this parser, via a user interface, to create or adapt a formula themselves.
In the second iteration, we developed the Scala code and RDDs to carry out four formulas (Volume, VWAP, VWAS and GK) and performed large-scale tests with them on an Amazon cluster. Finally, in the third iteration, we generated Latex code using Java character strings (that contain a formula), and represented it graphically so that users could visually validate it.




Students:
- Philippe Grenier-Vallée
- Luiz Fernando Santos Pereira
Technologies used:
- Spark 2.0
- Scala
- Java
- Scala Parser Combinators
- JLatexmath
- JSON
- AWS EMR
- Maven
- BitBucket
This project is carried out using Amazon Web Services.