Stocks Data Node
The Stocks Data node fetches historical OHLCV price data for US equities. It pulls data from Databento (DBEQ.BASIC dataset), supports up to 10 symbols per request, and optionally computes technical indicators — giving your workflow everything it needs to analyze stocks.
Configuration
Market Data
Time & Data
Options
Stocks Data vs Price Data
NickAI has two data-fetching nodes for different asset classes. Pick the right one for your workflow:
| Stocks Data | Price Data | |
|---|---|---|
| Asset class | US equities (stocks) | Cryptocurrency |
| Data provider | Databento | CoinGecko, PYTH, Binance, Coinbase, and more |
| Symbol format | Uppercase ticker (AAPL, TSLA) | BASE/QUOTE pair (BTC/USD, ETH/USDT) |
| Intervals | 1m, 1h, 1d | 1m, 5m, 1h, 4h, 1d, 1w |
| Max lookback | 500 bars | 2160 bars |
Configuration
| Field | Description |
|---|---|
| Symbols | Search and select US stock tickers. Uppercase letters and numbers only (e.g., AAPL, MSFT, GOOG, BRK.B). Up to 10 per node. |
| Interval | Candle timeframe: 1m (minute), 1h (hour), or 1d (day). Default: 1d. |
| Lookback | Number of historical bars to fetch. Default: 100. Range: 1–500. |
| Technical Indicators | Toggle to include SMA 20, EMA 20, and RSI computed on the fetched candle data. |
Technical Indicators
When you enable Technical Indicators, the node computes three values on the fetched candle data before passing it downstream:
| Indicator | Description |
|---|---|
| SMA 20 | 20-period Simple Moving Average — the mean closing price over the last 20 candles. |
| EMA 20 | 20-period Exponential Moving Average — weights recent prices more heavily than SMA. |
| RSI | Relative Strength Index (14-period) — momentum oscillator ranging 0–100. Below 30 is typically oversold, above 70 is overbought. |
These are numeric values you can reference in downstream LLM prompts, Function code, or Conditional rules.
Using Stocks Data in a Workflow
AI-Driven Stock Analysis
Connect the Stocks Data node to an LLM for AI-powered analysis of US equities.
Stock Screening with Custom Logic
Skip the LLM and use a Function node to screen stocks based on technical indicators — ideal for rule-based strategies like RSI oversold filters or moving average crossovers.
Multi-Asset Portfolio Monitoring
Combine Stocks Data with Price Data to monitor a mixed portfolio of equities and crypto in a single workflow.
Output
| Path | Description |
|---|---|
| {stocks_data.data.prices} | Array of price data for all requested symbols |
| {stocks_data.data.prices[0].symbol} | Ticker symbol (e.g., AAPL) |
| {stocks_data.data.prices[0].current} | Latest closing price |
| {stocks_data.data.prices[0].change24h} | Price change over the fetched period (absolute) |
| {stocks_data.data.prices[0].changePercent24h} | Price change over the fetched period (percentage) |
| {stocks_data.data.prices[0].volume24h} | Total volume across all fetched candles |
| {stocks_data.data.prices[0].high24h} | Highest price across all fetched candles |
| {stocks_data.data.prices[0].low24h} | Lowest price across all fetched candles |
| {stocks_data.data.prices[0].candles} | Array of historical OHLCV candle data |
| {stocks_data.data.prices[0].candles[0].timestamp} | Candle timestamp |
| {stocks_data.data.prices[0].candles[0].open} | Open price |
| {stocks_data.data.prices[0].candles[0].high} | High price |
| {stocks_data.data.prices[0].candles[0].low} | Low price |
| {stocks_data.data.prices[0].candles[0].close} | Close price |
| {stocks_data.data.prices[0].candles[0].volume} | Volume |
| {stocks_data.data.prices[0].indicators.sma20} | 20-period Simple Moving Average (if indicators enabled) |
| {stocks_data.data.prices[0].indicators.ema20} | 20-period Exponential Moving Average (if indicators enabled) |
| {stocks_data.data.prices[0].indicators.rsi} | Relative Strength Index (if indicators enabled) |
| {stocks_data.data.metadata.source} | Data provider (always "databento") |
| {stocks_data.data.metadata.lastUpdated} | Timestamp of the data fetch |
| {stocks_data.data.metadata.interval} | Interval used |
| {stocks_data.data.metadata.count} | Number of symbols returned |
| {stocks_data.data.metadata.creditsUsed} | Credits consumed |
[0] for the first symbol, [1] for the second, and so on. For example, {stocks_data.data.prices[1].current} returns the second symbol's latest price. Replace stocks_data with whatever your edge label is.Next Steps
- LLM Node — Feed stock data into an AI model for analysis and trading signals.
- Function Node — Write custom logic to screen stocks or compute additional indicators.
- Conditional Node — Route your workflow based on price thresholds or indicator values.
- Exchange Order Node — Execute trades based on your stock analysis.
- Price Data Node — Fetch crypto price data for mixed-asset workflows.
- Chart Image Node — Generate visual charts alongside your numeric stock data.