Programming. Machine Learning. Quantitative Trading. Computer Science.
These are some of my projects. I've only included some highlights here but if you'd like to see more, take a look at my github.
A magical, omnipotent note-taking tool for students everywhere.
Won 2nd place at York's largest hackathon, CTRL+HACK+DEL.
Gamify waste management with real-time object recognition and make eco-friendly choices fun and easy!
Won sustainability theme at UTSC Hack the Valley 9.
Led a 6-member (now 3) team with $4K+ asset under management. Utilized Python, C, Express.js, MySQL, Next.js, Prisma, TypeScript, and tRPC (now Nuxt.js, Vue.js, PostgreSQL). Achieved 2x market benchmark, 467.94% backtesting (2020-present), a Sharp Ratio of 4.03, and a Batting Avg of 57.85%.
CSC258 final group project. Created Tetris game with MIPS assembly. Before this, we had 7 assignments with Logism.
We used Saturn IDE developed by UofT TA.
Easy features:
- Gravity
- Speed of gravity increase gradually
- Pause
- Different colours of tetrominoes
Hard features:
- Full set of tetrominoes
- Full row, will lead to powerup of clearing all that row. This may happen simultaneously for multiple rows for those who are full.
Hackathon project made within 2 days.
What is Debate Me?
Join the conversation and sharpen your debate skills with Debate Me. Whether you're a seasoned debater or just getting started, Debate Me offers an immersive platform to engage in meaningful discussions and hone your communication abilities.
Made a Pokemon game with Java, Maven, and Swing. Pokémon Battle Simulator allows players to engage in exciting turn-based battles using various Pokémon. The simulator is designed to provide a realistic and engaging Pokémon battle experience, complete with different moves, strategies, and outcomes.
In this assignment, I worked on image data manipulation using Python. I explored the use of various functions and data types in Python, debugged a small Python program, and practiced simple image manipulations such as cropping and applying colour filters.
The focus of this assignment was on predicate logic and wordle. I utilized predicate logic, if statements, and tabular data to simplify if statements and prove mathematical statements. Additionally, I modeled a new problem domain using definitions that translate to Python functions.
This assignment involved working with loops, mutation, and applications such as chaos, fractals, and point sequences. I utilized data classes, loops, and mutation in data analysis, sentiment analysis, and interactive visualizations of 2-D point sequences.
In this assignment, I delved into number theory, cryptography, and algorithm analysis. I worked on proving mathematical statements, analyzing the running time of functions, and extending the RSA public-key cryptosystem.
In this assignment, I worked on conceptual application of linked lists to a popular and novel area of computing: blockchain and cryptocurrencies.
Worked on two-player variation of Wordle called Adversarial Wordle with implementation of artificial intelligence. I applied fundamental application of trees: representing the state of a system, and branching decisions that lead from one state to another.
Using graph abstract data type, I worked on the problem domain of interconnection networks. The assignment involved Ring topology, Torus topology, Star topology, and Routing Algorithms like Shortest-Path Ring Network, Shortest-Path Torus Network, and Shortest-Path Star Network. Finally, I worked on Interconnection Network Discrete-Event Simulation and Greedy Channel Routing Algorithm as well as Greedy Path Routing Algorithm.
Uses a tree data structure to identify the promising factors and the most likely companies to invest in and utilize the backtesting approach to determine the profitability of the investments. Click the image to check the code on GitHub. You can also try the program and check the formal LaTeX documentation.
All the lectures, assignments, study notes I took at the University of Toronto.
I used React and Node.js to make a simple textbook recommendation webpage.
These are some of the skills I have acquired through formal learning, and necessity for side projects. I tend to pick up new languages and frameworks very quickly when I use them in the real world for projects. Click each skill for more information.
I learned Python in CSC110: Foundations of Computer Science I and CSC111: Foundations of Computer Science II at the University of Toronto, and back in high school at Silverthorn Collegiate Institute.
I learned basic Java on my own for Minecraft server project. I will be formally learning Java again in coming second year.
I learned Kotlin on my own for CSC207: Software Design at the University of Toronto. During this course, my team and I developed BinoculaRSS, an Android RSS reader.
I learned Jetpack Compose along with Kotlin on my own for CSC207: Software Design at the University of Toronto. During this course, my team and I developed BinoculaRSS, an Android RSS reader.
I learned Android development on my own for various school projects and my own ideas. Some of my Android applications include BinoculaRSS, an RSS reader; Sticky, an sticky note scanning and organization app; and ReadingLight, a reading light app.
I learned shell scripting on my own to help fix small problems around my operating system, after I switched to Arch Linux as my full time operating system on both my desktop and laptop. Some of my projects that include shell script are HASS, my config installation script; latex-copy, some script so make using latex on non-supporting platforms less painful; and dotfiles, the scripts folder of my dofiles repository.
I learned HTML in high school at Silverthorn Collegiate Institute.
I learned CSS in high school at Silverthorn Collegiate Institute.
I learned JavaScript in high school at Silverthorn Collegiate Institute.
I learned LaTeX to help writing notes, problem sets, assignments, and papers. My notes from my time at the University of Toronto are available here.
I learned Git to level up my development skills. I use it on a day-to-day basis. Take a look at my GitHub and GitLab.
I learned R in STA247: Probability with Computer Applications.
I learned C in CSC209: Software Tools and Systems Programming.
I learned TypeScript on my own to better my web development skills. I've developed several applications with TypeScript, including AlphaStone.
I learned React, Next.js, Nuxt.js, and Vue.js and utilized these technologies (now using Nuxt.js/Vue.js) to create websites like AlphaStone.
I am a Computer Science student at the University of Toronto St. George campus. I'm interested in machine learning and quantitative finance.
My interest in computers sparked when I immigrated to Canada in 2014. What started as a fun hobby playing Minecraft with friends quickly turned into developing a large-scale skill-based RPG server with a community of over 200 members on Discord and running YouTube. During this time, I managed a team of seven developers and operations personnel. This experience fueled my passion for programming, and I began learning Unity game development with Visual Scripting. I academically studied Turing, HTML, CSS, JS, and Python. Although I dabbled in Java and C# in earlier days, Python is currently one of my strongest abilities, especially when it comes to mathematical and theoretical computer science.
After enrolling at the University of Toronto, I decided to pursue a specialization in Computer Science with a focus on Artificial Intelligence. The completion of Foundations of Computer Science I and II (DSA and OOP) significantly improved my proficiency in Python, but my desire to learn more has only grown. One of my most significant and longest-running projects to date is quantitative finance. The project relies on looking for short-term anomalies in the stock market and trading them off appropriately. I am currently developing this tool with an eye toward potential business applications. This project holds special importance for me as it embodies the fusion of my technical expertise and entrepreneurial aspirations. You can explore all my work in the projects section.