MacroLensNP नेपालीने Sign in Create accountSign up
Reference · Institutional plan

The MacroLens NP API

Pull MacroLens NP straight into your own systems - every endpoint below returns what the desk itself shows, as plain JSON over HTTPS.

v1 · base URL https://np.nptrade24.com/api/v1 · 28 endpoints

1

Overview

The API is part of the Institutional plan. It gives a fund's models, a broker's research screen or your own spreadsheet the same data the desk shows - every company's MacroLens Rating, verdict, fair value and dump risk, 12-month price targets, forensic red flags, quarterly statements, the floorsheet broker by broker, smart money structure, liquidity, IPO checks, debentures, market studies and the index - and the same AI connect readings, one endpoint each.

Every request is a plain GET; every answer is JSON shaped {"data": ..., "as_of": "YYYY-MM-DD"}, where as_of is the trading day of the prices used. No SDK, nothing to install. Read-only, updated as the desk updates.

Keys are made by the account holder on Account settings › API - up to 5 live keys, each one revocable on its own.

2

Authentication

Send your key as a bearer token on every request:

Authorization: Bearer mlnp_<your key>

X-Api-Key: mlnp_<your key> works too. That's the way from server-side code. To open an endpoint straight in a browser tab - there's no way to set a header from the address bar - add the key as a query parameter instead; same key, same limit, on every endpoint:

https://np.nptrade24.com/api/v1/companies?symbols=NABIL&api_key=mlnp_<your key>

A key in an address can end up in browser history and logs, so use that for your own browsing, and the header in code you share or deploy. Browser apps on other sites can call the API too (it sends the CORS headers). Requests without a valid key get a 401.

Treat a key like a password and keep it server-side. If one might have leaked, revoke it on your account page and make a new one - the old key stops working at once.

3

Rate limits

Each key may make 60 requests a minute. Every answer carries X-RateLimit-Limit and X-RateLimit-Remaining; going over returns a 429 with a Retry-After header saying how many seconds to wait:

{ "error": "Too many requests." }

Answers stay small on purpose: name the companies you want (/companies?symbols=..., up to 25), filter with /screen-stocks, and long lists take a limit. The data changes a few times a day, not by the second - cache what you fetch rather than polling.

4

Errors

Every error is a JSON object with one error string, nothing else to parse:

{ "error": "human-readable message" }
StatusMeaning
401Missing, wrong or revoked API key.
403The account's Institutional plan has ended (or the account is suspended).
404Unknown endpoint or symbol.
422A parameter is missing or can't be used - an unknown symbol, a value outside its range. The message says which.
429Over the key's rate limit - wait Retry-After seconds.
500Something went wrong on our end - safe to retry.
5

Quickstart

A few companies' readings, from the command line:

curl "https://np.nptrade24.com/api/v1/companies?symbols=NABIL,NTC,UPPER" \
-H "Authorization: Bearer mlnp_<your key>"

Or paste this straight into a browser tab - no headers needed:

https://np.nptrade24.com/api/v1/companies?symbols=NABIL,NTC&api_key=mlnp_<your key>

In Python:

import requests
r = requests.get("https://np.nptrade24.com/api/v1/screen-stocks",
params={"min_grade": "A", "max_dump_risk": 30, "sort": "upside"},
headers={"Authorization": "Bearer mlnp_<your key>"})
for c in r.json()["data"]["stocks"]:
print(c["symbol"], c["grade"], c["upside"])

Or in a spreadsheet: Excel's Data › From Web (advanced: add the Authorization header) or Google Sheets with a short Apps Script UrlFetchApp.fetch(url, {headers: {...}}).

6

Endpoints

All 28 are GET requests under https://np.nptrade24.com/api/v1. Parameters go in the query string and are optional unless marked required.

Companies

GET/companies

The companies you name, up to 25 a call: price, day change, verdict, MacroLens Rating (grade and composite), fair value and upside, dump risk, P/E, P/B, ROE, EPS, dividend yield, NPL, CAR, market cap and sector rank. Symbols that are not scored companies come back in "unknown". To filter the whole market, use /screen-stocks.

Parameters
symbols string required - Comma-separated NEPSE symbols, up to 25, e.g. NABIL,NTC,UPPER.
Example - browser address
https://np.nptrade24.com/api/v1/companies?symbols=NABIL%2CNTC&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/companies?symbols=NABIL%2CNTC" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"companies": [
{
"symbol": "NABIL",
"name": "Nabil Bank Limited",
"sector": "bank",
"verdict": "WATCH",
"score": 38,
"grade": "BBB",
"composite": 62,
"outlook": "Stable",
"ltp": 549,
"day_change": -0.18,
"pe": 18.0949,
"pb": 2.3472,
"roe": 12.97,
"eps": 30.34,
"div_yield": 1.9672,
"npl": 4.06,
"car": 11.67,
"mcap": 155970059206.5,
"fv_mid": 378.5952,
"upside": -0.3104,
"dump_risk": 1,
"dump_level": "Low",
"red_flags": 0,
"sector_rank": 7,
"sector_size": 19,
"fy": "2083/2084",
"quarter": 1,
"price_to_graham": 1.3739,
"main_warning": "Bad loans (NPL) 4.06% of total loans"
},
{
"symbol": "NTC",
"name": "Nepal Doorsanchar Comapany Limited",
"sector": "others",
"verdict": "HEALTHY",
"score": 66,
"grade": "AAA",
"composite": 92,
"outlook": "Positive",
"ltp": 937.5,
"day_change": 1.18,
"pe": 19.0355,
"pb": 1.6815,
"roe": 8.83,
"eps": 49.25,
"div_yield": 3.2,
"npl": null,
"car": null,
"mcap": 168750000000,
"fv_mid": 1183.4096,
"upside": 0.2623,
"dump_risk": 0,
"dump_level": "Low",
"red_flags": 0,
"sector_rank": 1,
"sector_size": 9,
"fy": "2082/2083",
"quarter": 4,
"price_to_graham": 1.1927,
"main_warning": null
}
],
"unknown": []
},
"as_of": "2026-11-06"
}
GET/companies/{symbol}

One company in full: its summary row, every metric and warning flag, the analyst summary, ownership, cash dividends, the ratings history, quarterly statements and the last 250 price bars.

Parameters
symbol in the path required - A NEPSE symbol, e.g. NABIL.
Example - browser address
https://np.nptrade24.com/api/v1/companies/NABIL?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/companies/NABIL" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"company": {
"symbol": "NABIL",
"name": "Nabil Bank Limited",
"sector": "bank",
"verdict": "WATCH",
"score": 38,
"grade": "BBB",
"composite": 62,
"outlook": "Stable",
"ltp": 549,
"day_change": -0.18,
"pe": 18.0949,
"pb": 2.3472,
"roe": 12.97,
"eps": 30.34,
"div_yield": 1.9672,
"npl": 4.06,
"car": 11.67,
"mcap": 155970059206.5,
"fv_mid": 378.5952,
"upside": -0.3104,
"dump_risk": 1,
"dump_level": "Low",
"red_flags": 0,
"sector_rank": 7,
"sector_size": 19,
"fy": "2083/2084",
"quarter": 1,
"price_to_graham": 1.3739,
"main_warning": "Bad loans (NPL) 4.06% of total loans"
},
"metrics": {
"symbol": "NABIL",
"name": "Nabil Bank Limited",
"sector": "bank",
"fy": "2083/2084",
"quarter": 1,
"eps": 30.34,
"bvps": 233.9,
"roe": 12.97,
"roa": 1.32,
"npl": 4.06,
"car": 11.67,
"cd_ratio": 80.01,
"llp_coverage": 120.56,
"shares": 284098470,
"net_profit": 2555104,
"share_capital": 33409847,
"total_equity": 71451660,
"total_assets": 775666476,
"total_liabilities": 704214817,
"revenue": 6136516,
"impairment": 164012,
"non_op_income": 2905,
"core_income": 4737012,
"pbt": 3672451,
"operating_profit": 3671948,
"retained_earnings": 2264567,
"reserves": 35777246,
"borrowing": 0,
"net_profit_annual": 10220416,
"debt_to_equity": 9.8558,
"ltp": 549,
"high52": 581,
"low52": 485,
"avg180": 541.31,
"dividend_pct": 10.8,
"bonus_pct": 5,
"mcap": 155970059206.5,
"avg_volume30": 49876,
"pe": 18.0949,
"pb": 2.3472,
"graham": 399.5896,
"price_to_graham": 1.3739,
"div_yield": 1.9672,
"range_pos": 0.6667,
"vs_avg180": 0.0142,
"prev_period": "2082/2083 Q1",
"prev_eps": 25.2355,
"eps_change": 0.144,
"npl_change": -0.14,
"as_of": "2026-11-06",
"day_change": -0.18,
"day_high": 554,
"day_low": 549,
"day_volume": 21117,
"live_as_of": "2026-11-06 15:00:00",
"history_period": "2083/2084 Q1",
"eps_ttm": 28.8702,
"revenue_growth": -0.0554,
"growth_basis": "yoy",
"roe_change_pp": 1.3514,
"promoter_pct": 0.6,
"public_pct": 0.4,
"eps_normalized": 35.9464,
"price_stats": {
"last_date": "2026-11-06",
"ret_1m": 0.0388,
"ret_3m": 0.0331,
"ret_6m": 0.1103,
"ret_1y": 0.1332,
"volatility": 0.1378,
"max_drawdown": -0.0728,
"from_peak": -0.0054,
"volume_spike": 0.9371,
"avg_turnover": 32469102.9187,
"circuit_days": 0,
"pump": null,
"ret30": 0.0294,
"vol60": 0.0061
}
},
"flags": [
{
"level": "watch",
"text": "Bad loans (NPL) 4.06% of total loans"
},
{
"level": "watch",
"text": "Capital adequacy 11.67% is close to the 11% minimum"
},
"... 1 more"
],
"summary": {
... (the full answer continues)
GET/price-targets

The price targets board: every stock's 12-month bear / base / bull band, upside and call (Buy, Accumulate, Hold, Reduce, Sell), highest upside first.

Parameters
call string - Only this call: Buy, Accumulate, Hold, Reduce or Sell.
sector string - Only this sector key, e.g. bank, hydropower.
limit integer - How many, 1 to 300. Default 50.
Example - browser address
https://np.nptrade24.com/api/v1/price-targets?call=Buy&limit=5&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/price-targets?call=Buy&limit=5" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"matches": 50,
"targets": [
{
"symbol": "MKHC",
"name": "Maya Khola Hydropower Company Limited",
"sector": "hydro",
"grade": "BB",
"dump_risk": 83,
"price": 270.2,
"base": 586.98,
"bull": 1086.45,
"bear": 286.03,
"upside": 1.1724,
"call": "Buy",
"raw_call": "Buy",
"confidence": "Medium",
"capped": false
},
{
"symbol": "MAKAR",
"name": "Makar Jitumaya Suri Hydropower Limited",
"sector": "hydro",
"grade": "AA",
"dump_risk": 31,
"price": 454.5,
"base": 973.96,
"bull": 1796.58,
"bear": 472.24,
"upside": 1.1429,
"call": "Buy",
"raw_call": "Buy",
"confidence": "Medium",
"capped": false
},
"... 3 more"
]
},
"as_of": "2026-11-06"
}
GET/search-stocks

