All Projects → nicolay-zlobin → gekko-batcher

nicolay-zlobin / gekko-batcher

Licence: MIT license
Batch backtest tool for Gekko.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to gekko-batcher

awesome-tradingview
Curated list of noteworthy TradingView Strategies, Indicators and Alert Scripts for Trading Bots (PineScript)
Stars: ✭ 173 (+408.82%)
Mutual labels:  trading, backtesting
CryptoStupidity
Проект по обучению ручной и автоматической торговли криптовалютами.
Stars: ✭ 22 (-35.29%)
Mutual labels:  trading, gekko
binance-downloader
Python tool to download Binance Candlestick (k-line) data from REST API
Stars: ✭ 44 (+29.41%)
Mutual labels:  trading, backtesting
aku
Aku - Toy Backtesting/Trading Engine
Stars: ✭ 27 (-20.59%)
Mutual labels:  trading, backtesting
autoxd
A股回测框架, 模拟实盘账户交易, 适合编写T+0策略
Stars: ✭ 71 (+108.82%)
Mutual labels:  trading, backtesting
Stocksharp
Algorithmic trading and quantitative trading open source platform to develop trading robots (stock markets, forex, crypto, bitcoins, and options).
Stars: ✭ 4,601 (+13432.35%)
Mutual labels:  trading, backtesting
SierraChartZorroPlugin
A Zorro broker API plugin for Sierra Chart, written in Win32 C++.
Stars: ✭ 22 (-35.29%)
Mutual labels:  trading, backtesting
gym-mtsim
A general-purpose, flexible, and easy-to-use simulator alongside an OpenAI Gym trading environment for MetaTrader 5 trading platform (Approved by OpenAI Gym)
Stars: ✭ 196 (+476.47%)
Mutual labels:  trading, backtesting
roq-samples
How to use the Roq C++20 API for Live Cryptocurrency Algorithmic and High-Frequency Trading as well as for Back-Testing and Historical Simulation
Stars: ✭ 119 (+250%)
Mutual labels:  trading, backtesting
backtrader template
Basic template for managing Backtrader backtests.
Stars: ✭ 131 (+285.29%)
Mutual labels:  trading, backtesting
gdax-ohlc-import
Import historical OHLC data from GDAX
Stars: ✭ 26 (-23.53%)
Mutual labels:  trading, backtesting
reactive-trader
In the coming weeks this plans to become a Gekko plugin that reacts to market changes, finding and running only the most profitable strategies.
Stars: ✭ 91 (+167.65%)
Mutual labels:  trading, gekko
AI-for-Trading
📈This repo contains detailed notes and multiple projects implemented in Python related to AI and Finance. Follow the blog here: https://purvasingh.medium.com
Stars: ✭ 59 (+73.53%)
Mutual labels:  trading, backtesting
Backtrader
Python Backtesting library for trading strategies
Stars: ✭ 7,846 (+22976.47%)
Mutual labels:  trading, backtesting
bitfinex-ohlc-import
Imports historical OHLC data from Bitfinex
Stars: ✭ 27 (-20.59%)
Mutual labels:  trading, backtesting
dukascopy-tools
✨ Download historical price tick data for Crypto, Stocks, ETFs, CFDs, Forex via CLI and Node.js ✨
Stars: ✭ 128 (+276.47%)
Mutual labels:  trading, backtesting
TradeBot
Crypto trading bot using Binance API (Java)
Stars: ✭ 292 (+758.82%)
Mutual labels:  trading, backtesting
TAcharts
Apply popular TA tools and charts to candlestick data with NumPy.
Stars: ✭ 131 (+285.29%)
Mutual labels:  trading, backtesting
volatile
Volatile: your day-to-day trading companion.
Stars: ✭ 53 (+55.88%)
Mutual labels:  trading
SlimTrade
A trade macro overlay for the game Path of Exile
Stars: ✭ 78 (+129.41%)
Mutual labels:  trading

Backtest tools for Gekko

CLI tool helps to put together testing and optimizing strategies that extend the Gekko's Trading Bot capabilities – and thus you may get the most of it, and see what combinations were the best and the worst backed up by statistics.

The results appear in a CSV report file. It provides key statistics describing the overall performance of the selected strategies over the chosen historical timing of the simulation.

It uses Gekko's API, one gekko instance running required only.

Tools

  • Batcher – batch backtest tool for multiple strategies and pairs.
  • Bruteforce – run all possible parameter combinations for specific method with given ranges for strategy optimization.
  • Importer – allow you to import multiple datasets thick and fast

You can set up multiple…

Strategies / Trading Pairs / Candle sizes / History sizes / Dateranges / Range of strategy config's parameters (BruteForce)

Features

  • Ability to set up the priority of where to get method's config (be it TOML, gekko's config.js or gekko-batcher's config itself)
  • Generating all possible combinations of configs for backtests and shuffle it
  • Multithreading
  • Exporting results to CSV file
  • Evaluating approximately remaining time

Requirements

  • Node.js
  • Gekko trading framework

Before start

In Gekko's folder

  1. npm install – first, you need to install dependencies.
  2. Download all candles data you need via the importer.
  3. node gekko --ui – start Gekko in ui mod.
  4. cp sample-config.js config.js – just copy sample-config.js like this. Strategy settings will be taken from here.

Additional:

Increase server.timeout at /gekko/web/server.js to avoid a timeout error if the strategy runs for a long time. For example, this happens for small sized candles.

In Batcher's folder

  1. npm install
  2. cp sample-config.js config.js – don't forget to create config file as well.
  3. Set up everything you need in config.js and you are ready to go.

Start

After all the above you can start tools by running one of the following in your terminal:

node batch -c config.js – to start Batcher

node bruteforce -c config.js – to start Bruteforce

node import -c config.js – to start Importer


You can find results in the results folder after backtests. Take a look of Sample file output

🎥 Gekko Trading Bot - Gekko Batcher - YouTube – watch a video review of these tools.

🗒️ [RU] Gekko-batcher — тестирование и оптимизация торговых стратегий


Contributing

Forks and stars are highly welcome.

For bugs and feature requests, please create an issue.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].