This project is not maintained anymore.

After many years of working on Gekko, I’ve decided to stop my involvement in maintaining this project. You can read more about this decision on medium.

I’m now putting all my focus on my new prop trading firm Folkvang. You can find an article about that here on Coindesk.

If you’re interested in following this new journey, feel free to add me on Twitter.

Best of luck to everyone in their trading. So long, and thanks for all the fish!

Fork me on GitHub

Plugins #

A plugin is a low level module or plugin that can act upon events bubbling through Gekko. If you want to have custom functionality so that your rocket flies to the moon as soon as the price hits X you should create a plugin for it.

All plugins live in gekko/plugins.

Note that in order to use custom plugins, you have to run Gekko over the commandline.

Existing plugins: #

And more! Take a look in the gekko/plugins folder.

Implementing a new plugin #

If you want to add your own plugin you need to expose a constructor function inside plugins/[slugname of plugin].js. The object needs methods based on which event you want to listen to. All events can be found in the events page.

You also need to add an entry for your plugin inside plugins.js which registers your plugin for use with Gekko. Finally you need to add a configuration object to sample-config.js with at least:

config.[slug name of plugin] = {
  enabled: true
}

Besides enabled you can also add other configurables here which users can set themselves.

That's it! Don't forget to create a pull request of the awesome plugin you've just created!