gobacktest - event-driven backtesting framework written in golang

  •        489

Heads up: This is a framework in development, with only basic functionality. An event-driven backtesting framework to test stock trading strategies based on fundamental analysis. Preferably this package will be the core of a backend service exposed via a REST API.

https://github.com/dirkolbrich/gobacktest

Tags
Implementation
License
Platform

   




Related Projects

PyAlgoTrade - Python Algorithmic Trading Library

  •    Python

PyAlgoTrade is a Python Algorithmic Trading Library with focus on backtesting and support for paper-trading and live-trading. Let’s say you have an idea for a trading strategy and you’d like to evaluate it with historical data and see how it behaves. PyAlgoTrade allows you to do so with minimal effort.

alphalens - Performance analysis of predictive (alpha) stock factors

  •    Jupyter

Alphalens is a Python Library for performance analysis of predictive (alpha) stock factors. Alphalens works great with the Zipline open source backtesting library, and Pyfolio which provides performance and risk analysis of financial portfolios.Check out the example notebooks for more on how to read and use the factor tear sheet.

Zipline - A Pythonic Algorithmic Trading Library

  •    Python

Zipline is a Pythonic algorithmic trading library. It is an event-driven system that supports both backtesting and live-trading. Zipline is currently used in production as the backtesting and live-trading engine powering Quantopian -- a free, community-centered, hosted platform for building and executing trading strategies.Note: Installing Zipline via pip is slightly more involved than the average Python package. Simply running pip install zipline will likely fail if you've never installed any scientific Python packages before.

Marketstore - DataFrame Server for Financial Timeseries Data

  •    Go

MarketStore is a database server optimized for financial timeseries data. You can think of it as an extensible DataFrame service that is accessible from anywhere in your system, at higher scalability. It is designed from the ground up to address scalability issues around handling large amounts of financial market data used in algorithmic trading backtesting, charting, and analyzing price history with data spanning many years, including tick-level for the all US equities or the exploding crypto currencies space. If you are struggling with managing lots of HDF5 files, this is perfect solution to your problem.

Pyfolio - Portfolio and risk analytics in Python

  •    Python

pyfolio is a Python library for performance and risk analysis of financial portfolios developed by Quantopian Inc. It works well with the Zipline open source backtesting library.Also see slides of a talk about pyfolio.


financial-analysis-python-tutorial - Financial Analysis in Python tutorial

  •    

You can view the video of the talk here. Thomas Wiecki is a Quantitative Researcher at Quantopian Inc -- a Boston based startup providing you with the first browser based algorithmic trading platform -- and a PhD student at Brown University where he studies Computational Cognitive Neuroscience. He specializes in Bayesian Inference, Machine Learning, Scientific Computing in Python, algorithmic trading and Computational Psychiatry.

quantmod - Quantitative Financial Modelling Framework

  •    R

quantmod is an R package that provides a framework for quantitative financial modeling and trading. It provides a rapid prototyping environment that makes modeling easier by removing the repetitive workflow issues surrounding data management and visualization. Ask your question on Stack Overflow or the R-SIG-Finance mailing list (you must subscribe to post).

StockSharp - Algorithmic trading and quantitative trading open source platform to develop trading robots (stock markets, forex, bitcoins and options)

  •    CSharp

