Laying Out the Foundations for Robust Data Mining

Superalgos releases Beta including data processing capabilities, Telegram announcements and many improvements on the code base.

Julian Molina
Superalgos | Algorithmic Trading
8 min readDec 9, 2019


Image by Yurchanka Siarhei, Shutterstock.

The Superalgos Platform strives to become the most comprehensive trading intelligence and automation platform. As such, the handling of market data in a way that allows for flexible and powerful data analysis is of paramount importance. Such is the focus of this new release.

This new version of the Superalgos Platform sets the foundations on top of which an unprecedented open-source data mining capacity will be built.

But let’s focus on the present time and what this new pre-release brings on the table: the capacity to further process existing data and build new indicators, along with the first few indicators built with these new functionality: Simple Moving Average (SMA), Exponential Moving Average (EMA), Moving Average Convergence/Divergence (MACD) and Relative Strength Index (RSI).

New Indicators: SMA, EMA, MACD & RSI

The above-mentioned indicators are now available to be used from within conditions and formulas in your strategies.

Following the same architecture as with the rest of the indicators and raw market data, indicators are calculated by running bots who store their respective products as datasets in your local machine. That way, data is accessible at the speeds your computer allows and you are always in control of your data.

For the time being, and until the plotters-building feature is released, these new indicators may not be visualized over the charts. This means that, temporarily, only the hard numbers are available. We expect the corresponding plotters to be built soon, within the next two months, along with a few more indicators that should complete a basic trading setup.

Building Indicators and Processing Data

The features that allow traders, analysts and data scientists to process market data from within the platform are surprisingly easy to use. Any person with a mild technical profile, such as a spreadsheets power user or a beginner programmer may create super elaborate data structures taking existing datasets as inputs.

In brief, this is how it works:

  • Existing bots provide raw market data and several indicators that may be used as inputs on top of which your data-processing bot may perform calculations and create new output datasets.
  • Bots are built using a visual environment consisting of a hierarchy of components or elements. Each of these components represents a part of the bot, for instance, its processes, its products, etc. The details on what the bot does are defined by simple configuration snippets and by establishing relationships with the components of other bots, for example, data dependencies.
  • The calculations the bot performs require a minimal level of JavaScript coding skills — the level acquired in a beginner’s online course. Most technical indicators are calculated with ten to twenty lines of code.
  • Creating a new indicator, or adding new properties to existing ones, for example, requires following a linear procedure creating and configuring elements within the visual environment, pretty much as you do with strategies.
The record definition in the Bollinger Bands product.

All of the information on how to use these features is available in the Users Manual.

Telegram Announcements

Also in this release comes a very cool feature that allows setting announcements that your strategies may trigger, and that may be broadcasted to Telegram groups using Telegram bots.

Using the Telegram Announcements feature, you may get notifications of what your strategies are doing, or even share signals with groups of friends, colleagues, or even followers and clients!

Creating announcements.

This is how it works:

  • You set up a Telegram group and a Telegram bot… it’s very easy and no coding is required.
  • Then you create announcements for any of the relevant events of your strategy, for instance, when triggering-on a strategy, when taking a position, when moving a take profit target or stop loss, or when switching management phases.
  • Once any of the events with configured announcements are triggered, the Telegram bot will broadcast a custom message, which may be dynamic, including specific information such as the take position rate or the rate of your targets.

Find all the details on the Telegram Announcements page of the Users Manual.

First Beta Version Release

This constitutes the first beta version release!

This is a great achievement, as the current code base is now a lot more robust and free of most of the early-stage bugs and instabilities. The platform has been trading live with real money for quite a while and we haven’t experienced execution errors.

Main Changes in the New Version

If you are working with the previous version, there are a few changes that you should be aware of. Let’s briefly go through the main changes, but do not worry about making changes in your existing workspaces until we discuss that matter specifically.

Independent Network Hierarchy

The structure corresponding to the Superalgos Network, containing the task managers that control bots is no longer depending on the Definition hierarchy but is now a standalone hierarchy.

As a consequence, testing and trading sessions are no longer associated with a definition by default. This means that you need to link a session to a definition so that the platform knows what trading system the session will be evaluating.

New hierarchies.

New Teams Hierarchies

Bots are built by teams of developers and each team organizes its bots in its own hierarchy. The Masters team holds all the bots existing before this release, while the Sparta team holds the bots corresponding to new indicators.

