deprecated

Planned deprecation - legacy DSL relative_change()

We are planning to deprecate the legacy relative_change(signal, ...) syntax, which has been superseded by the new signal.relative_change(...) syntax.

DSL - relative_change(signal, ...) syntax

Planned deprecation date: August 2022 (function still available, but returns a deprecation warning in the Exabel app)
Planned removal date: 1 September 2023 (function will no longer work)

The rationale for this deprecation is to allow for more significant breaking changes that we have introduced as part of the new syntax (see here), while still keeping backwards compatibility for existing user signals that utilize the old syntax.

The new syntax also allows for chaining multiple transformations in a row without nesting in many layers of brackets, allowing for cleaner and more intuitive expressions:

// New syntax: chaining
close_price.moving_average(28).relative_change(years=1)

// Old syntax: nested brackets
relative_change(signal.moving_average(28), years=1)

As the old syntax is a widely used, we have left an extended deprecation period of 1 year. During this time, warnings will be issued when plotting / evaluating any derived signals using these functions in Signal Explorer. After the removal date, derived signals using these functions will fail to evaluate.