Research and final application made for the MIE479 Capstone project. This repository contains all research done for the development of a Cryptocurrency and SPY portfolio optimizer.
This application requires Python 3.9+ and the Anaconda python package manager in order to install and manage the relevent dependencies.
If you already have conda installed, you can skip this section.
Anaconda can be installed from its website with different versions depending on your operating system:
After following the directions, conda should be installed and functioning on your system.
After downloading all the code and placing the repository in a location of your choice, open up a terminal window and navigate to the directory where the repo is located.
Folders such as CVaR, Crypto Data and Factor Research should be visible.
Run these commands in terminal:
conda env create -f ./Set_Up/environment.yml
conda activate raf-sam-kelvin
To get the rest of the necessary packages, run:
python setup.py
To run the GUI, run the command:
python GUI/Good_Layout.py
Make sure that your Matplotlib version is 3.5.3. If it is not, you can use the following commands to make it so:
pip uninstall matplotlib
pip install matplotlib=3.5.3
- Sam Gaskin (GH: SGaskin7)
- Kelvin Wallace (GH: kjwallace)
- Rafay Kalim (GH: rafayk7)
- Professor Roy Kwon
- David Islip
- So our main UI is in the
GUIfolder in the file Good_Layout.py. - The main backtester it calls is in
FactorResearch\backtesting\backtesting.py. - Most optimization functions and predictors are saved in
FactorResearch\backtesting\util.py. - All CVaR functions are saved in
FactorResearch\backtesting\Series_CVaR.
