The Project covers a short term trading strategy using Hurst exponent to segment the data and then built trading models over that. Detailed paper can be found here: http://ssrn.com/abstract=3824032
The strategy was explored for four different assets:
- S&P 500 Index: Representative of a mature market
- SSE Composite: Representative of a developing market
- Gold: Mature commodity market
- Bitcoin (USD): emerging markets for cryptocurrencies
Under the "Dev" folder there are four different folders for each of above assets. Within the folder, there are four sub-folders as described:
- Codes: Containes Jupyter files (Python) whose name explains the code inside. The codes cover the whole spectrum; downloading data, hurst exponent calculation, segmentation, feature engineering, Grid search (GBM, RF, and XgBoost) and generate trading strategy results
- Data: Stores the data output of the codes. Name of csv files are self-explanatory
- Images: Stores the png images generated by codes (for reference, and documentation). Same images can also be found in the Jupyter notebooks
- Models: Store the "pickled" version of the selected models based on Grid Search
Libraries required for running this project:
- pandas_datareader.version = 0.8.1 (https://pandas-datareader.readthedocs.io/en/latest/)
- pandas.version = 1.0.1 (https://pandas.pydata.org/)
- numpy.version = 1.18.1 (https://numpy.org/)
- matplotlib.version = 3.1.3 (https://matplotlib.org/)
- yfinance.version = 0.1.54 (https://pypi.org/project/yfinance/)
- scipy.version = 1.4.1 (https://www.scipy.org/)
- hurst.version = 0.0.5 (https://pypi.org/project/hurst/)
- sklearn.version = 0.22.1 (https://scikit-learn.org/stable/)
- ta.version = 0.7.0 (https://pypi.org/project/ta/)
- pickle (https://github.com/python/cpython/blob/3.9/Lib/pickle.py)
- os (https://docs.python.org/3/library/os.html)