Jason, the trading bot, is part of the Masters team. The main direct consequence of the current implementation phase is that, whenever a new testing or live trading session is created, the process instance needs to be linked to Jason’s Multi-Period process. This association tells the platform which trading bot the session is running on. At the moment, there is only one trading bot, but in the future, there could be more.

Performance Improvements

Several performance improvements have been made, particularly upon the use of the visual interface. You should notice a significantly smoother and more responsive experience.

Collapsing elements you don’t actively use is now a great way to lower the consumption of resources in your machine.

Keyboard Shortcuts

Keyboard shortcuts in the designer now use the Ctrl (Command in Mac) + Alt key combination to avoid overlapping with Chrome’s native shortcuts.

Time Period Declaration is Now Required

It used to be optional to declare what chart your statements in conditions and formulas referred to. This is now a requirement, as explained in the Specifying the Time Period section of the Syntax Overview page of the Users Manual.

Data Structure of Bollinger Channels and SubChannels Indicator

Changes were made at the level of the data structure of these indicators. As a consequence, downloading the new Data Release is a requirement to upgrade to the new version of the app.

Exchange Keys are Now Parameters of a Session

You will no longer have a set of API keys associated with a specific definition. Instead, Exchange Keys are now set as parameters of the forward testing and live trading sessions.

Upgrading to the New Version

Several things have changed in the internal workings of the platform, one of which requires you to make minor adjustments in your existing strategies. What you may need to do depends on the way you use the platform, so let’s review a couple of scenarios.

In both cases, it would be wise to follow the initial set up instructions provided in the Users Manual to get you back up and running.

If You are Using Existing, Unmodified Open-Source Strategies

Before you upgrade, backup your Exchange Keys.

If you are using the Weak-hands buster or Bull run rider strategies, simply upgrade to the new version of the platform and use the new workspace shipping with the app. In this version, we have included a single workspace combining the two strategies, so that it is easier to trade with both at the same time. If you wish to use one of them only, you should still use the Backup — Workspace — Combined Bull run rider and Weak-hands buster workspace.

You may import the Exchange Keys you backed up before switching to the new version of the platform and connect it to the parameters of your live trading sessions as described in the Enter Your Exchange API Key section of the Trade Live With an Open Source Strategy page on the Users Manual (make sure you delete the empty Exchange Key elements).

If You are Working on a Custom Strategy or Modified Version of Existing Ones

Before you upgrade, backup your definition. You may want to separately back up individual testing sessions (if you have a particular set up), as sessions settings are lost in the upgrade. You may also wish to back up your Exchange Key elements so that you don’t have to create them again.

Once you are running the new version, load the Backup — Workspace — Empty Strategy Structure shipping with the platform and import your definition backup.

This template comes with two empty strategy structures, one for USDT and one for BTC-based strategies. Feel free to delete them or keep them, as you wish.

To run testing or live trading sessions on your definition, you will first need to link the corresponding sessions to your definition, as explained in the Linking Processes and Sessions section of the Advanced backtesting page on the Users Manual.

You also need to set up your Exchange Keys as a parameter of the live trading session. Refer to the Enter Your Exchange API Key section of the Trade Live With an Open Source Strategy page on the Users Manual.

Finally, you will need to review all of your conditions and formulas to incorporate the now required declaration of the time period, as explained in the Specifying the Time Period section of the Syntax Overview page of the Users Manual.

In Both Cases, Upgrade to the New Data Release

As mentioned earlier, you should discard your current data and download the new data release so that your data works well with a change that was made on the structure of the data of the Bollinger Channels and SubChannels indicator. These indicators are used by both of the existing open-source strategies, so downloading the new data is a requirement for the strategies to work.

For New Users…

If you still haven’t tried Superalgos, visit the website.

It’s free, now and forever.

It’s open-source; no one will take it away or gate the access.

It’s trustless. Everything runs in your machine. No need to trust third parties with funds, API keys or strategies.

Joins Us on Telegram

If you haven’t yet, please join us in our Community Telegram. We’d love to hear from you and learn about how you are using the platform. Sharing your feedback, spreading the news and bringing new users goes a long way in supporting the project.



Julian Molina
Superalgos | Algorithmic Trading

I’m a lifelong entrepreneur and co-founder of, a Bitcoin-inspired open-source project crowdsourcing superpowers for retail traders.