CuteMarkets Docs

API Reference

Everything you need to integrate market data, build faster, and scale.

Tip: open /docs/indicators-macd.md directly for raw markdown (easy copy/paste into an LLM).

The MACD is a momentum indicator derived from two exponential moving averages. It highlights trend strength, direction, and potential crossover signals. Each result row contains three values: the MACD line, the signal line, and the histogram (the difference between the two).

Use cases: momentum analysis, crossover signals, spotting overbought/oversold conditions, and confirming trend direction.

Example Endpoint

/v1/options/indicators/macd/O:NFLX260402C00075000/?timespan=day&limit=10

Endpoint

bash
GET /v1/options/indicators/macd/{ticker}

Path parameters

ParameterTypeRequiredDescription
tickerstringYesFull options ticker (for example O:NFLX260402C00075000).

Query parameters

ParameterTypeRequiredDescription
timestampstringNoAnchor time: YYYY-MM-DD or millisecond Unix timestamp.
timestamp.gtestringNoRange lower bound (date or ms timestamp).
timestamp.gtstringNoStrictly greater.
timestamp.ltestringNoRange upper bound.
timestamp.ltstringNoStrictly less.
timespanstringNoAggregate bar width: minute, hour, day, week, month, quarter, or year.
adjustedbooleanNoUse split-adjusted aggregates when true (default). false uses non-adjusted bars.
short_windowintegerNoShort EMA length used for the MACD line (commonly 12).
long_windowintegerNoLong EMA length used for the MACD line (commonly 26).
signal_windowintegerNoSmoothing window for the signal line (commonly 9).
series_typestringNoWhich aggregate field drives the calculation (commonly close).
expand_underlyingbooleanNoWhen true, results.underlying includes an aggregates array and a url for the matching aggregates range. When false or omitted, underlying is omitted.
orderstringNoSort order of points by timestamp (asc / desc).
limitintegerNoMax points returned. Default 10, maximum 1000.
pagestringNoPagination continuation: use the URL in next_url, or pass the page query value from that URL here.

Response

FieldTypeDescription
statusstringOutcome (for example OK).
request_idstringUnique identifier for this request, assigned by CuteMarkets.
resultsobjectIndicator payload.
next_urlstringWhen more values exist, full URL for the next page.

Use limit and timestamp filters per page; follow next_url when present.

results contains:

FieldTypeDescription
valuesarrayMACD data points: see fields below.
underlyingobjectOnly when you pass expand_underlying=true. Contains aggregates and url: an absolute URL to the same contract’s aggregates over the inferred date range (for example https://api.cutemarkets.com/v1/options/aggs/{ticker}/1/day/{from}/{to}/).

Each object in values contains:

FieldTypeDescription
timestampintegerMillisecond Unix timestamp of the bar.
valuenumberMACD line (short EMA minus long EMA).
signalnumberSignal line (EMA of the MACD line).
histogramnumbervalue minus signal.

Example request

bash
curl \
  "https://api.cutemarkets.com/v1/options/indicators/macd/O:NFLX260402C00075000/?timespan=day&short_window=12&long_window=26&signal_window=9&limit=10" \
  -H "Authorization: Bearer YOUR_API_KEY"

Sample response

bash
{
  "results": {
    "values": [
      { "timestamp": 1775102400000, "value": 1.5792238252289934, "signal": 1.743386105515799, "histogram": -0.16416228028680568 },
      { "timestamp": 1775016000000, "value": 1.358035555688602,  "signal": 1.7844266755875005, "histogram": -0.42639111989889855 },
      { "timestamp": 1774929600000, "value": 1.2596020108470398, "signal": 1.8910244555622249, "histogram": -0.631422444715185 }
    ]
  },
  "status": "OK",
  "request_id": "cm_6b4abb381e65434da465c527122093d9"
}

MACD-specific behavior

MACD is a two-speed momentum measure. The short EMA reacts first, the long EMA reacts more slowly, and the signal line smooths the difference. On option contracts, that structure can be useful when the contract has enough regular activity to support indicator math, but it can be misleading on contracts that trade only occasionally.

For options, interpret MACD beside the underlying, implied volatility, and liquidity. A bullish-looking MACD histogram on a call can come from underlying movement, IV expansion, or one sparse premium print. A bearish histogram on a put can reflect the opposite mechanics. The indicator is easier to trust when quotes are recent, spreads are controlled, and the contract has enough volume in the lookback period.

CheckMACD guidanceWhy it matters
Window fitKeep short_window lower than long_window and store both values.Reproducibility depends on the exact smoothing inputs.
Contract liquidityRequire recent quotes or trades before ranking contracts.Sparse prints can distort the two EMA lines.
Signal confirmationCompare histogram changes with IV, delta, and underlying movement.Option premiums move for several reasons at once.

Implementation note

When MACD drives a scanner or alert, persist the full parameter set: ticker, timespan, short_window, long_window, signal_window, series_type, and adjusted. Pair the MACD value with the latest quote timestamp and spread so a later review can distinguish a real momentum change from an illiquid-contract artifact.

Next steps

Move from the docs into the product workflow

If you are evaluating the API rather than implementing a specific endpoint right now, the product pages map live and historical workflows for stocks, options, and WebSockets.