augustus-zone-detection
v0.2.0
Published
Support/resistance zone detection utilities for Augustus trading bots.
Maintainers
Readme
Augustus Zone Detection
A small utility library that extracts support and resistance zones from historical candle data. Designed for the Augustus trading stack, but general-purpose enough to reuse in other Node.js services.
Installation
npm install augustus-zone-detection(When developing locally you can link or use a file: dependency.)
Usage
const { detectZones, detectPrimaryZones, findClosestRecentLevels } = require('augustus-zone-detection');
const candles = [
{ date: '2024-01-01', open: 1.1, high: 1.15, low: 1.09, close: 1.12, type: 'green' },
// ... more candles ordered oldest -> newest
];
const zones = detectZones(candles);
const primaries = detectPrimaryZones(candles);
const closest = findClosestRecentLevels(zones.lastCandle, zones.allPoints, zones);Each candle should include date, open, high, low, close, and type (either 'green' or 'red').
How It Works
At its core the detector walks the candle sequence and looks for three-candle structures where momentum flips:
green → red → redmarks a potential swing high; overlapping swings are merged into a resistance zone and their hit count (“strength”) increments.red → green → greenmarks a potential swing low; overlapping swings are merged into a support zone.
Every zone stores the date range of its most recent touch plus the full list of contributing candles. Once the scan finishes you get support/resistance arrays, the most recent completed candle, and helpers to identify which zone is closest or was most recently respected.
Example Patterns


Exports
detectZones(candles)– full zone scan returning support/resistance arrays plus metadata.detectPrimaryZones(candles)– returns the closest support & resistance only.findClosestRecentLevels(lastCandle, allCandles, zones)– helper for determining which zones are closest or most recent relative to a specific candle.
License
MIT
