Hi Team,
Based on info available here i tried to integrate following API but i'm not getting any result.
https://smartapi.angelone.in/docs/TopGainers
APIS:
https://apiconnect.angelone.in/rest/secure/angelbroking/marketData/v1/putCallRatio
https://apiconnect.angelone.in/rest/secure/angelbroking/marketData/v1/gainersLosers
https://apiconnect.angelone.in/rest/secure/angelbroking/marketData/v1/OIBuildup
Example:
--------------------------------------------------------------
# TOP GAINERS / LOSERS
# --------------------------------------------------------------
def get_top_gainers_losers(self):
api = self.get_api()
try:
payload = {
"exchange": "NSE"
}
resp = api._postRequest(
"marketData/v1/gainersLosers",
payload
)
if not resp:
return {"gainers": [], "losers": []}
if not resp.get("status"):
logger.warning(f"Gainers/Losers fetch failed: {resp}")
return {"gainers": [], "losers": []}
data = resp.get("data", {})
return {
"gainers": data.get("gainers", []),
"losers": data.get("losers", [])
}
except Exception as e:
logger.error(f"Gainers/Losers API error: {e}")
return {"gainers": [], "losers": []}
While testing :
c = SmartAPIClient()
c.login()
movers = c.get_top_gainers_losers()
print("Top Gainers:")
for g in movers["gainers"][:5]:
print(g)
print("\nTop Losers:")
for l in movers["losers"][:5]:
print(l)
Getting this output.
[2026-03-16 10:13:33,230] [INFO] main: Logging into SmartAPI...
[I 260316 10:13:33 smartConnect:124] in pool
[2026-03-16 10:13:33,683] [INFO] main: ✔ SmartAPI Login Successful
[2026-03-16 10:13:33,684] [ERROR] main: Gainers/Losers API error: 'marketData/v1/gainersLosers'
Top Gainers:
Top Losers:
Process finished with exit code 0
Facing same issue with other API's as well.
Note: I'm testing this from my local machine, where other apis are working fine but not able to get these info always both in offline market and live market
Any help with working ways how to get the result will be helpful specially Put Call Ratio is needed.