Find NEPSE-listed companies by symbol or name. Returns symbol, name, sector and the latest price - use it first when unsure of a symbol.

Parameters
query string required - Part of a symbol or company name, e.g. "nabil" or "hydro".
Example - browser address
https://np.nptrade24.com/api/v1/search-stocks?query=hydro&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/search-stocks?query=hydro" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"matches": [
{
"symbol": "AHL",
"name": "Asian Hydropower Limited",
"sector": "hydro",
"ltp": 380,
"day_change": 1.06
},
{
"symbol": "AHPC",
"name": "Arun Valley Hydropower Development Co. Ltd.",
"sector": "hydro",
"ltp": 257.8,
"day_change": 0.43
},
"... 13 more"
],
"count": 15
},
"as_of": "2026-11-06"
}
GET/stock

One company's full MacroLens NP reading: price, verdict, MacroLens Rating (AAA-D), fair value and upside, dump risk, key ratios, forensic red flags, the analyst summary, recent dividends and rating history.

Parameters
symbol string required - A NEPSE symbol, e.g. "NABIL" (use /search-stocks if unsure).
Example - browser address
https://np.nptrade24.com/api/v1/stock?symbol=NABIL&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/stock?symbol=NABIL" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"company": {
"symbol": "NABIL",
"name": "Nabil Bank Limited",
"sector": "bank",
"verdict": "WATCH",
"grade": "BBB",
"composite": 62,
"outlook": "Stable",
"ltp": 549,
"day_change": -0.18,
"fv_mid": 378.5952,
"upside": -0.3104,
"dump_risk": 1,
"dump_level": "Low",
"red_flags": 0,
"sector_rank": 7,
"sector_size": 19,
"fy": "2083/2084",
"quarter": 1,
"main_warning": "Bad loans (NPL) 4.06% of total loans"
},
"ratios": {
"eps": 30.34,
"bvps": 233.9,
"roe": 12.97,
"roa": 1.32,
"npl": 4.06,
"car": 11.67,
"cd_ratio": 80.01,
"debt_to_equity": 9.8558,
"high52": 581,
"low52": 485,
"avg180": 541.31,
"dividend_pct": 10.8,
"bonus_pct": 5,
"mcap": 155970059206.5,
"avg_volume30": 49876,
"pe": 18.0949,
"pb": 2.3472
},
"warning_flags": [
"{\"level\":\"watch\",\"text\":\"Bad loans (NPL) 4.06% of total loans\"}",
"{\"level\":\"watch\",\"text\":\"Capital adequacy 11.67% is close to the 11% minimum\"}",
"... 1 more"
],
"summary": {
"headline": "Nabil Bank Limited is rated BBB (adequate, quality tier) — 7th of 19 in Commercial Bank — and has some warning signs at today's price of ...",
"sections": [
{
"title": "The business",
"text": "On the business side, it stands out for returns on equity above most peers (13.0% vs a sector median of 7.7%), earnings up 14% since 2082..."
},
{
"title": "Valuation",
"text": "At 18.1 times earnings it trades in line with its sector's typical P/E of 18.2. Our fair-value estimate is Rs 379 (range Rs 337–Rs 549), ..."
},
"... 3 more"
],
"bottom_line": "A sound business, but the price already assumes a lot. The quality is real; the margin of safety isn't there at this level.",
"watch": [
"Whether earnings hold up in the next quarterly report (after 2083/2084 Q1).",
"Bad loans (now 4.06%) and capital adequacy (now 11.67%)."
]
},
"recent_dividends": [
[
"2011-12-04",
28.5
],
[
"2012-10-03",
37
],
"... 3 more"
],
"rating_history": [
{
"as_of": "2026-10-29",
"grade": "BBB",
"composite": 57,
"verdict": "WATCH"
},
{
"as_of": "2026-10-30",
"grade": "BBB",
"composite": 57,
"verdict": "WATCH"
},
"... 4 more"
],
"last_closes": [
{
"date": "2026-10-26",
"close": 543
},
{
"date": "2026-10-27",
"close": 542
},
"... 8 more"
],
"page": "https://np.nptrade24.com/company/NABIL",
"note": "MacroLens NP research readings, not investment advice. Prices are NEPSE end-of-day unless \"live\" is said."
},
"as_of": "2026-11-06"
}
GET/screen-stocks

Screen every scored NEPSE company. All filters optional; returns the matching companies with their key readings, sorted.

Parameters
sector string - Sector key. One of: bank, devbank, finance, microfinance, hydro, life, nonlife, manufacturing, hotel, investment, trading, others.
verdict string - Fundamental health verdict. One of: HEALTHY, WATCH, DANGER.
min_grade string - Lowest MacroLens Rating to include. One of: AAA, AA, A, BBB, BB, B, CCC, CC, C, D.
max_pe number - Number
min_upside number - Minimum upside to fair value, in % (e.g. 20).
max_dump_risk number - Highest dump risk score, 0-100.
sort string - Default: rating. One of: rating, upside, dump_risk, pe, div_yield, mcap.
limit integer - Default 20. 1 to 50.
Example - browser address
https://np.nptrade24.com/api/v1/screen-stocks?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/screen-stocks" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"matches": 280,
"sorted_by": "rating",
"stocks": [
{
"symbol": "NTC",
"name": "Nepal Doorsanchar Comapany Limited",
"sector": "others",
"verdict": "HEALTHY",
"grade": "AAA",
"ltp": 937.5,
"pe": 19.0355,
"pb": 1.6815,
"roe": 8.83,
"div_yield": 3.2,
"upside": 0.2623,
"dump_risk": 0,
"red_flags": 0
},
{
"symbol": "MAKAR",
"name": "Makar Jitumaya Suri Hydropower Limited",
"sector": "hydro",
"verdict": "HEALTHY",
"grade": "AA",
"ltp": 454.5,
"pe": 13.4947,
"pb": 3.7075,
"roe": 27.48,
"div_yield": 0.1496,
"upside": -0.0559,
"dump_risk": 31,
"red_flags": 0
},
"... 18 more"
],
"note": "MacroLens NP research readings, not investment advice. Prices are NEPSE end-of-day unless \"live\" is said."
},
"as_of": "2026-11-06"
}
GET/liquidity

How easy a stock is to sell: its typical daily turnover, sessions it did not trade (of the last 60), and trading days to sell Rs 10 lakh / 50 lakh / 1 crore at 10% of a day's trading.

Parameters
symbol string required - A NEPSE symbol, e.g. "NABIL" (use /search-stocks if unsure).
Example - browser address
https://np.nptrade24.com/api/v1/liquidity?symbol=NABIL&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/liquidity?symbol=NABIL" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"symbol": "NABIL",
"typical_daily_turnover_rs": 25899191,
"idle_sessions": 0,
"of_sessions": 60,
"days_to_sell": {
"1000000": 0.4,
"5000000": 1.9,
"10000000": 3.9
},
"grade": "Fair",
"assumption": "selling at most 10% of a day's trading, so the seller does not move the price"
},
"as_of": "2026-11-06"
}
GET/price-target

A stock's 12-month price target band (bear / base / bull), upside and call, as published on the Price targets page.

Parameters
symbol string required - A NEPSE symbol, e.g. "NABIL" (use /search-stocks if unsure).
Example - browser address
https://np.nptrade24.com/api/v1/price-target?symbol=NABIL&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/price-target?symbol=NABIL" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"symbol": "NABIL",
"name": "Nabil Bank Limited",
"sector": "bank",
"grade": "BBB",
"dump_risk": 1,
"price": 549,
"base": 594.87,
"bull": 679.76,
"bear": 459.23,
"upside": 0.0835,
"call": "Hold",
"raw_call": "Hold",
"confidence": "High",
"capped": false,
"note": "MacroLens NP research readings, not investment advice. Prices are NEPSE end-of-day unless \"live\" is said."
},
"as_of": "2026-11-06"
}
GET/stock-analysis

One section of a company's full MacroLens NP breakdown (/stock gives the overview). Sections: rating = the MacroLens Rating: grade, composite, the five pillars and why, peers it was scored against, sector rank; fair_value = fair value from each method (earnings, book value, dividends, sector) and the 12-month price target; dump_risk = dump risk score, level and each part behind it; forensics = accounting red flags and the rule-based warnings; buy_sell_meter = the buy / sell meter: votes from trend, momentum and fundamentals; events = corporate events read from announcements and news; dividends = dividend record and next year's projection; supply = promoter lock-ins and new share supply coming; cornering = how much of the float the top brokers hold, and the accumulation timeline; broker_flow = the floorsheet: brokers buying and selling it lately; ownership = promoter / public / mutual fund shareholding; patterns = chart patterns, support and resistance with how often each held; corporate_actions = bonus and right shares read from its prices; peers = the other companies in its sector, by rating.

Parameters
symbol string required - A NEPSE symbol, e.g. "NABIL".
section string required - One of: rating, fair_value, dump_risk, forensics, buy_sell_meter, events, dividends, supply, cornering, broker_flow, ownership, patterns, corporate_actions, peers.
Example - browser address
https://np.nptrade24.com/api/v1/stock-analysis?symbol=NABIL&section=rating&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/stock-analysis?symbol=NABIL&section=rating" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"symbol": "NABIL",
"section": "rating",
"about": "the MacroLens Rating: grade, composite, the five pillars and why, peers it was scored against, sector rank",
"grade": "BBB",
"composite": 62,
"outlook": "Stable",
"pillars": {
"quality": 82,
"value": 38,
"safety": 54,
"growth": 71,
"income": 61
},
"peer_basis": "sector",
"explain": {
"peer_basis": "sector",
"peer_count": 19,
"pillars": [
{
"key": "quality",
"score": 81.5789,
"weight": 0.3,
"weight_used": 0.3,
"points": 24.4737,
"items": [
{
"label": "Return on equity",
"value": 12.97,
"unit": "%",
"pct": 81.5789,
"n": 19,
"median": 7.73,
"better": "higher"
},
{
"label": "Return on assets",
"value": 1.32,
"unit": "%",
"pct": 81.5789,
"n": 19,
"median": 0.82,
"better": "higher"
}
],
"notes": []
},
{
"key": "value",
"score": 37.7193,
"weight": 0.2,
"weight_used": 0.2,
"points": 7.5439,
"items": [
{
"label": "Price / earnings",
"value": 18.0949,
"unit": "x",
"pct": 52.7778,
"n": 18,
"median": 18.1898,
"better": "lower"
},
{
"label": "Price / book",
"value": 2.3472,
"unit": "x",
"pct": 13.1579,
"n": 19,
"median": 1.5133,
"better": "lower"
},
"... 1 more"
],
"notes": []
},
"... 3 more"
],
"weighted": 61.5789,
"penalties": [],
"composite": 61.5789,
"score_grade": "BBB",
"caps": [],
"grade": "BBB",
"grades": [
{
"grade": "AAA",
"from": 85
},
{
"grade": "AA",
"from": 75
},
"... 6 more"
],
"outlook_why": "12-month EPS +14% vs the same quarter a year earlier (2082/2083 Q1: 25.24 → 28.87)."
},
"sector_rank": 7,
"sector_size": 19,
"page": "https://np.nptrade24.com/company/NABIL"
},
"as_of": "2026-11-06"
}
GET/financial-statements

A company's published quarterly reports (balance sheet, income statement, ratios as the company reports them), newest first.

Parameters
symbol string required - A NEPSE symbol, e.g. "NABIL".
quarters integer - Default 4. 1 to 12.
Example - browser address
https://np.nptrade24.com/api/v1/financial-statements?symbol=NABIL&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/financial-statements?symbol=NABIL" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"symbol": "NABIL",
"quarters": [
{
"period": "2083/2084 Q1",
"sections": [
{
"title": "Balance sheet",
"rows": [
{
"...": "..."
},
{
"...": "..."
},
"... 33 more"
]
},
{
"title": "Profit & loss",
"rows": [
{
"...": "..."
},
{
"...": "..."
},
"... 31 more"
]
},
"... 1 more"
]
},
{
"period": "2082/2083 Q4",
"sections": [
{
"title": "Balance sheet",
"rows": [
{
"...": "..."
},
{
"...": "..."
},
"... 33 more"
]
},
{
"title": "Profit & loss",
"rows": [
{
"...": "..."
},
{
"...": "..."
},
"... 31 more"
]
},
"... 1 more"
]
}
],
"note": "As the company published them (Rs; NFRS). Ratios on the company page are MacroLens NP's own."
},
"as_of": "2026-11-06"
}

Market

GET/market

The NEPSE index (latest close, change, turnover, 1-year range, average daily range, returns, the last 250 bars), market breadth and every sector.

