The design space controlling the workspace, nodes, structures of nodes, and their parent-offspring relationships are the overarching concepts arranging all information handled by the system.

Trading intelligence emerges from the effective use of information, strategies, technical resources, visualization tools, infrastructure, workflows, collaboration, and several other concepts.

Superalgos structures these concepts in an attempt to make their use intuitive and efficient. However, each of the above are complex subjects in their own merit. The quest for the effective use of several complex concepts is titanic.

Therefore, it is necessary to acquire a basic level of understanding of the Superalgos paradigm for the desired intuition to emerge. Understanding the following concepts is a first step in that direction.

Design Space

The design space is the visual environment that features all the information available to the system and the user, and that enables users to exert control over the whole system. You may think of the design space as your desktop.

In practical terms, the design space is the portion of the system you access when you pull up the sliding panel, hiding the charts in the process.


The workspace is the entity storing all user-generated information, as well as the data structures embodied in the following hierarchies: crypto ecosystem, charting space and network.

The workspace contains:

The workspace is not part of any of the hierarchies; instead, it contains them.

Click to learn more about workspaces

Configuring the Workspace

Select Configure Workspace on the menu to access the configuration.

"includeDataMines": ["Masters", "Sparta", "TradingEngines"],
"includeTradingSystems": ["Sparta-WHB-BTC-USDT", "Masters-WHB-ETH-USDT", "Sparta-BRR-BTC-USDT"],
"includeSuperScripts": ["Masters"]
  • includeDataMines determines which data mines shall be included in the design space, other than those you may have created. Data mines may be loaded from the Data-Mines folder in the root of the Superalgos installation.

  • includeTradingSystems determines which trading systems shall be included in the design space, other than those you may have created. Trading systems may be loaded from the Trading-Systems folder in the root of the Superalgos installation.

  • includeSuperScripts determines which super scripts shall be included in the design space, other than those you may have created. Super scripts may be loaded from the Super-Scripts folder in the root of the Superalgos installation.


A node is a small data structure containing information which may be related to market information, trading intelligence, the operation of the system or other concepts. They are visually represented by icons on the workspace.

Structure of Nodes

Nodes may be chained together forming structures of nodes. In every structure of nodes there is a parent node with offsprings. That is, a structure of nodes is a data structure composed of any node and its offspring.

As a consequence, structures of nodes are hierarchical structures, and a logical representation of how the concepts embodied by each node relate to each other.

Click to learn more about nodes

Parent-Offspring Relationships

Nodes in structures of nodes are chained to each other by so-called parent-offspring relationships. These relationships are visually represented by orange dotted lines, which may turn yellow or blue depending on certain visualization properties that the user may control. When nodes are chained together they form structures of nodes.

The direction of the relationship is determined, in most cases, by the ability of a node to produce the offspring node. That is, the parent node is the one which, by software design, may produce the offspring node.

Click to learn how to detach and attach nodes

In brief: To detach a node, click on the detach button on the node's menu. To attach a node, right-click it and drag it closer to the node you wish to attach it to. Release the right-click when the target node is highlighted.

Use the detach option on the menu to break a relationship.

Nodes in the workspace may be unchained or detached from its parent, carrying all offspring with it. When a node is left unchained, it is no longer taken into account in the logic of the hierarchy, as it no longer belongs to it. When a node is chained back or reattached to the hierarchy, it goes back to being functional.

This feature is useful when testing different configurations, rules or parameters, as it allows to keep alternatives handy in the workspace.

Nodes may be attached only to potential parents. The system limits the way in which nodes may be attached, according to the logic of the information they contain.


A reference is a mechanism by which information in a node is related to, or accessed by, other nodes. The ability of a node to establish a reference with another node enables the first to access the information or features entailed in the second one.

Click to learn more about references


To switch on and off the visibility of references across the design space, use the following hot-key combination: Ctrl or ⌘ + Shift + R.


References have a direction property relative to each of the nodes involved in the reference: the node establishing the reference sets an outgoing reference, while the one accepting the reference sets an incoming reference.

For example, a session establishes an outgoing reference with a trading system. This allows the session to access the information within the whole trading system hierarchy, including strategies. At the trading system level, the same reference is viewed as an incoming reference.



A reference established between nodes of any particular structure within a hierarchy is said to be an internal reference relative to the said structure of nodes. Similarly, a reference established with a node outside of the said structure, that is, in a different part of the hierarchy or in another hierarchy, is said to be an external reference.

Examples of internal references may be found in the data mine and crypto ecosystem hierarchies. For example, let’s briefly look into one such case within a plotter module:

The capture below shows the shapes node and several offspring nodes: on one hand, several polygons; on the other hand, the chart points node.


Notice that vertices under each polygon reference to points under the chart points node.

This means that the node shapes feature several internal references.

Click to learn how to remove and establish references

In brief: To remove a reference, click on the remove reference button on the node's menu. To establish a reference, right-click on the node where the reference should originate and drag it close to the target node. Releas the right-click to establishes the reference.

Use the delink option on the menu to remove a reference.

In case multiple nodes would accept the reference, the one closer to the node where the reference originates will have its ring highlighted.

Once established, the reference is visually represented by a faint grey dotted line. Such line is visible only when both ends of the reference are visible and when hovering the mouse over the node.