Bruteforce node app
#1
I really liked the Perl tool xffffffff wrote but it uses sqlite for a few things which caused me issues so I wrote my own bruteforce backtester in node. It's not elegant but it's pretty powerful and runs backtests in parallel across the Gekko API.

From the read.me:

Gekko Warez Bruteforce Backtester
A swiss army nodejs brute force backtester for Gekko trading bot. Saves time so you can spend more time looking good.
Here's what you can do:

  1. Set multiple history periods

  2. Set multiple candle sizes

  3. Set multiple strategies

  4. Set multiple exchange and trading pairs

  5. Set random ranges for each strategy config

  6. Writes all outputs and strategy configs out into a csv so you can review what strat and related settings are going to make you the most cold hard crypto
Installation: (You can install Bruteforce wherever you like)
git clone https://github.com/gekkowarez/bruteforce.git cd bruteforce npm install
Setup: Open bruteforce.js and setup paths and configs from line 20. Instructions are in the doc. If you keep the resultCsv path the same make a "results" folder in the same place you installed the repo.
To run:
You must have the Gekko api server running so type the following into a console: node gekko --ui
Then type the following to run the bruteforce app: node bruteforce.js


https://github.com/gekkowarez/bruteforce
  Reply
#2
Nice to see people building backtesting tools. How much power does this one need as Gekkoga is fairly lightweight others need a bit more juice
  Reply
#3
This is just running as many different backtests as you tell it in parralel. It's fundamentally based on gekkoga, it is also not trying to find the ultimate combo, it will run forever. I use it as a pointer for new strategies rather than for pure optimization. For that I use gekkoga if I feel it's necessary.
  Reply
#4
IF its like gekkoga but wil all combo print outs its a great little tool. i will give it a test this weekend.
  Reply
#5
Morning thegamecat,

Struggling to get this to work, i'm not a coder at all, its giving me a throw error but thats its. the only think i can think of is the following are not correct can you advise...

//where are your gekko strategies?
var strategiesFolder = 'Gekko\gekko\strategies';
//where is your config? - by config what do you mean?
var configFile = 'Gekko\gekko\bruteforce\bruteforce.js';
  Reply
#6
hi that looks good
i try the perl version first but thanks alot
very nice contribution
  Reply
#7
(05-06-2018, 07:10 AM)Kris191 Wrote: Morning thegamecat,

Struggling to get this to work, i'm not a coder at all, its giving me a throw error but thats its. the only think i can think of is the following are not correct can you advise...

//where are your gekko strategies?
var strategiesFolder = 'Gekko\gekko\strategies';
//where is your config?                                                                     - by config what do you mean?
var configFile = 'Gekko\gekko\bruteforce\bruteforce.js';

var strategiesFolder = '../gekko/strategies/'; //this is where your strats are
var stratFilesPath = '../gekko/strategy_files/'; //I've started taking a copy of the strat at the start of each brute force so i can always find the strat that was responsible for good setting
var configFile = '../gekko/config-backtester.js'; //this is your "normal" gekko config you use with cli
var apiUrl= "http://localhost:3001";
  Reply


Forum Jump:


Users browsing this thread: