Trading tickers with high options volume is a cornerstone strategy for many derivatives traders. High activity often translates to superior liquidity and tight bid-ask spreads, allowing traders to enter and exit positions with minimal slippage. Furthermore, unusual spikes in options volume can signal institutional interest or an impending volatility event. By analyzing the Put/Call Ratio within these active names, developers and traders can gauge market sentiment, identifying whether the flow is skewed towards bullish calls or bearish puts.
This guide details how to programmatically retrieve the most active options using SteadyAPI and filter them to find specific sentiment setups.
Obtain API key
The Endpoint
The GET /v1/markets/options/most-active endpoint returns a ranked list of securities (Stocks, ETFs, or Indices) with the highest options trading volume for the current session. It includes critical data points such as total volume, volume breakdown by side (put vs. call), and the calculated Put/Call ratio.
Documentation:
SteadyAPI Most Active Options Endpoint
Detailed Parameter Analysis
To customize the scanner, you must understand the available parameters for this request:
- type
Specifies the asset class to scan. Accepted values areSTOCKS,ETFS, orINDICES. This allows you to segregate corporate equity flow from broader market index flow. - page
Handles pagination. Since the list of active tickers can be extensive, use this integer value to navigate through the result set (e.g., 1, 2).
Python Example: Scanning for Bullish Flow
The following Python script queries the API for the most active stocks and filters the results to identify Bullish candidates. In this context, a Put/Call Ratio below 0.7 generally indicates that call volume significantly outweighs put volume, suggesting bullish sentiment.
import requests
# Configuration
API_KEY = "YOUR_ACCESS_TOKEN"
BASE_URL = "https://api.steadyapi.com/v1/markets/options/most-active"
# Parameters for the request
params = {
"type": "STOCKS",
"page": "1"
}
headers = {
"Authorization": f"Bearer {API_KEY}"
}
try:
response = requests.get(BASE_URL, headers=headers, params=params)
response.raise_for_status()
data = response.json()
print(f"{'Symbol':<10} {'Price':<10} {'Total Vol':<15} {'P/C Ratio':<10} {'Sentiment'}")
print("-" * 60)
# Iterate through the most active list
for item in data.get("body", []):
symbol = item.get("symbol")
price = item.get("lastPrice")
volume = item.get("optionsTotalVolume")
# Parse the Put/Call Ratio (ensure it is a float)
try:
pc_ratio = float(item.get("optionsPutCallVolumeRatio", 1.0))
except ValueError:
continue
# Filter for bullish sentiment (Ratio < 0.7)
if pc_ratio < 0.7:
print(f"{symbol:<10} ${price:<9} {volume:<15} {pc_ratio:<10} Bullish")
except requests.exceptions.RequestException as e:
print(f"Error fetching data: {e}")
Understanding the Response
The API returns a JSON object containing a meta field for status information and a body list containing the market data objects.
Example Response:
{
"body": [
{
"symbol": "NVDA",
"symbolName": "Nvidia Corp",
"lastPrice": "785.38",
"percentChange": "+16.40%",
"optionsTotalVolume": "2,493,798",
"optionsPutVolumePercent": "38.9%",
"optionsCallVolumePercent": "61.1%",
"optionsPutCallVolumeRatio": "0.64",
"tradeTime": "02/22/24"
}
]
}
Key Fields
- optionsTotalVolume
Represents the aggregate number of contracts traded for the day. This is the primary metric for identifying liquidity. - optionsPutCallVolumeRatio
A calculated ratio representing Put Volume divided by Call Volume. A value greater than 1.0 implies bearish sentiment (more puts), while a value significantly lower than 1.0 implies bullish sentiment (more calls). - optionsCallVolumePercent
The percentage of the total volume that consists of Call options. High percentages here validate the bullish thesis of a low Put/Call ratio. - optionsPutVolumePercent
The percentage of the total volume that consists of Put options. Use this to identify hedging activity or bearish speculation.
Practical Use Cases
Liquidity Dashboards
Developers can use this endpoint to populate a Most Active leaderboard on trading platforms. By sorting by optionsTotalVolume, users can instantly see where the market action is concentrated, aiding in trade selection for strategies that require high liquidity, such as scalping or day trading options.
Sentiment Heatmaps
By mapping the optionsPutCallVolumeRatio across different sectors (using the type parameter or grouping symbols manually), you can build a visual heatmap of market sentiment. For example, if the most active Tech stocks all show low Put/Call ratios while Energy stocks show high ratios, it provides a macro-level view of capital rotation.
Learn more or explore other endpoints:
SteadyAPI Stock and Options Data API