StockSharp (shortly S#) – are free set of programs for trading at any markets of the world (American, European, Asian, Russian, stocks, futures, options, Bitcoins, forex, etc.). You will be able to trade manually or automated trading (algorithmic trading robots, conventional or HFT).Available connections: FIX/FAST, LMAX, Rithmic, Fusion/Blackwood, Interactive Brokers, OpenECry, Sterling, IQFeed, ITCH, FXCM, QuantHouse, E*Trade, BTCE, BitStamp and many other. Any broker or partner broker (benefits).

CCXT - A JavaScript / Python / PHP cryptocurrency trading library with support for more than 100 bitcoin/altcoin exchanges

  •    Javascript

CCXT – CryptoCurrency eXchange Trading Library. A JavaScript / Python / PHP library for cryptocurrency trading and e-commerce with support for many bitcoin/ether/altcoin exchange markets and merchant APIs. The CCXT library is used to connect and trade with cryptocurrency / altcoin exchanges and payment processing services worldwide. It provides quick access to market data for storage, analysis, visualization, indicator development, algorithmic trading, strategy backtesting, bot programming, webshop integration and related software engineering.

Lean - Lean Algorithmic Trading Engine by QuantConnect (C#, Python, F#)

  •    CSharp

Lean Engine is an open-source fully managed C# algorithmic trading engine built for desktop and cloud usage. It was designed in Mono and operates in Windows, Linux and Mac platforms. Lean drives the web based algorithmic trading platform QuantConnect.Handle all messages from the algorithmic trading engine. Decide what should be sent, and where the messages should go. The result processing system can send messages to a local GUI, or the web interface.

TechAn - Technical Analysis Library for Golang

  •    Go

TechAn is a technical analysis library for Go! It provides a suite of tools and frameworks to analyze financial data and make trading decisions. Techan is heavily influenced by the great ta4j. It provides Basic and advanced technical analysis indicators, Profit and trade analysis and Strategy building.

JQuantLib - Comprehensive framework for quantitative finance

  •    Java

JQuantLib is a comprehensive framework for quantitative finance, written in 100% Java. It provides "quants" and Java application developers several mathematical and statistical tools needed for the valuation of shares, options, futures, swaps, and other financial instruments. JQuantLib is based on QuantLib, a well known open-source library for quantitative finance, written in C++. JQuantLib aims to be a complete rewrite of QuantLib, offering features Java developers expect to find. It aims to be fast, correct, strongly typed, well-documented, and user-friendly.

gekko - A bitcoin trading bot written in node - https://gekko.wizb.it/

  •    Javascript

The most valuable commodity I know of is information.Gekko is a Bitcoin TA trading and backtesting platform that connects to popular Bitcoin exchanges. It is written in javascript and runs on nodejs.

NowTrade - Algorithmic trading library with a focus on creating powerful strategies

  •    Python

NowTrade is an algorithmic trading library with a focus on creating powerful strategies using easily-readable and simple Python code. With the help of NowTrade, full blown stock/currency trading strategies, harnessing the power of machine learning, can be implemented with few lines of code. NowTrade strategies are not event driven like most other algorithmic trading libraries available. The strategies are implemented in a sequential manner (one line at a time) without worrying about events, callbacks, or object overloading.

catalyst - An Algorithmic Trading Library for Crypto-Assets in Python

  •    Python

Catalyst is an algorithmic trading library for crypto-assets written in Python. It allows trading strategies to be easily expressed and backtested against historical data (with daily and minute resolution), providing analytics and insights regarding a particular strategy's performance. Catalyst also supports live-trading of crypto-assets starting with four exchanges (Binance, Bitfinex, Bittrex, and Poloniex) with more being added over time. Catalyst empowers users to share and curate data and build profitable, data-driven investment strategies. Please visit catalystcrypto.io to learn more about Catalyst. Catalyst builds on top of the well-established Zipline project. We did our best to minimize structural changes to the general API to maximize compatibility with existing trading algorithms, developer knowledge, and tutorials. Join us on the Catalyst Forum for questions around Catalyst, algorithmic trading and technical support. We also have a Discord group with the #catalyst_dev and #catalyst_setup dedicated channels.

Clairvoyant - Software designed to identify and monitor social/historical cues for short term stock movement

  •    Python

Using stock historical data, train a supervised learning algorithm with any combination of financial indicators. Rapidly backtest your model for accuracy and simulate investment portfolio performance.During the testing period, the model signals to buy or sell based on its prediction for price movement the following day. By putting your trading algorithm aside and testing for signal accuracy alone, you can rapidly build and test more reliable models.

qsforex - QuantStart Forex Backtesting and Live Trading

  •    Python

QSForex is an open-source event-driven backtesting and live trading platform for use in the foreign exchange ("forex") markets, currently in an "alpha" state. It has been created as part of the Forex Trading Diary series on QuantStart.com to provide the systematic trading community with a robust trading engine that allows straightforward forex strategy implementation and testing.

MyOpenTrader - Complex-event based trading engine

  •    Java

MyOpenTrader is (yet another) a complex-event based open-source trading-engine. It is built from ground up as a parallel computing engine, which allows to do large scale parallel backtesting. It really helps if you have an active Interactive Broker Account and want to automate some of your trading.

BitBot - BitBot is a Crypto-Currency trading bot and backtesting platform written in Node.JS

  •    Javascript

BitBot is a Crypto-Currency trading bot and backtesting platform that connects to popular Bitcoin exchanges (Bitstamp, Kraken). It is written in javascript and runs on Node.JS. BitBot is modular and supports multiple trading strategies / exchanges.

algo-coin - Algorithmic trading cryptocurrencies across multiple exchanges

  •    Javascript

Algorithmic Trading Bitcoin. Lightweight, extensible program for algorithmically trading cryptocurrencies and derivatives across multiple exchanges.