Roc
ROC
Bases: IndicatorBase
Rate of Change (ROC) indicator.
Computes the percentage change between the current value and the value \(n\) periods ago: ROC = ((current - previous) / previous) * 100
The rolling window is maintained independently for each symbol.
Until the window is fully populated, the indicator yields numpy.nan.
name
property
Canonical indicator name.
Returns:
| Type | Description |
|---|---|
str
|
Stable identifier for the ROC indicator. |
Source code in src/onesecondtrader/indicators/oscillators/roc.py
__init__(period=14, max_history=100, bar_field=models.BarField.CLOSE, plot_at=99, plot_as=models.PlotStyle.LINE, plot_color=models.PlotColor.BLACK)
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
period
|
int
|
Number of periods to look back for the rate of change calculation. |
14
|
max_history
|
int
|
Maximum number of computed indicator values retained per symbol. |
100
|
bar_field
|
BarField
|
Bar field used as the input series. |
CLOSE
|
plot_at
|
int
|
Opaque plotting identifier forwarded to the charting backend. |
99
|
plot_as
|
PlotStyle
|
Visual style used to render the indicator. |
LINE
|
plot_color
|
PlotColor
|
Color used to render the indicator. |
BLACK
|
Source code in src/onesecondtrader/indicators/oscillators/roc.py
_compute_indicator(incoming_bar)
Compute the rate of change for a single received bar.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
incoming_bar
|
BarReceived
|
Market bar used as input for the computation. |
required |
Returns:
| Type | Description |
|---|---|
float
|
Rate of change value as a percentage, or |
Source code in src/onesecondtrader/indicators/oscillators/roc.py
_extract_field(incoming_bar)
Extract the configured bar field from an incoming bar.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
incoming_bar
|
BarReceived
|
Market bar providing the input data. |
required |
Returns:
| Type | Description |
|---|---|
float
|
Extracted field value, or |