Example - browser address
https://np.nptrade24.com/api/v1/market?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/market" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"index": {
"bars": [
{
"date": "2025-10-08",
"open": 2610.28,
"high": 2610.31,
"low": 2535.3,
"close": 2559.59,
"volume": 5762701110.82
},
{
"date": "2025-10-09",
"open": 2585.73,
"high": 2677.09,
"low": 2575.51,
"close": 2582.18,
"volume": 5273221479.76
},
"... 248 more"
],
"close": 2655.22,
"date": "2026-11-06",
"change": 2.64,
"change_pct": 0.0995,
"turnover": 3462059323.07,
"high": 2969.5,
"low": 2469.37,
"adr": 26.798,
"adr_pct": 1.0093,
"adr_days": 10,
"returns": {
"1M": 0.0216,
"3M": -0.0154,
"1Y": 0.0597
}
},
"breadth": {
"up": 157,
"down": 108,
"flat": 15,
"gainers": [
{
"symbol": "CREST",
"name": "Crest Micro Life Insurance Ltd.",
"sector": "life",
"verdict": "DANGER",
"score": 0,
"grade": "D",
"composite": 5,
"outlook": "Negative",
"ltp": 1192,
"day_change": 14.08,
"pe": 3505.8824,
"pb": 11.3427,
"roe": null,
"eps": 0.34,
"div_yield": 0,
"npl": null,
"car": null,
"mcap": 8940000000,
"fv_mid": 28.3538,
"upside": -0.9762,
"dump_risk": 96,
"dump_level": "Extreme",
"red_flags": 1,
"sector_rank": 14,
"sector_size": 14,
"fy": null,
"quarter": null,
"price_to_graham": 42.0402,
"main_warning": "EPS fell 89% since 2081/2082 Q4 (3.03 -> 0.34)"
},
{
"symbol": "BENH",
"name": "Beni Hydropower Project Ltd.",
"sector": "hydro",
"verdict": "DANGER",
"score": 0,
"grade": "D",
"composite": 8,
"outlook": "Developing",
"ltp": 840,
"day_change": 5.78,
"pe": null,
"pb": 8.4,
"roe": null,
"eps": 0,
"div_yield": 0,
"npl": null,
"car": null,
"mcap": 8736000000,
"fv_mid": null,
"upside": null,
"dump_risk": 32,
"dump_level": "Low",
"red_flags": 2,
"sector_rank": 97,
"sector_size": 112,
"fy": null,
"quarter": null,
"price_to_graham": null,
"main_warning": "Loss-making: EPS 0.00"
},
"... 2 more"
],
"losers": [
{
"symbol": "GCIL",
"name": "Ghorahi Cement Industry Limited",
"sector": "manufacturing",
"verdict": "DANGER",
"score": 25,
"grade": "D",
"composite": 12,
"outlook": "Developing",
"ltp": 380,
... (the full answer continues)
GET/sectors

Every sector: how many companies are healthy / watch / danger, the median P/E, the average MacroLens composite, its top company, and its rotation quadrant (leading, weakening, lagging, improving) where the floorsheet history allows.

Example - browser address
https://np.nptrade24.com/api/v1/sectors?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/sectors" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": [
{
"key": "bank",
"label": "Commercial Bank",
"count": 19,
"healthy": 1,
"watch": 8,
"danger": 10,
"median_pe": 18.1898,
"avg_composite": 47.3158,
"top": {
"symbol": "SANIMA",
"name": "Sanima Bank Limited",
"sector": "bank",
"verdict": "WATCH",
"score": 48,
"grade": "AA",
"composite": 75,
"outlook": "Positive",
"ltp": 400,
"day_change": 0,
"pe": 15.3198,
"pb": 2.1559,
"roe": 14.07,
"eps": 26.11,
"div_yield": 2.5,
"npl": 2.86,
"car": 12.37,
"mcap": 54326101640,
"fv_mid": 310.1063,
"upside": -0.2247,
"dump_risk": 3,
"dump_level": "Low",
"red_flags": 0,
"sector_rank": 1,
"sector_size": 19,
"fy": "2083/2084",
"quarter": 1,
"price_to_graham": 1.2116,
"main_warning": "Capital adequacy 12.37% is close to the 11% minimum"
},
"rotation": {
"sector": "bank",
"label": "Commercial Bank",
"quadrant": "Weakening",
"x": 105.27,
"y": 97.7,
"trail": [
{
"date": "2026-09-09",
"x": 105,
"y": 102.81
},
{
"date": "2026-09-16",
"x": 103.44,
"y": 99.12
},
"... 6 more"
],
"thin": false,
"stocks": 19,
"share_normal": 0.0917,
"share_5": 0.2009,
"share_20": 0.2077,
"flow_5": 1.191,
"flow_20": 1.2656,
"flow": "in",
"ret_5": -0.0215,
"ret_20": 0.0599,
"ret_60": 0.0485,
"turnover_20": 1099115674,
"plain": {
"quant": "Weakening · RS ratio 105.3 · RS momentum 97.7 · turnover share 20.8% vs normal 9.2% (flow +127%) · price 20 d +6.0%",
"plain": "Commercial Bank is still ahead of the market, but losing steam - often where profit-taking starts, and is getting much more of the market..."
}
}
},
{
"key": "devbank",
"label": "Development Bank",
"count": 16,
"healthy": 2,
"watch": 7,
"danger": 7,
"median_pe": 29.8285,
"avg_composite": 40,
"top": {
"symbol": "KSBBL",
"name": "Kamana Sewa Bikas Bank Limited",
"sector": "devbank",
"verdict": "HEALTHY",
"score": 66,
"grade": "A",
"composite": 72,
"outlook": "Positive",
"ltp": 481,
"day_change": 0.78,
"pe": 23.2592,
"pb": 2.9721,
"roe": 12.78,
"eps": 20.68,
"div_yield": 3.1185,
"npl": 3.93,
"car": 12.97,
"mcap": 18575887244.2,
"fv_mid": 372.6992,
"upside": -0.2252,
"dump_risk": 7,
"dump_level": "Low",
"red_flags": 0,
"sector_rank": 1,
"sector_size": 16,
"fy": "2083/2084",
"quarter": 1,
"price_to_graham": 1.7528,
... (the full answer continues)
GET/stock-stretch

How stretched each stock is: its euphoria / fear band and score, from capitulation to euphoria, most fearful first. With a symbol: that stock in full, with its history.

Parameters
symbol string - Optional: one stock in full.
band string - Only this band, e.g. Fear, Euphoria, Capitulation.
limit integer - How many, 1 to 300. Default 50.
Example - browser address
https://np.nptrade24.com/api/v1/stock-stretch?limit=5&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/stock-stretch?limit=5" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"as_of": "2026-11-06",
"base_crash": 0.0489,
"record": {
"Capitulation": {
"n": 23426,
"move": {
"5": {
"typical": -0.0015,
"low": -0.0215,
"high": 0.0238,
"up10": 0.035,
"down10": 0.009
},
"20": {
"typical": -0.002,
"low": -0.0435,
"high": 0.0472,
"up10": 0.13,
"down10": 0.067
},
"60": {
"typical": 0,
"low": -0.0663,
"high": 0.0873,
"up10": 0.229,
"down10": 0.155
}
},
"dip": -0.0338,
"dip_bad": -0.0672,
"crash": 0.0241,
"crash_x": 0.49,
"stay": 8,
"next": {
"Fear": 0.9,
"Neutral": 0.063,
"Heated": 0.028,
"Euphoria": 0.009
}
},
"Fear": {
"n": 22513,
"move": {
"5": {
"typical": -0.0031,
"low": -0.0235,
"high": 0.0225,
"up10": 0.03,
"down10": 0.009
},
"20": {
"typical": -0.0032,
"low": -0.0445,
"high": 0.0428,
"up10": 0.116,
"down10": 0.064
},
"60": {
"typical": -0.01,
"low": -0.0769,
"high": 0.0721,
"up10": 0.207,
"down10": 0.182
}
},
"dip": -0.0355,
"dip_bad": -0.0675,
"crash": 0.033,
"crash_x": 0.68,
"stay": 4,
"next": {
"Neutral": 0.523,
"Capitulation": 0.452,
"Heated": 0.02,
"Euphoria": 0.005
}
},
"Neutral": {
"n": 32216,
"move": {
"5": {
"typical": -0.0045,
"low": -0.0248,
"high": 0.0215,
"up10": 0.034,
"down10": 0.014
},
"20": {
"typical": -0.0093,
"low": -0.0524,
"high": 0.0371,
"up10": 0.11,
"down10": 0.089
},
"60": {
"typical": -0.0228,
"low": -0.0914,
"high": 0.0569,
"up10": 0.182,
"down10": 0.225
}
},
"dip": -0.0402,
"dip_bad": -0.0766,
"crash": 0.0545,
"crash_x": 1.12,
"stay": 5,
"next": {
"Fear": 0.529,
"Heated": 0.419,
"Capitulation": 0.027,
"Euphoria": 0.025
}
},
"Heated": {
"n": 21600,
"move": {
"5": {
"typical": -0.0066,
"low": -0.03,
... (the full answer continues)
GET/indicators

Technical indicators for a stock or the index, day by day: simple moving averages 20 / 50 / 200, EMA 12 / 26, RSI 14, MACD 12 / 26 / 9 with signal and histogram, Bollinger bands 20 / 2 and ATR 14.

Parameters
symbol string required - A NEPSE symbol, or NEPSE for the index.
days integer - How many recent sessions, 1 to 250. Default 30.
Example - browser address
https://np.nptrade24.com/api/v1/indicators?symbol=NABIL&days=3&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/indicators?symbol=NABIL&days=3" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"symbol": "NABIL",
"indicators": [
{
"date": "2026-11-04",
"close": 550,
"sma20": 540.675,
"sma50": 531.432,
"sma200": 506.5217,
"ema12": 546.3262,
"ema26": 540.776,
"rsi14": 64.7875,
"macd": 5.5502,
"macd_signal": 4.9185,
"macd_hist": 0.6317,
"bb_upper": 556.9679,
"bb_middle": 540.675,
"bb_lower": 524.3821,
"atr14": 8.0576
},
{
"date": "2026-11-05",
"close": 550,
"sma20": 541.75,
"sma50": 531.9558,
"sma200": 506.8974,
"ema12": 546.8914,
"ema26": 541.4592,
"rsi14": 64.7875,
"macd": 5.4321,
"macd_signal": 5.0212,
"macd_hist": 0.4109,
"bb_upper": 557.5165,
"bb_middle": 541.75,
"bb_lower": 525.9835,
"atr14": 8.0535
},
"... 1 more"
]
},
"as_of": "2026-11-06"
}
GET/circuits

Stocks at the daily price limit today and lately, the sector heatmap, and the NEPSE record of buying them the next morning.

Example - browser address
https://np.nptrade24.com/api/v1/circuits?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/circuits" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"record": {
"hold": 20,
"holds": [
1,
5,
"... 1 more"
],
"from": "2022-05-24",
"to": "2026-09-23",
"baseline": {
"n": 218027,
"median": -0.0065,
"beat": 0.45
},
"up": {
"n": 1412,
"days": 482,
"median": {
"1": -0.0033,
"5": -0.0247,
"20": -0.0383
},
"beat": 0.365,
"raw_median": -0.038,
"matched": -0.028,
"matched_beat": 0.396,
"ci": [
-0.0272,
-0.0073
],
"years": {
"2022": {
"n": 109,
"matched": 0.0071
},
"2023": {
"n": 259,
"matched": -0.0294
},
"2024": {
"n": 675,
"matched": -0.0153
},
"2025": {
"n": 266,
"matched": -0.0593
},
"2026": {
"n": 103,
"matched": -0.0672
}
}
},
"down": {
"n": 310,
"days": 202,
"median": {
"1": -0.0043,
"5": -0.0283,
"20": -0.0646
},
"beat": 0.284,
"raw_median": -0.0627,
"matched": -0.0533,
"matched_beat": 0.297,
"ci": [
-0.0697,
-0.0288
],
"years": {
"2023": {
"n": 72,
"matched": -0.025
},
"2024": {
"n": 111,
"matched": -0.0538
},
"2025": {
"n": 85,
"matched": -0.0672
},
"2026": {
"n": 33,
"matched": -0.0607
}
}
},
"runs": {
"up": {
"1": {
"n": 1236,
"days": 453,
"median": {
"1": -0.0047,
"5": -0.0266,
"20": -0.0385
},
"beat": 0.365,
"raw_median": -0.0356,
"matched": -0.029,
"matched_beat": 0.394,
"ci": [
-0.0253,
-0.0042
],
"years": {
"2022": {
"...": "..."
},
"2023": {
"...": "..."
},
"2024": {
"...": "..."
},
"2025": {
"...": "..."
},
"2026": {
"...": "..."
}
}
},
"2": {
"n": 134,
"days": 102,
... (the full answer continues)
GET/market-overview

Today's NEPSE market: the index (level, change, 1/3/12-month returns, average daily range), breadth (advancing / declining), each sector's move, and the top gainers and losers.

Example - browser address
https://np.nptrade24.com/api/v1/market-overview?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/market-overview" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"index": {
"close": 2655.22,
"date": "2026-11-06",
"change": 2.64,
"change_pct": 0.0995,
"turnover": 3462059323.07,
"high": 2969.5,
"low": 2469.37,
"adr": 26.798,
"adr_pct": 1.0093,
"adr_days": 10,
"returns": {
"1M": 0.0216,
"3M": -0.0154,
"1Y": 0.0597
}
},
"breadth": {
"up": 157,
"down": 108,
"flat": 15,
"gainers": [
{
"symbol": "CREST",
"name": "Crest Micro Life Insurance Ltd.",
"sector": "life",
"verdict": "DANGER",
"score": 0,
"grade": "D",
"composite": 5,
"outlook": "Negative",
"ltp": 1192,
"day_change": 14.08,
"pe": 3505.8824,
"pb": 11.3427,
"roe": null,
"eps": 0.34,
"div_yield": 0,
"npl": null,
"car": null,
"mcap": 8940000000,
"fv_mid": 28.3538,
"upside": -0.9762,
"dump_risk": 96,
"dump_level": "Extreme",
"red_flags": 1,
"sector_rank": 14,
"sector_size": 14,
"fy": null,
"quarter": null,
"price_to_graham": 42.0402,
"main_warning": "EPS fell 89% since 2081/2082 Q4 (3.03 -> 0.34)"
},
{
"symbol": "BENH",
"name": "Beni Hydropower Project Ltd.",
"sector": "hydro",
"verdict": "DANGER",
"score": 0,
"grade": "D",
"composite": 8,
"outlook": "Developing",
"ltp": 840,
"day_change": 5.78,
"pe": null,
"pb": 8.4,
"roe": null,
"eps": 0,
"div_yield": 0,
"npl": null,
"car": null,
"mcap": 8736000000,
"fv_mid": null,
"upside": null,
"dump_risk": 32,
"dump_level": "Low",
"red_flags": 2,
"sector_rank": 97,
"sector_size": 112,
"fy": null,
"quarter": null,
"price_to_graham": null,
"main_warning": "Loss-making: EPS 0.00"
},
"... 2 more"
],
"losers": [
{
"symbol": "GCIL",
"name": "Ghorahi Cement Industry Limited",
"sector": "manufacturing",
"verdict": "DANGER",
"score": 25,
"grade": "D",
"composite": 12,
"outlook": "Developing",
"ltp": 380,
"day_change": -6.4,
"pe": null,
"pb": 2.2929,
"roe": -3.6998,
"eps": -6.13,
"div_yield": 0.1395,
"npl": null,
"car": null,
"mcap": 19092926226,
"fv_mid": null,
"upside": null,
"dump_risk": 93,
"dump_level": "High",
"red_flags": 3,
"sector_rank": 15,
"sector_size": 17,
... (the full answer continues)
GET/price-history

Daily OHLCV candles (adjusted for bonus and right shares) for a stock or the NEPSE index ("NEPSE"), newest last.

Parameters
symbol string required - A NEPSE symbol, e.g. "NABIL" (use /search-stocks if unsure).
days integer - How many sessions, default 60. 5 to 300.
Example - browser address
https://np.nptrade24.com/api/v1/price-history?symbol=NABIL&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/price-history?symbol=NABIL" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"symbol": "NABIL",
"candles": [
{
"date": "2026-08-03",
"open": 503.05,
"high": 540.95,
"low": 503.05,
"close": 530.57,
"volume": 53226
},
{
"date": "2026-08-04",
"open": 533.33,
"high": 535.05,
"low": 530,
"close": 531.43,
"volume": 60087
},
"... 58 more"
],
"adjusted": "for bonus and right shares"
},
"as_of": "2026-11-06"
}
GET/smart-money

Smart Money Concepts reading of a stock's daily chart (or the index): swing and internal structure with each one's premium / discount position, the last BOS / CHoCH breaks, supply / demand zones, order blocks, resting liquidity and recent sweeps, and the market maker model (MMXM) phase.

Parameters
symbol string required - A NEPSE symbol, e.g. "NABIL" (use /search-stocks if unsure).
Example - browser address
https://np.nptrade24.com/api/v1/smart-money?symbol=NABIL&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/smart-money?symbol=NABIL" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"symbol": "NABIL",
"close": 549,
"swing_structure": {
"trend": "bullish",
"last": "BOS",
"high": 557,
"low": 503.05,
"eq": 530.02,
"strong": "low",
"weak": "high",
"position": 0.85,
"zone": "premium",
"break_at": "2026-09-24",
"level": 540.95
},
"internal_structure": {
"trend": "bullish",
"last": "BOS",
"high": 557,
"low": 518,
"eq": 537.5,
"strong": "low",
"weak": "high",
"position": 0.8,
"zone": "premium",
"break_at": "2026-10-29",
"level": 549.2
},
"supply_demand_zones": [
{
"side": "demand",
"top": 552.9,
"bottom": 518,
"at": "2026-10-29",
"tapped": "2026-10-30",
"state": "tested"
},
{
"side": "demand",
"top": 532,
"bottom": 525,
"at": "2026-10-01",
"tapped": "2026-10-29",
"state": "tested"
}
],
"order_blocks": [
{
"dir": "bull",
"top": 552.9,
"bottom": 518,
"at": "2026-10-29",
"state": "tested",
"relevant": true
},
{
"dir": "bull",
"top": 532,
"bottom": 525,
"at": "2026-10-01",
"state": "tested",
"relevant": true
},
"... 4 more"
],
"resting_liquidity": {
"bsl": [
{
"price": 557,
"at": "2026-10-30",
"equal": false
},
{
"price": 578.29,
"at": "2024-10-23",
"equal": false
},
"... 1 more"
],
"ssl": [
{
"price": 518,
"at": "2026-10-29",
"equal": false
},
{
"price": 504.76,
"at": "2026-08-27",
"equal": false
},
"... 1 more"
]
},
"recent_sweeps": [
{
"side": "bsl",
"price": 551.43,
"pivot": "2024-11-11",
"at": "2026-09-15"
},
{
"side": "bsl",
"price": 542,
"pivot": "2024-11-25",
"at": "2026-09-15"
},
"... 4 more"
],
"market_maker_model": {
"model": "sell",
"phase": "curve",
"step": 1,
"steps": [
"Original consolidation",
"Buy side of curve",
"... 3 more"
],
"target": 476,
"invalidation": null,
"progress": null
},
"chart": "https://np.nptrade24.com/smart-money?view=NABIL",
"note": "Describes price structure on daily candles. MacroLens NP backtests found SMC entries beat random ones but no setup made money reliably af..."
},
"as_of": "2026-11-06"
}
GET/news

The latest NEPSE news and company announcements, tagged; optionally only one company's.

Parameters
symbol string - A NEPSE symbol, e.g. "NABIL" (use /search-stocks if unsure).
limit integer - Default 15. 1 to 50.
Example - browser address
https://np.nptrade24.com/api/v1/news?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/news" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"news": [
{
"date": "2026-11-08",
"symbol": null,
"title": "NEPSE to Remain Closed: Govt Declares Public Holiday on The Occasion of Tihar",
"url": "https://www.sharesansar.com/newsdetail/nepse-to-remain-closed-govt-declares-public-holiday-on-the-occasion-of-tihar-2026-11-08",
"tags": [],
"kind": "article"
},
{
"date": "2026-11-06",
"symbol": null,
"title": "2,21,501.59  Units Promoter Shares of Mahuli Laghubitta Converted Into Public Shares",
"url": "https://www.sharesansar.com/newsdetail/22150159-units-promoter-shares-of-mahuli-laghubitta-converted-into-public-shares-2026-11-06",
"tags": [],
"kind": "article"
},
"... 13 more"
]
},
"as_of": "2026-11-06"
}
GET/market-research

A market-wide MacroLens NP study. Topics: cornering = stocks a few brokers are building large positions in (share of float held by the top brokers); sector_rotation = capital rotation between sectors: which are leading / weakening / lagging / improving, and what followed historically; stretch = how stretched each sector is, snap-back backtests, operator activity and retail euphoria; factors = factor research on NEPSE: momentum, low volatility, value, quality, growth - returns after costs; broker_scorecard = which brokers' big buys / sells came before the price moving that way; total_return = price plus cash dividends reinvested - market, sectors and stocks; corporate_actions = every bonus / right share read from adjusted vs raw prices; ownership = mutual-fund holdings, promoter / public split, and promoter share moves; seasonality = month-by-month seasonality of NEPSE and each sector, and festivals / elections / shocks; economy = Nepal's economy from NRB: rates, liquidity, inflation, remittance, trade - read for share prices; global_markets = NEPSE against global markets, plus FX, metals and oil quotes; world_news = international news that moves markets, with why it matters for Nepal; book_closures = book closures: the run-up before and the move after, and the coming ones; mergers = mergers in progress (with the 1:1 arbitrage gap) and how completed ones moved; supply_calendar = promoter lock-ins ending in the coming year, and what past lock-in ends did; why_moved = why each stock moved on the last session: market, sector and floorsheet; patterns = chart patterns: how often each worked on NEPSE, and the latest signals; the market signal index; rating_changes = recent MacroLens Rating upgrades / downgrades, and how changes played out; track_record = how the buy / sell meter and the ratings did out of sample (calibration); ipo_history = how past IPOs did after listing - by sector, rating and verdict; issues = the primary market board: open, soon, closed, listed issues and the SEBON pipeline; methodology = how every reading is built: grades, pillars, dump risk parts, checks, fair value methods, glossary. Optional symbol / sector narrow it where the study has them.

Parameters
topic string required - One of: cornering, sector_rotation, stretch, factors, broker_scorecard, total_return, corporate_actions, ownership, seasonality, economy, global_markets, world_news, book_closures, mergers, supply_calendar, why_moved, patterns, rating_changes, track_record, ipo_history, issues, methodology.
symbol string - A NEPSE symbol, e.g. "NABIL".
sector string - Optional sector key. One of: bank, devbank, finance, microfinance, hydro, life, nonlife, manufacturing, hotel, investment, trading, others.
limit integer - How many rows of a long list (default 25). 1 to 100.
Example - browser address
https://np.nptrade24.com/api/v1/market-research?topic=cornering&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/market-research?topic=cornering" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"topic": "cornering",
"about": "stocks a few brokers are building large positions in (share of float held by the top brokers)",
"data": {
"stocks": [
{
"symbol": "CFCL",
"name": "Central Finance Co. Ltd.",
"sector": "finance",
"grade": "D",
"dump_risk": 93,
"ltp": 598,
"level": "Extreme",
"phase": "Accumulation",
"severity": "high",
"evidence": 0.243,
"held_float": 0.1728,
"acc90": 0.071,
"p30": 0.0491,
"p90": -0.0508,
"brokers": 5,
"top_broker": "88",
"top_name": "Blue Chip Securities Ltd",
"top_lift": 17.1345,
"top_avg_buy": 629.4474,
"float_known": true,
"hidden": false,
"outside_heavy": false,
"outside30": 0.032
},
{
"symbol": "SHL",
"name": "Soaltee Hotel Limited",
"sector": "hotel",
"grade": "B",
"dump_risk": 47,
"ltp": 545,
"level": "Extreme",
"phase": "Accumulation",
"severity": "high",
"evidence": 0.243,
"held_float": 0.1713,
"acc90": 0.0979,
"p30": 0.0583,
"p90": 0.1055,
"brokers": 5,
"top_broker": "16",
"top_name": "Primo Securities (PVT) Ltd.",
"top_lift": 6.6773,
"top_avg_buy": 504.3547,
"float_known": true,
"hidden": false,
"outside_heavy": true,
"outside30": 0.0567
},
"... 23 more"
],
"evidence": {
"base": 0.045,
"watch": 0.102,
"medium": 0.144,
"high": 0.243,
"markup": 0.312,
"markup_high": 0.5,
"quiet": 0.062,
"runup_alone": 0.087,
"sample": 6972,
"period": "2023-2026",
"hidden": 0.191,
"hidden_high": 0.259,
"cornered_no_outside": 0.082,
"outside_heavy": 0.185,
"transfer_sample": 6972
}
},
"note": "MacroLens NP research, not investment advice."
},
"as_of": "2026-11-06"
}

Portfolio

GET/portfolio-risk

Portfolio risk, as a fund's risk desk would see it: value, concentration (effective number of holdings), sector weights, volatility against NEPSE, beta, 1-day and 1-month value at risk, the worst drawdown, which holdings carry most of the risk, warning signs and the correlation between holdings.

Parameters
holdings string required - Symbol, shares and (optional) price paid, holdings separated by ";" - e.g. NABIL 200 520;NTC 50;UPPER 300 210.
Example - browser address
https://np.nptrade24.com/api/v1/portfolio-risk?holdings=NABIL+200+520%3BNTC+50&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/portfolio-risk?holdings=NABIL+200+520%3BNTC+50" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"analysis": {
"total": 156675,
"cost": 104000,
"cost_covered": 109800,
"concentration": {
"biggest": 0.7008,
"biggest_symbol": "NABIL",
"top3": 1,
"effective": 1.7222
},
"sectors": [
{
"sector": "bank",
"mine": 0.7008,
"market": 0.2721,
"tilt": 0.4288
},
{
"sector": "others",
"mine": 0.2992,
"market": 0.0821,
"tilt": 0.2171
},
"... 8 more"
],
"warnings": [],
"quality": {
"upside": -0.1391,
"div_yield": 2.336
},
"risk": {
"days": 245,
"from": "2025-10-14",
"to": "2026-11-06",
"vol": 0.1156,
"market_vol": 0.1489,
"diversification": 1.1635,
"beta": 0.5826,
"nepse_minus_10": -9127.9931,
"var_day": 0.0125,
"cvar_day": 0.0146,
"var_month": 0.0287,
"drawdown": -0.0687,
"year_return": 0.125,
"market_return": 0.0503,
"nepse_worst_month": {
"market": -0.0607,
"portfolio": -0.0192,
"to": "2026-09-01"
},
"holdings": {
"NABIL": {
"vol": 0.1378,
"beta": 0.662,
"risk_share": 0.7954,
"traded": 0.9265
},
"NTC": {
"vol": 0.1266,
"beta": 0.3967,
"risk_share": 0.2046,
"traded": 0.9102
}
},
"correlation": {
"NABIL": {
"NABIL": 1,
"NTC": 0.3543
},
"NTC": {
"NABIL": 0.3543,
"NTC": 1
}
},
"path": [
[
"2025-10-15",
-0.35,
"... 1 more"
],
[
"2025-10-16",
-0.25,
"... 1 more"
],
"... 243 more"
]
},
"rows": [
{
"symbol": "NABIL",
"qty": 200,
"cost": 520,
"company": {
"symbol": "NABIL",
"name": "Nabil Bank Limited",
"sector": "bank",
"verdict": "WATCH",
"score": 38,
"grade": "BBB",
"composite": 62,
"outlook": "Stable",
"ltp": 549,
"day_change": -0.18,
"pe": 18.0949,
"pb": 2.3472,
"roe": 12.97,
"eps": 30.34,
"div_yield": 1.9672,
"npl": 4.06,
"car": 11.67,
"mcap": 155970059206.5,
"fv_mid": 378.5952,
"upside": -0.3104,
"dump_risk": 1,
"dump_level": "Low",
"red_flags": 0,
"sector_rank": 7,
... (the full answer continues)

Mutual funds

GET/mutual-funds

The mutual fund discount tracker: each closed-end fund's market price against its NAV - the discount or premium and how it compares with the fund's own normal. With a symbol: that fund, with its history.

Parameters
symbol string - Optional: one fund's symbol, e.g. NIBLSF.
Example - browser address
https://np.nptrade24.com/api/v1/mutual-funds?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/mutual-funds" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"count": 45,
"median_discount": -0.0776,
"below_nav": 44,
"as_of": "2026-10-23",
"funds": [
{
"symbol": "NICFC",
"name": "NIC Asia Flexi Cap Fund",
"size": 1020000000,
"maturity": "2029-06-15",
"years_left": 2.6,
"price": 9.02,
"price_date": "2026-10-27",
"nav": 10.16,
"nav_date": "2026-10-23",
"monthly_nav": 10.16,
"monthly_date": "Ashwin 2083",
"discount": -0.1122,
"normal": -0.1147,
"vs_normal": 0.0025,
"to_maturity": 0.0469,
"nav_1y": 0.0583
},
{
"symbol": "KSY",
"name": "Kumari Sabal Yojana",
"size": 744750700,
"maturity": "2034-03-19",
"years_left": 7.35,
"price": 9.01,
"price_date": "2026-10-27",
"nav": 10.08,
"nav_date": "2026-10-23",
"monthly_nav": 10.09,
"monthly_date": "Ashwin 2083",
"discount": -0.1062,
"normal": -0.1158,
"vs_normal": 0.0096,
"to_maturity": 0.0154,
"nav_1y": 0.0701
},
"... 43 more"
]
},
"as_of": "2026-11-06"
}

Floorsheet & brokers

GET/floorsheet-trades

The floorsheet trade by trade for one day: contract, time, symbol, buyer and seller broker, quantity, rate and amount, with the day's summary - filtered like the Floorsheet page, a page at a time.

Parameters
date string - A trading day, YYYY-MM-DD (default the latest; days_available lists the rest).
symbol string - Only this stock.
buyer string - Buyer broker number.
seller string - Seller broker number.
broker string - A broker on either side.
sector string - Only this sector key.
qty_min number - Smallest quantity.
amount_min number - Smallest amount in Rs.
time_from string - From HH:MM.
time_to string - To HH:MM.
cross boolean - 1 for crossed trades only (the same broker on both sides).
large boolean - 1 for large trades only.
sort string - One of: trade_time, symbol, qty, rate, amount.
dir string - asc or desc.
page integer - Page number, default 1.
Example - browser address
https://np.nptrade24.com/api/v1/floorsheet-trades?symbol=NABIL&api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/floorsheet-trades?symbol=NABIL" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"date": "2026-11-06",
"summary": {
"trades": "211",
"qty": 21117,
"amount": 11631469.3,
"symbols": 1,
"biggest": 1032240,
"crosses": "9",
"buyers": 46,
"sellers": 40
},
"page": 1,
"pages": 3,
"total": 211,
"trades": [
{
"contract": 2026110601003717,
"trade_time": "13:16:03",
"symbol": "NABIL",
"sector": "bank",
"buyer": "44",
"seller": "42",
"qty": 1870,
"rate": 552,
"amount": 1032240
},
{
"contract": 2026110601006688,
"trade_time": "14:55:01",
"symbol": "NABIL",
"sector": "bank",
"buyer": "4",
"seller": "4",
"qty": 1149,
"rate": 550,
"amount": 631950
},
"... 98 more"
],
"days_available": [
"2026-11-06",
"2026-11-05",
"... 12 more"
]
},
"as_of": "2026-11-06"
}
GET/floorsheet

The NEPSE floorsheet, broker by broker, over the last few trading days: with a symbol - which brokers bought and sold it (and the 20-day broker-flow reading); with a broker number - what that broker bought and sold and with whom; with neither - the busiest brokers and stocks.

Parameters
symbol string - A NEPSE symbol, e.g. "NABIL".
broker string - Optional broker number, e.g. "58".
days integer - Trading days back, default 5. 1 to 60.
limit integer - How many rows of a long list (default 25). 1 to 100.
Example - browser address
https://np.nptrade24.com/api/v1/floorsheet?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/floorsheet" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"from": "2026-11-02",
"to": "2026-11-06",
"trading_days": 5,
"busiest_brokers": [
{
"broker": "58",
"buy_qty": 6298031,
"buy_amount": 2331798240.11,
"buy_trades": "24369",
"sell_qty": 6810330,
"sell_amount": 2582988479.18,
"sell_trades": "32922",
"cross_qty": 1259373,
"stocks": 353,
"net_qty": -512299,
"net_amount": -251190239.07,
"turnover": 4914786719.29,
"trades": 57291,
"name": "Naasa Securities Co. Ltd."
},
{
"broker": "44",
"buy_qty": 3284106,
"buy_amount": 1129751922.35,
"buy_trades": "4953",
"sell_qty": 3764850,
"sell_amount": 1053535641.6,
"sell_trades": "6245",
"cross_qty": 251694,
"stocks": 272,
"net_qty": -480744,
"net_amount": 76216280.75,
"turnover": 2183287563.95,
"trades": 11198,
"name": "Dynamic Money Managers Securities Pvt. Ltd."
},
"... 13 more"
],
"busiest_stocks": [
{
"symbol": "SGHC",
"sector": "hydro",
"qty": 3463559,
"amount": 1089689551.4,
"trades": 4001,
"buyers": 85,
"sellers": 86,
"top3_buy": 0.4279,
"top3_sell": 0.7775,
"cross_share": 0.0552
},
{
"symbol": "GHL",
"sector": "hydro",
"qty": 2957712,
"amount": 979361789.9,
"trades": 4220,
"buyers": 84,
"sellers": 87,
"top3_buy": 0.3314,
"top3_sell": 0.2304,
"cross_share": 0.0156
},
"... 13 more"
],
"note": "Floorsheet trades between brokers; transfers between demat accounts (BO to BO) don't show here."
},
"as_of": "2026-11-06"
}

