Ichimoku
What SteadyEdge calculates
This page documents the exact runtime calculation for the listed filter IDs. Formula symbols use O , H , L , C , and V for the current candle open, high, low, close, and volume; p is the configured lookback.
- Registry filter IDs: ichimoku_cloud_state , ichimoku_tenkan_kijun_spread_pct
Exact formula
Tenkan = (max(H,conversion)+min(L,conversion))/2
Kijun = (max(H,base)+min(L,base))/2
SpanA_raw = (Tenkan+Kijun)/2; SpanB_raw = (max(H,spanB)+min(L,spanB))/2
SpanA_t = SpanA_raw_(t-displacement); SpanB_t = SpanB_raw_(t-displacement)
cloud state: 1 if C>max(SpanA,SpanB), -1 if C<min(...), else 0
spread % = 100*(Tenkan-Kijun)/Kijun
Parameters, defaults, and bounds
- conversion_length : default 9 ; 1–100
- base_length : default 26 ; 1–200
- span_b_length : default 52 ; 2–300
- displacement : default 26 ; 0–200
How the rule passes
above requires a strict > comparison.
below requires a strict < comparison.
cross_above requires the previous value below the threshold and the current value at or above it.
cross_below requires the previous value above the threshold and the current value at or below it.
eq passes when the absolute difference is less than 1e-9 .
Data, timing, and warm-up
Candle filters use the rule timeframe and the latest candle at or before the evaluation time. A non-finite calculated value does not pass.
Every rule in the same filter set must pass. Test Filters and a backtest validate the complete set.
Related articles
- Filters Reference
- How Entry Filters Work
- Timeframe, Operator, Value, And Params