Add
systemic:core-addMathfunction1 crInputs
| Name | Type | Description |
|---|---|---|
| First Value | floatarray | The first numeric series for addition. |
| Second Value | floatarray | The second numeric series for addition. |
Outputs
| Name | Type | Description |
|---|---|---|
| Sum | floatarray | The element-wise sum of the two input series. |
The Add module performs element-wise addition of two data series, producing a new series where each element is the sum of the corresponding elements from the inputs.
| First | Second | Sum |
|---|---|---|
| 100 | 50 | 150 |
| -10 | 10 | 0 |
| 0.5 | 0.3 | 0.8 |
Missing Data
If either input is missing (null) at a position — a data gap or a closed-market day — the sum at that position is null. The module never invents a value for missing data: a gap in your inputs stays a gap in the output.
| First | Second | Result |
|---|---|---|
| 100 | null | null |
| null | 50 | null |
| null | null | null |
Separate from missing data, a result can be mathematically undefined: adding +∞ and −∞ has no answer, so that position is also null even though both inputs exist. Any other infinite result passes through unchanged.
In live execution the module returns exactly one datapoint — the newest position — which is null when it cannot be determined.
Input Alignment
When inputs have different lengths or frequencies, Systemic automatically aligns them:
| Scenario | Behavior |
|---|---|
| Different lengths | Shorter series is padded by repeating its last value |
| Different frequencies | Lower-frequency series is upsampled to match |
| Constant vs series | Constant is broadcast to all time points |
Practical Example
Offset adjustment: Add a constant to shift a data series up or down—for example, adding transaction costs to price data or adjusting an oscillator's baseline.
Related Modules
- SUB — Subtraction
- MUL — Multiplication
- DIV — Division