GithubHelp home page GithubHelp logo

viktorm01 / cryptocurrency_portfolio_optimization Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 1.0 527 KB

A project to optimize cryptocurrency trading strategies with backtesting

Jupyter Notebook 100.00%

cryptocurrency_portfolio_optimization's Introduction

Cryptocurrency Portfolio Optimization

Initially, the goal of the project was to create an algorithm using machine learning to compile an optimal portfolio of digital assets. An algorithm was proposed for predicting the value of a cryptocurrency for the next day and correcting it for the next day. However, the task of predicting the value of cryptocurrencies the next day turned out to be extremely difficult. As a result, the developed algorithms showed a stable minus. As a consequence, the task of the project was simplified to testing existing strategies. We looked at 3 main strategies and 2 additional ones. The first strategy was to buy and hold bitcoin. This strategy was chosen as a benchmark because it was the easiest investment to buy and hold a coin. Therefore, we compared other strategies with it. The second strategy was to buy bitcoin and ethereum in equal proportions and keep balancing every day. The third strategy was to buy the top 10 most capitalized currencies and keep rebalancing every day. As 2 additional strategies, there is a similar third algorithm, but for the top 5 and top 10 by cryptocurrency capitalization. Rebalancing is a strategy that involves buying and selling assets to maintain a given proportion. All strategies take into account that a commission for the purchase of 0.025% is collected.

Sharpe ratio, Sortino ratio, maximum drawdown percentage and profitability were used as measures for comparing investment instruments. As a result of evaluating portfolio formation strategies, the best was to buy bitcoin and ethereum in equal shares with daily rebalancing to maintain a given ratio.

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.