Built the website you are currently on to display my portolio. The website was built from scratch and is hosted on my server using Apache and MariaDB.
Quantitative Condor Analytical System (QCAS) : qcas
This project is a continuation from my final project (Using Geometric Brownian Motion to Model Options Strategies : MATH351) for Mathematical Modeling. QCAS determines the optimal market-wide Iron Condor option trades using statistical analysis, probability theory, and machine learning. By integrating real-time market data, historical trends, and volatility patterns, QCAS provides high-probability Iron Condor setups with the best expected long term profits.
Automated Support/Resistance Levels for Forex : support_resistance_kmeans
This project uses a kmeans unsupervised clustering algorithm from sklearn in Python to automatically detect support and resistance levels for all major and minor forex pairs on multiple timeframes: 1 week, 2 weeks, 1 month, 3 months, and when price was 4% below current market price. Plots are then generated using mplfinance to visualize the levels. All of the market data is pulled from Oanda using their API for live/demo accounts.
Customized Configuration and Install Script for VIM : vim_configuration
The goal of this project was to create an all-in-one repository that includes all the files necessary to install and configure vim to ones liking as easily as possible. To perform the install and configuration process, a portable Bash script was written that automates the process for the user with all the necessary files already included in the repository. Simply run the script, and the user will be prompted to select their desired color mode, colorschemes, plugin manager, plugins, and their available configurations. Everything will be automatically installed and configured as selected.
Lightweight System Information Fetcher for Linux : lightfetch
A lightweight system information fetcher for Linux. Written in Bash. Uses built in shell commands and does not rely on external commands such as bc, awk or sed for better portability.
Lightweight Directory Information Fetcher for *Nix : dirfetch
A lightweight directory information fetcher for *nix. Written in Bash. Uses built in Bash commands and does not rely on external commands such as bc, sed, or awk for better portability.
A simple Bash script that automatically backs up all of your personal github repositories (private and public) to your local machine. For use on any linux machine.The lightweight script only uses built in bash commands for better portability.
My senior undergraduate project under the Mathematics department at Walla Walla University (Required for a B.S. in Mathematics). The project consisted of three parts, a poster presentation, a slideshow presentation, and an academic research paper. The project tackles the challenge of dimensionality in machine learning through the use of an explicit manifold learning algorithm with a primary objective in reducing both computational time and storage requirements. By incorporating a polynomial mapping assumption, the algorithm simplifies complex datasets before their utilization in machine learning processes. This approach not only enhances the representation of intricate data structures compared to traditional linear mapping methods but also ensures the practical applicability of the algorithm through the production of an explicit model. The computational time and storage requirements with the reduced dataset produced by the manifold learning algorith are compared on various machine learning algorithms for both training data and labeling of out of sample data. The manifold learning algorithm itself was written from scratch in C++ using Eigen3 for matrix operations and OpenMP for parallel programming. The machine learning portion was written in Python.
Using Geometric Brownian Motion to Model Options Strategies : MATH351
Using Geometric Brownian Motion and historical volatily patterns, a stochastic simulation of possible price paths a given asset can take over a given time interval is performed. A Log-Normal distribution is compiled from the final prices at the end of the time interval which is used to model an optimal options strategy. Since the resulting distribution gives information on the probability of the asset being in a certain price interval over a given time period, an iron condor options strategy makes the most sense for this model. The optimal iron condor strategy for a given asset is determined by calculating the expected value of the trade based on potential profit/loss, and the probability of winning the trade which comes from the compiled ending price distribution. This analysis is performed on a variety of assets that are deemed to be optimal for iron condor trades to determine the market-wide optimal iron condor trade. This project was written in Python.
Forward Automatic Differentiation With Optimization Algorithms : MATH319_final
This project combines Forward Automatic Differentiation, which was built from scratch in Python, with optimization algorithms such as Steepest Descent on various functions, which were implemented from scratch in R.
Stock Trading Bot and Technical Indicator Computations : CSCI261_final_project
This project, written in C++, computes a number of technical indicators for a given stock asset. The user uploads a CSV file containing daily stock data and based on this data the program then calculates various technical indicators such as RSI, SMA, EMA, and MACD. This data is then written to another CVS file, which can be used to decide when to open or close trades.