-
Notifications
You must be signed in to change notification settings - Fork 102
Usage
Gabriel Araujo edited this page Sep 11, 2018
·
3 revisions
Open two terminals;
T.1 -> run Gekko on ui mode, or just its webserver:
$node gekko.js --ui
or
$node web/server.js
T.2 -> $cd [japonicus dir]
$python japonicus-run [-g|-b] [-c] [-k] [--repeat <X>] [ [-r|--strat <Strategy>|--skeleton <Skeleton>] [-w]
[main optimization options]
-g for genetic algorithm;
[optional GA methods]
-c to use an alternative ~experimental genetic algorithm internal representation;
[strategy selector]
-r run with random strategy
--strat choose one strat to run;
--skeleton Genetic algorithm create strategies w/ combined indicators on the fly and run 'em. 'ontrend' is the only skeleton available.
[repeat runs]
--repeat to run genetic algorithm X times; then just check evolution.log;
[evolution visualization options]
-w launches a neat dash/flask web server @ your local machine, which can be accessed via webbrowser.
Address is shown on the first line of console output. (likely http://localhost:5000)
-k launches a child gekko instance, so no need for the first terminal;
This is written on python because of the nice DEAP module for genetic algorithm, and was worth it. DEAP is required, available on PIP.
All settings are set at Settings.py;
If your Gekko UI http port is not :3000, adjust it;
Backtesting is parallel, running a pool of five workers, adjustable.
Bayesian optimization is a quick method to get and idea of some strat settings, while Genetic Algorithm is a rather detailed parallel GA method that takes a long run time, on standard settings, to try to get a very good setting set on chosen strat.
Remember to review/set parameter ranges for chosen strategy name on configStrategies.py
.