IPOs & fixed income

GET/ipo-check

Every recent prospectus read: its risk signs and verdict, what similar past IPOs did, and each past IPO's listing record.

Example - browser address
https://np.nptrade24.com/api/v1/ipo-check?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/ipo-check" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"cards": [
{
"slug": "him-parbat-hydro",
"company": "Him Parbat Hydro Ltd",
"title": "Him Parbat Hydro Ltd.- General Public",
"date": "2026-10-27",
"kind": "IPO",
"url": "https://www.sebon.gov.np/uploads/2026/10/27/UbIbPPPCQ8SLgmMWRm2hQBcuoRrCaEQsF2cjeXWM.pdf",
"sector": "hydro",
"symbol": null,
"status": "ok",
"problems": [],
"rating": {
"raw": "[ICRANP-IR] BB+",
"agency": "ICRA Nepal",
"grade": "BB+",
"rank": 4
},
"group": "BB group",
"summary": {
"columns": [
{
"label": "2080/81",
"kind": "actual"
},
{
"label": "2081/82",
"kind": "actual"
},
"... 4 more"
],
"rows": {
"nw_per_share": [
99.73,
99.68,
"... 4 more"
],
"eps": [
0,
-0.05,
"... 4 more"
],
"accumulated": [
-3000,
-3565,
"... 4 more"
]
},
"guessed": false
},
"project": [],
"signs": [
{
"tone": "bad",
"title": "Credit rating BB+ - moderate risk of default",
"detail": "ICRA Nepal rated the issuer BB+ ([ICRANP-IR] BB+): below the 'adequate safety' grades (BBB- and up)."
},
{
"tone": "bad",
"title": "Losses in 1 of the last 3 audited years",
"detail": "EPS: 2080/81: Rs 0.00, 2081/82: Rs -0.05, 2082/83: Rs 15.48."
},
"... 1 more"
],
"points": 2.5,
"verdict": "Moderate risk",
"outcome": null,
"issues": [],
"expect": {
"group": "IPOs with the same verdict",
"n": 13,
"lot": 10,
"cost": 1000,
"day1": {
"median": 2300,
"p25": 1970,
"p75": 2450
},
"y1": {
"median": 5700,
"n": 7
},
"fall_from_high": -0.3749,
"below_1y": 0,
"below_n": 7
}
},
{
"slug": "beni-hydropower-project",
"company": "Beni Hydropower Project Limited",
"title": "Beni Hydropower Project Limited;- General Public",
"date": "2026-09-07",
"kind": "IPO",
"url": "https://www.sebon.gov.np/uploads/2026/09/07/KayrbyCGmReZXvZuD97zCMfoyqIT0yQihDZxX1Rv.pdf",
"sector": "hydro",
"symbol": "BENH",
"status": "ok",
"problems": [],
"rating": {
"raw": "[ICRANP-IR] BB+",
"agency": "ICRA Nepal",
"grade": "BB+",
"rank": 4
},
"group": "BB group",
... (the full answer continues)
GET/ipos

IPOs, FPOs and right shares open now and opening soon, plus the IPO check verdicts read from SEBON prospectuses (risk signs and points).

Example - browser address
https://np.nptrade24.com/api/v1/ipos?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/ipos" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"open": [
{
"type_name": "IPO (migrant workers)",
"symbol": "HPHL",
"company": "Him Parbat Hydropower Limited",
"sector": null,
"units": 422500,
"price": 100,
"opening": "2026-10-28",
"closing": "2026-11-02",
"manager": "Citizens Capital Limited",
"ratio": null
},
{
"type_name": "IPO (local)",
"symbol": "HPHL",
"company": "Him Parbat Hydropower Limited",
"sector": null,
"units": 1690000,
"price": 100,
"opening": "2026-10-28",
"closing": "2026-11-11",
"manager": "Citizens Capital Limited",
"ratio": null
}
],
"opening_soon": [
{
"type_name": "Mutual fund",
"symbol": "C50MF",
"company": "Citizens Super 50",
"sector": null,
"units": 100000000,
"price": 10,
"opening": "2026-11-18",
"closing": "2026-11-23",
"manager": "Citizens Capital Limited",
"ratio": null
}
],
"ipo_checks": [
{
"company": "Him Parbat Hydro Ltd",
"sector": "hydro",
"symbol": null,
"status": "ok",
"rating": {
"raw": "[ICRANP-IR] BB+",
"agency": "ICRA Nepal",
"grade": "BB+",
"rank": 4
},
"summary": {
"columns": [
{
"label": "2080/81",
"kind": "actual"
},
{
"label": "2081/82",
"kind": "actual"
},
"... 4 more"
],
"rows": {
"nw_per_share": [
99.73,
99.68,
"... 4 more"
],
"eps": [
0,
-0.05,
"... 4 more"
],
"accumulated": [
-3000,
-3565,
"... 4 more"
]
},
"guessed": false
},
"signs": [
{
"tone": "bad",
"title": "Credit rating BB+ - moderate risk of default",
"detail": "ICRA Nepal rated the issuer BB+ ([ICRANP-IR] BB+): below the 'adequate safety' grades (BBB- and up)."
},
{
"tone": "bad",
"title": "Losses in 1 of the last 3 audited years",
"detail": "EPS: 2080/81: Rs 0.00, 2081/82: Rs -0.05, 2082/83: Rs 15.48."
},
"... 1 more"
],
"points": 2.5,
"verdict": "Moderate risk"
},
{
"company": "Beni Hydropower Project Limited",
"sector": "hydro",
"symbol": "BENH",
"status": "ok",
"rating": {
"raw": "[ICRANP-IR] BB+",
"agency": "ICRA Nepal",
"grade": "BB+",
"rank": 4
},
"summary": {
"columns": [
... (the full answer continues)
GET/debentures

Debentures and bonds listed on NEPSE: coupon, price, yield to maturity, years left, how often each trades and its risks - or one (symbol) with what Rs 1 lakh made (bought at listing / sold at the peak / bought at the low). Also new debenture issues and the bank deposit / T-bill rates to compare.

Parameters
symbol string - Optional debenture symbol, e.g. "NBLD87".
limit integer - How many rows of a long list (default 25). 1 to 100.
Example - browser address
https://np.nptrade24.com/api/v1/debentures?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/debentures" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"as_of": "2026-11-10",
"stats": {
"listed": 56,
"trading": 40,
"median_ytm": 4.78,
"matured": 35
},
"compare": {
"bank_deposit_rate": 3.1512,
"tbill_91_day": 2.3247
},
"trading": [
{
"symbol": "NMBD87/88",
"name": "8.50% NMB Rinpatra 2087/88",
"coupon": 8.5,
"maturity": "2031-01-15",
"maturity_bs": "2087/88",
"years_left": 4.18,
"price": 1075.1,
"price_date": "2026-11-04",
"liquidity": {
"days": 60,
"turnover": 13558949.4483
},
"status": "trading",
"current_yield": 7.91,
"ytm": 6.43,
"risk_levels": {
"credit": "low",
"liquidity": "low",
"rates": "medium",
"premium": "medium",
"terms": "medium"
},
"issuer": "NMB"
},
{
"symbol": "MBLD87",
"name": "8.50% Machhapuchchhre Debenture 2087",
"coupon": 8.5,
"maturity": "2030-10-15",
"maturity_bs": "2087",
"years_left": 3.93,
"price": 1082,
"price_date": "2026-11-04",
"liquidity": {
"days": 49,
"turnover": 3524091.7429
},
"status": "trading",
"current_yield": 7.86,
"ytm": 6.12,
"risk_levels": {
"credit": "high",
"liquidity": "medium",
"rates": "medium",
"premium": "medium",
"terms": "medium"
},
"issuer": "MBL"
},
"... 46 more"
],
"new_issues": [
{
"symbol": "RBBLD89",
"name": "6% RBBL Debenture 2089",
"coupon": 6,
"maturity": "2032-10-15",
"maturity_bs": "2089",
"years": 5.9,
"units": 3000000,
"price": 1000,
"opening": "2026-10-15",
"closing": "2026-10-29",
"listing": null,
"status": "closed"
}
]
},
"as_of": "2026-11-06"
}

Global

GET/cot

COT (Commitments of Traders) positioning of big money in gold, silver, platinum and crude oil futures: direction, crowding (COT Index), weekly changes, plus the US 10-year yield read.

Example - browser address
https://np.nptrade24.com/api/v1/cot?api_key=mlnp_<your key>
Example - header
curl "https://np.nptrade24.com/api/v1/cot" \
-H "Authorization: Bearer mlnp_<your key>"
Example response - real, trimmed
{
"data": {
"markets": [
{
"date": "2026-11-03",
"net": 179548,
"long": 220530,
"short": 40982,
"longPct": 84.3,
"chg1": -6903,
"chg4": -30787,
"streak": 8,
"oi": 399169,
"oi4": 0.7725,
"index3y": 26,
"index1y": 26,
"stance": "net long",
"zone": "neutral",
"flow": [
"Funds cutting",
"Speculators have reduced their net long over the last four weeks."
],
"history": [
{
"date": "2026-11-03",
"long": 220530,
"short": 40982,
"net": 179548,
"oi": 399169,
"chg_long": -3194,
"chg_short": 3709,
"d_long": -3194,
"d_short": 3709,
"d_net": -6903,
"d_oi": 2359,
"long_pct": 84.3
},
{
"date": "2026-10-27",
"long": 223724,
"short": 37273,
"net": 186451,
"oi": 396810,
"chg_long": -13418,
"chg_short": -4,
"d_long": -13418,
"d_short": -4,
"d_net": -13414,
"d_oi": -5469,
"long_pct": 85.7
},
"... 6 more"
],
"week": {
"date": "2026-11-03",
"long": 220530,
"short": 40982,
"net": 179548,
"oi": 399169,
"chg_long": -3194,
"chg_short": 3709,
"d_long": -3194,
"d_short": 3709,
"d_net": -6903,
"d_oi": 2359,
"long_pct": 84.3
},
"netHigh52": false,
"netLow52": false,
"symbol": "GOLD",
"name": "Gold",
"why": "Sets the gold price in Nepal - the daily rate follows the international price and the rupee."
},
{
"date": "2026-11-03",
"net": 21251,
"long": 37002,
"short": 15751,
"longPct": 70.1,
"chg1": 1548,
"chg4": -1902,
"streak": 1,
"oi": 115583,
"oi4": 9.9429,
"index3y": 16,
"index1y": 6,
"stance": "net long",
"zone": "crowded-short",
"flow": [
"Funds selling, new shorts opening",
"The net fell while open interest rose - new short positions; conviction on the selling side."
],
"history": [
{
"date": "2026-11-03",
"long": 37002,
"short": 15751,
"net": 21251,
"oi": 115583,
"chg_long": 1369,
"chg_short": -179,
"d_long": 1369,
"d_short": -179,
"d_net": 1548,
"d_oi": -643,
"long_pct": 70.1
},
{
"date": "2026-10-27",
"long": 35633,
"short": 15930,
... (the full answer continues)
7

Fair use

The data is for your organisation's own research and products under its Institutional plan. Republishing it as a public feed, reselling it or building a competing public service from it needs a written agreement.

Prices are end-of-day and the readings update a few times a day - a research feed, not an execution feed. Nothing returned is a recommendation to buy or sell: see the Methodology, the Terms and the Risk disclosure.
Talk to us about Institutional