HKU-TDLEG

Menu

  • Home
  • Clojure Heap
  • Data Processing Domain-Specific Language in Clojure
  • Delta Hedging With Clojure Backtesting Library
  • Development of Heap Structure for Data Storage and Output in Clojure
  • Exploring the Signaling Effect of Equity Offering in Venture Capital Investment
  • HKU-TDLEG Website Development
  • WeJure: A Decentralized Social Network on the Blockchain

TDLEG Undergraduate Research at HKU

This website showcases the TDLEG research projects of undergraduate students at the University of Hong Kong (HKU). TDLEG is the Teaching Development and Language Enhancement Grant 2019-22 of PI Dr. Matthias Buehlmaier (HKU) and Co-I Prof. Dr. Gregor Dorfleitner (University of Regensburg). The TDLEG title is: "Creating a Domain-Specific Language for Data Science in Clojure With Applications in Finance."

Project List

Clojure Heap

Contributor: Grace ZHONG Yanting

As one of the most important data structures in programming, heap or priority queue could be used to force the order of outputs. A Clojure wrapper of java.util.PriorityQueue would be provided in this project, including basic APIs such as init, add, pop, etc.

  • Poster
  • Virtual poster presentation (video)
  • Blog posts (reflective journals) and project page
  • Research proposal
  • Research report
  • GitHub repository

Data Processing Domain-Specific Language in Clojure

Contributor: Parry CHOI Chong Hing

Domain Specific Language (DSL) is a computer language, declared syntax or grammar that is specialised to a specific application. In contrast to General-Purpose Language, implemenation of DSL is designed with specific goals in that application domain. The use of macros in Lisp dialects enables developers to rewrite source code at compile time, making implementation of DSL more convenient. As one of the Lisp dialects, Clojure also inheriates such advantage. In addition to macros, the heavy use of core data literals in Clojure also gives an extensive developing opportunity in implementing DSLs.

In this project, a DSL extension to the existing data processing library, tech.ml.dataset, will be developed. A generic query using core data literal serves as the foundation of the DSL. This enables huge flexibility in defining the syntax, subject to Clojure’s limitation.

  • Poster
  • Virtual poster presentation (video)
  • Blog posts (reflective journals) and project page
  • Research proposal
  • Research report
  • GitHub repository

Delta Hedging With Clojure Backtesting Library

Contributor: Cindy WANG Xizhuo

Construct a delta hedging strategy using the backtesting library in Clojure. Optimize the calculation of delta based on data science methods. Generate return results and use them for comparison.

  • Poster
  • Virtual poster presentation (video)
  • Blog posts (reflective journals) and project page
  • Research proposal
  • Research report
  • GitHub repository

Development of Heap Structure for Data Storage and Output in Clojure

Contributor: ZHU Jiarui

Heap is a kind of efficient data storage structure, especially in the representation of priority queues. So it is a good choice for data logging, sorting and output.

Existing implementations are mostly based on index operations in vectors, rather than the real tree structure. This kind of structure cannot meet the requirements for efficient computing.

In this case, we need a maximum/minimum heap implementation scheme that is more in line with the characteristics of the heap.

  • Poster
  • Virtual poster presentation (video)
  • Blog posts (reflective journals) and project page
  • Research proposal
  • Research report
  • GitHub repository

Exploring the Signaling Effect of Equity Offering in Venture Capital Investment

Contributor: LIN Maoran

This project will explore the impact of firms’ equity offering decisions in venture capital deals with the theory of signaling game. It will assess the signaling effect of equity offer by reviewing the mathematical model proposed in Gibbons (1992) and analyzing the empirical data.

  • Poster
  • Virtual poster presentation (video)
  • Blog posts (reflective journals) and project page
  • Research proposal
  • Research report
  • GitHub repository

HKU-TDLEG Website Development

Contributor: Kevin ZHANG Wenkai

Developing a website can be hard, but tools make it easier. In this project, a static website development tool based on Clojure, Cryogen, will be used to develop the HKU-TDLEG website. The contributor will explore the features and advantages of Cryogen, and try to develop a professional blog website recording the progress of all contributors' work.

  • Poster
  • Virtual poster presentation (video)
  • Blog posts (reflective journals) and project page
  • Research proposal
  • Research report
  • GitHub repository

WeJure: A Decentralized Social Network on the Blockchain

Contributor: Oscar Jay LEW

Social networks such as Twitter, Facebook, or Instagram are centralized in the sense that a single company runs them and stores all user data and user content centrally. While this allows for easier storage, the data generated largely belongs to the company and not the users. This issue is highlighted by the recent debate about content moderation. To tackle this issue from a new perspective, we develop a decentralized social network that uses the the decentralized "interplanetary file system" (IPFS) and runs on a blockchain.

  • Poster
  • Virtual poster presentation (video)
  • Blog posts (reflective journals) and project page
  • Research proposal
  • Research report
  • GitHub repository

Copyright © 2022 HKU-TDLEG

Powered by Cryogen