Coder Social home page Coder Social logo

christinto / cryptocurrency-backtester Goto Github PK

View Code? Open in Web Editor NEW

This project forked from schandar/cryptocurrency-backtester

0.0 1.0 0.0 151.78 MB

Final project for CS122. Project team members: Shalini Chandar, Michelle Liang, Calvin Chu, JX Xu

Python 92.42% CSS 2.22% HTML 5.36%

cryptocurrency-backtester's Introduction

Cryptocurrency-backtester

CS122 Final Presentation: Building a Cryptocurrency Backtester GROUP MEMBERS: Shalini Chandar, Michelle Liang, Calvin Chu, JX Xu March 12, 2018

In this file you will find a description of the project and of each of the files in the crypto_website folder.

An overview of our project can be found at the following link: https://docs.google.com/presentation/d/1IRw2CAZUggStlQui1iLmNkWGrDhN6cKb3sXao_Freog/edit#slide=id.g2f1c04b915_0_5

Project Description:

Goal: build an interactive cryptocurrency backtester to analyze different trading strategies for cryptocurrencies (or coins)
Based on trading strategies, determine absolute returns, returns relative to a benchmark, and Sharpe ratio
Save best strategies on a leaderboard (ranked by Sharpe ratios)

Trading Strategies Tested:

- Test if the letter a coin starts with influences returns
	- Coins that begin with A may have more exposure
- Analyze a coin’s white paper complexity using NLTK
	- Coins with more complex language in their white paper may have a more advanced development team and a better product
- Reddit subscriber growth and total subscriber at end of period
	- Faster growing subreddits indicate high buyer interest
- Google Trends search volume change over time
	- Increased search volume may lead price movement
- Twitter mentions of various coins on 2018-03-01
	- Increased number of mentions may lead price movement 

Table of Contents:

Note: there is a "ghost" column in many of the CSVs called "Twitter_Mentions". This is here because we initially intended to find day-to-day Twitter mentions data, but eventually were not able to. We did not want to re-generate all of the CSVs, so the values in each of these columns is 1.

  • historical_dfs: folder containing CSVs for coins we were able to get historical price and volume data for (244 coins)

  • All_Coin_dfs: folder of CSVs containing day-to-day Google Trends data

  • reddit_dfs: folder of CSVs containing day-to-day Reddit subscriber data

  • final_coins: folder containing final CSVs for all 250 coins (including all time-dependent data available)

  • whitepaper_pdfs: PDFs of coins' white papers

  • whitepaper_text_files: PDF content in .txt format

  • mysite: folder containing code for Django website

  • predictors: folder containing code for strategy selection/testing application

  • all_data.p: dumped pickle dictionary. Contains data from each coin's JSON file from the CoinMarketCap API

  • unclean_data.p: unclean version of all_data.p

  • backtester.py: contains functions to analyze DataFrames and build backtester (called in views.py in predictors)

  • chromedriver: required to run webdriver from Selenium

  • create_leaderboard.py: contains functions to create strategy leaderboard (called in views.py in predictors)

  • Cryptocoins.csv: contains information (coin name and ticker, specifically) for cryptocurrencies

  • Updated_Cryptocoins.csv: same as Cryptocoins.csv, with corrections to format of some of the coins' names

  • get_data.py: contains functions to generate all of the CSVs/DataFrames.

  • leaderboard.csv: file containing the current strategy leaderboard

  • Static_Params.csv: file containing all the non-time-dependent data for each coin

  • twitter.csv: file containing number of Twitter mentions for each coin on March 1, 2018

  • twitter.py: contains code to count number of Twitter mentions for each coin on March 1, 2018, and export the data to a CSV

cryptocurrency-backtester's People

Contributors

schandar avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.