jihobak / blowfish_quant

Quantitative Trading

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Quantitative Trading

I learn basics of quantitative analysis, from data processing and trading signal generation to portfolio management. Through projects below, I use python to work with historical stock data, develop trading strategies, and construct a multi-factor model with optimization.

Required knowledge

  • python(numpy, pandas)
  • probability & statistics
  • calculus
  • Linear Algebra

Project

  1. Trading with Momentum
  2. Breakout Strategy
  3. Smart Beta and Portfolio Optimization
  4. Multi-factor Model
  5. NLP on Financial Statements
  6. Analyzing Stock Sentiment from Twits
  7. Combining Signals for Enhanced Alpha
  8. BackTesting

Project 1. Trading with Momentum[link]

keyword: stock prices, market mechanics, data processing, stock returns, momentum trading

I implement a momentum trading straegy and test if it has the potential to be profitable. Using historical data, I generate a trading signal based on momentum indicator and perform a statisticla test to conclude if there is alpha in the signal.

Project 2. Breakout Strategy[link]

keyword: quant workflow, outliers and filtering signals, regression, time series modeling, volatility, pairs trading and mean reversion

I code and evaluate a breakout signal. I run various scenarios of your model with or without the outliers and decide if the outliers should be kept or not. I use statistical tests to test for normality and to find alpha.

Project 3. Smart Beta and Portfolio Optimization[link]

keyword: ETFs, Portfolio Risk and Return, Portfolio Optimization

I rebalance the porfolio by calculating the turnover and evaluate the performance of the portfolios by calculating tracking errors.I come up with the portfolio weights by analyzing fundamental data, and by quadratic programming.

Project 4. Multi-factor Model[link]

keyword: Factors Models of Returns, Risk Factor Models, Alpha Factors, Advanced Portfolio Optimization with Risk and Alpha Factors Models

Generating multiple alpha factors, I formulate an advanced portfolio optimization problem by working with constraints such as risk models, leverage, market neutrality and limits on factor exposures.

Project 5: NLP on Financial Statements[link]

keyword: nlp, 10-k financial statements

I did NLP Analysis on 10-k financial statements to generate an alpha factor. For the dataset, I used the end of day from Quotemedia and Loughran-McDonald sentiment word lists.

Project 6: Analyzing Stock Sentiment from Twits[link]

keyword: nlp, sentiment analysis, deep learning, pytorch, social media

I built deep learning model to classify the sentiment of messages from StockTwits, a social network for investors and traders. My model predicts if any particular message is positive or negative. From this, I'm be able to generate a signal of the public sentiment for various ticker symbols.

Project 7: Combining Signals for Enhanced Alpha[link]

keyword: enhanced alpha, machine learning, random forest, overlapping samples.

I combined signals on a random forest for enhanced alpha. I made non-overlapping data from samples to train random trees correctly due to characteristics of financial data. I used the end of day from Quotemedia and sector data from Sharadar.

Project 8: BackTesting[link]

keyword: optimization, transaction cost, attribution, realistic backtest,

I built a fairly realistic backtester that uses the Barra data with computational efficiency in mind, to allow for a reasonably fast backtest. The backtester will perform portfolio optimization that includes transaction costs.I also use performance attribution to identify the major drivers of your portfolio's profit-and-loss (PnL).

About

Quantitative Trading


Languages

Language:Jupyter Notebook 100.0%