API reference · v5 MEXC Copy Trading API MEXC futures copy trading: the leaderboard's tabs, profiles, performance, open positions with live PnL, and closed positions.
Base URL https://api.kopyon.com/v5/mexc-copy-trading/ · send your key in the X-API-KEY header · trader id: The code in a trader's MEXC URL, or their 8-digit uid.
Get a free API key · Interactive reference with Try it · Authentication, paging and errors
traders TraderstraderSearch Search traderstraderProfile Trader profileperformance PerformancetraderChart ChartopenPositions Open positionspositionHistory Position historyTraders GET /v5/mexc-copy-trading/traders
MEXC's futures lead traders and their figures over a period.
Query parameters Name Type Description periodrequired enum What the figures cover: 7, 30 or 90 days, or ALL7D, 30D, 90D, ALL sortByenumdefault overall Which of MEXC's leaderboard tabs: overall, ROI, PnL, copiers, or the new tradersoverall, roi, pnl, copiers, newTraders pageintdefault 1 Page number rowsintdefault 20 Rows per page1 to 50
Response fields, in data Field Type Description traders[]always array traders[].traderIdalways string The trader's id at the source; other operations take it as traderId traders[].namealways string Display name traders[].avatarUrlstring traders[].roinumber traders[].pnlnumber traders[].sourceDetails.equityonly MEXC traders[].aumnumber traders[].winRatenumber traders[].copierPnlnumber traders[].copiersnumber Current copiers traders[].maxCopiersnumber traders[].profitSharenumber hasMorealways boolean true when another page follows totalalways number
Example curl -H "X-API-KEY: $KOPYON_KEY" \
"https://api.kopyon.com/v5/mexc-copy-trading/traders?period=7D" {
"data" : {
"traders" : [
{
"traderId" : "03923304" ,
"name" : "Scalp daily as routine " ,
"avatarUrl" : "https://public.mocortech.com/banner/F20241129180904043gzi84gxNdLPGwo.png" ,
"roi" : 6.0145 ,
"pnl" : 8181.8922230005 ,
"winRate" : 0.6666 ,
"copiers" : 218 ,
"maxCopiers" : 1000 ,
"copierPnl" : -3072.297228767512 ,
"aum" : 40311.9249 ,
"profitShare" : 0.15 ,
"sourceDetails" : {}
},
{
"traderId" : "11267967" ,
"name" : "BigBossss" ,
"avatarUrl" : "https://public.p2primeglobal.com/banner/F20260626103336339wf0gB5QNtBZEmB.png" ,
"roi" : 1.7479 ,
"pnl" : 1382.26681 ,
"winRate" : 0.7777 ,
"copiers" : 3 ,
"maxCopiers" : 1000 ,
"copierPnl" : 54.35455447548 ,
"aum" : 338.601 ,
"profitShare" : 0.15 ,
"sourceDetails" : {
"equity" : 0
}
},
{
"traderId" : "71631996" ,
"name" : "諸葛孔鏘孔孔鏘" ,
"avatarUrl" : "https://public.mocortech.com/banner/F20241129180903897wAEfT8y5WLfF2J.png" ,
"roi" : 1.1564 ,
"pnl" : 5154.22322 ,
"winRate" : 0.575 ,
"copiers" : 3 ,
"maxCopiers" : 1000 ,
"copierPnl" : -104.87395499 ,
"aum" : 550 ,
"profitShare" : 0.1 ,
"sourceDetails" : {
"equity" : 0
}
}
],
"hasMore" : true ,
"total" : 10142
}
} Search traders GET /v5/mexc-copy-trading/traderSearch
Lead traders whose name contains this, in MEXC's overall order, with all-time figures.
Query parameters Name Type Description namerequired string Part of the trader's name pageintdefault 1 Page number rowsintdefault 20 Rows per page1 to 50
Response fields, in data Field Type Description traders[]always array traders[].traderIdalways string The trader's id at the source; other operations take it as traderId traders[].namealways string Display name traders[].avatarUrlstring traders[].roinumber traders[].pnlnumber traders[].sourceDetails.equityonly MEXC traders[].aumnumber traders[].winRatenumber traders[].copierPnlnumber traders[].copiersnumber Current copiers traders[].maxCopiersnumber traders[].profitSharenumber hasMorealways boolean true when another page follows totalalways number
Example curl -H "X-API-KEY: $KOPYON_KEY" \
"https://api.kopyon.com/v5/mexc-copy-trading/traderSearch?name=Scal" {
"data" : {
"traders" : [
{
"traderId" : "03923304" ,
"name" : "Scalp daily as routine " ,
"avatarUrl" : "https://public.mocortech.com/banner/F20241129180904043gzi84gxNdLPGwo.png" ,
"roi" : 6.0145 ,
"pnl" : 8181.8922230005 ,
"winRate" : 0.6666 ,
"copiers" : 218 ,
"maxCopiers" : 1000 ,
"copierPnl" : -3072.297228767512 ,
"aum" : 40311.9249 ,
"profitShare" : 0.15 ,
"sourceDetails" : {}
},
{
"traderId" : "51630242" ,
"name" : "Gxx Scalping Trader" ,
"avatarUrl" : "https://public.mocortech.com/banner/F20241129180903897wAEfT8y5WLfF2J.png" ,
"roi" : 0.0625 ,
"pnl" : 1193.87949 ,
"winRate" : 0.6666 ,
"copiers" : 0 ,
"maxCopiers" : 1000 ,
"copierPnl" : 0 ,
"aum" : 0 ,
"profitShare" : 0.1 ,
"sourceDetails" : {
"equity" : 0
}
},
{
"traderId" : "98903679" ,
"name" : "Blitz Scalper" ,
"avatarUrl" : "https://public.mocortech.com/banner/F20241129180903897wAEfT8y5WLfF2J.png" ,
"roi" : 0.0091 ,
"pnl" : 8.285 ,
"winRate" : 0.4782 ,
"copiers" : 0 ,
"maxCopiers" : 1000 ,
"copierPnl" : 0 ,
"aum" : 0 ,
"profitShare" : 0.1 ,
"sourceDetails" : {
"equity" : 0
}
}
],
"hasMore" : true ,
"total" : 30
}
} Trader profile GET /v5/mexc-copy-trading/traderProfile
The trader's name, bio, copiers and profit share.
Query parameters Name Type Description traderIdrequired string The lead trader's 8-digit uid, from traders, or the code in their MEXC URL (/copyTrade/leader/32C6A56), which is the uid in hexadecimal
Response fields, in data Field Type Description traderIdalways string namestring avatarUrlstring biostring sourceDetails.daysActiveonly MEXC sourceDetails.equityonly MEXC sourceDetails.minCopyAmountonly MEXC sourceDetails.positionsHiddenonly MEXC copiersnumber maxCopiersnumber totalCopiersnumber aumnumber profitSharenumber
Example curl -H "X-API-KEY: $KOPYON_KEY" \
"https://api.kopyon.com/v5/mexc-copy-trading/traderProfile?traderId=03923304" {
"data" : {
"traderId" : "03923304" ,
"name" : "Scalp daily as routine " ,
"avatarUrl" : "https://public.mocortech.com/banner/F20241129180904043gzi84gxNdLPGwo.png" ,
"bio" : "\nHello everyone, Please continue to follow patiently.\nLess positions more profit 🤝\nThank you very much for supporting me ❤️" ,
"copiers" : 218 ,
"maxCopiers" : 1000 ,
"totalCopiers" : 2659 ,
"profitShare" : 0.15 ,
"aum" : 40311.9249 ,
"sourceDetails" : {
"daysActive" : 1016 ,
"minCopyAmount" : 0.01 ,
"positionsHidden" : true
}
}
} Performance GET /v5/mexc-copy-trading/performance
Return, PnL, win rate, drawdown, Sharpe ratio, trades and what copiers made over a period.
Query parameters Name Type Description traderIdrequired string The lead trader's 8-digit uid, from traders, or the code in their MEXC URL (/copyTrade/leader/32C6A56), which is the uid in hexadecimal periodrequired enum What the figures cover: 7, 30 or 90 days, or ALL7D, 30D, 90D, ALL
Response fields, in data Field Type Description periodalways string roinumber pnlnumber maxDrawdownnumber copierPnlnumber winRatenumber winsnumber tradesnumber sharpeRationumber lossesnumber
Example curl -H "X-API-KEY: $KOPYON_KEY" \
"https://api.kopyon.com/v5/mexc-copy-trading/performance?traderId=03923304&period=7D" {
"data" : {
"period" : "7D" ,
"roi" : 6.0145 ,
"pnl" : 8181.8922230005 ,
"winRate" : 0.6666 ,
"maxDrawdown" : 0 ,
"copierPnl" : -5305.80329779889 ,
"trades" : 21 ,
"wins" : 18 ,
"losses" : 9
}
} Chart GET /v5/mexc-copy-trading/traderChart
Cumulative ROI or PnL over the period, one point a day, oldest first.
Query parameters Name Type Description traderIdrequired string The lead trader's 8-digit uid, from traders, or the code in their MEXC URL (/copyTrade/leader/32C6A56), which is the uid in hexadecimal periodrequired enum What the figures cover: 7, 30 or 90 days, or ALL7D, 30D, 90D, ALL metricenumdefault ROI ROI as a fraction, or PnL in USDTROI, PNL
Response fields, in data Field Type Description metricalways string What the points measure: ROI, PNL or BALANCE points[]always array points[].timestampalways number Point time, in Unix milliseconds points[].valuealways number
Example curl -H "X-API-KEY: $KOPYON_KEY" \
"https://api.kopyon.com/v5/mexc-copy-trading/traderChart?traderId=03923304&period=7D" {
"data" : {
"metric" : "ROI" ,
"points" : [
{
"timestamp" : 1791648000000 ,
"value" : 0
},
{
"timestamp" : 1791820800000 ,
"value" : 0.8971
},
{
"timestamp" : 1791907200000 ,
"value" : 6.0897
}
]
}
} Open positions GET /v5/mexc-copy-trading/openPositions
The trader's open positions, sizes in the base asset. MEXC sends no PnL: markPrice is its fair price, and unrealizedPnl and roi are worked out from it and the position's margin, as MEXC's site does. A trader can show them only to copiers; then positions is empty and hidden is true.
Query parameters Name Type Description traderIdrequired string The lead trader's 8-digit uid, from traders, or the code in their MEXC URL (/copyTrade/leader/32C6A56), which is the uid in hexadecimal
Response fields, in data Field Type Description positions[]always array positions[].symbolalways string positions[].sidealways LONG | SHORT positions[].sizenumber Position size, always positive; side gives the direction positions[].entryPricealways number positions[].markPricenumber The exchange's mark price positions[].leveragenumber positions[].marginModeISOLATED | CROSS positions[].unrealizedPnlnumber In pnlCurrency positions[].pnlCurrencystring positions[].marginnumber Margin the position uses, in pnlCurrency positions[].roinumber unrealizedPnl over margin, as a fraction. Where the exchange sends its own (KuCoin; BingX, over the opening margin), it is passed on and can differ from that ratio positions[].positionIdstring positions[].openedAtnumber positions[].fundingPnlnumber positions[].tradingFeenumber Fee paid to open, as a positive cost hiddenalways boolean true when the trader shows positions only to copiers
Example curl -H "X-API-KEY: $KOPYON_KEY" \
"https://api.kopyon.com/v5/mexc-copy-trading/openPositions?traderId=71631996" {
"data" : {
"positions" : [
{
"symbol" : "ZECUSDT" ,
"side" : "LONG" ,
"size" : 5.85 ,
"entryPrice" : 1152.6349401709401 ,
"leverage" : 100 ,
"marginMode" : "CROSS" ,
"positionId" : "1522241795" ,
"margin" : 69.447439296 ,
"openedAt" : 1792247574643 ,
"markPrice" : 1083.8 ,
"unrealizedPnl" : -402.6844 ,
"pnlCurrency" : "USDT" ,
"roi" : -5.7984052988 ,
"fundingPnl" : -1.5883691235 ,
"tradingFee" : 1.84857768 ,
"sourceDetails" : {}
},
{
"symbol" : "ETHUSDT" ,
"side" : "LONG" ,
"size" : 19.32 ,
"entryPrice" : 2412.3640890269153 ,
"leverage" : 100 ,
"marginMode" : "CROSS" ,
"positionId" : "1521877206" ,
"margin" : 475.830031456 ,
"openedAt" : 1792178202786 ,
"markPrice" : 2372.2 ,
"unrealizedPnl" : -775.9702 ,
"pnlCurrency" : "USDT" ,
"roi" : -1.6307718065 ,
"fundingPnl" : -7.6109009837 ,
"tradingFee" : 7.5409244 ,
"sourceDetails" : {}
},
{
"symbol" : "ETHUSDT" ,
"side" : "SHORT" ,
"size" : 4.12 ,
"entryPrice" : 2495.3986983630753 ,
"leverage" : 100 ,
"marginMode" : "CROSS" ,
"positionId" : "1514789428" ,
"margin" : 259.8121187424 ,
"openedAt" : 1792149154180 ,
"markPrice" : 2372.2 ,
"unrealizedPnl" : 507.5786372559 ,
"pnlCurrency" : "USDT" ,
"roi" : 1.9536372657 ,
"fundingPnl" : 20.135926655 ,
"tradingFee" : 106.3831026 ,
"sourceDetails" : {}
}
],
"hidden" : false
}
} Position history GET /v5/mexc-copy-trading/positionHistory
The trader's closed positions, newest first, sizes in the base asset, with gross PnL, funding, fees and net PnL. Hidden like openPositions.
Query parameters Name Type Description traderIdrequired string The lead trader's 8-digit uid, from traders, or the code in their MEXC URL (/copyTrade/leader/32C6A56), which is the uid in hexadecimal cursorstring The nextCursor of the previous answer; leave it out for the first page rowsintdefault 20 Rows per page1 to 50
Response fields, in data Field Type Description positions[]always array positions[].positionIdstring positions[].symbolalways string positions[].sideLONG | SHORT positions[].statusstring positions[].marginModeISOLATED | CROSS positions[].leveragenumber positions[].roinumber positions[].entryPricenumber positions[].closePricenumber positions[].openedAtalways number When the position opened, in Unix milliseconds positions[].closedAtnumber When the position closed, in Unix milliseconds positions[].updatedAtalways number Last change, in Unix milliseconds positions[].openedVolumenumber positions[].closedVolumenumber positions[].maxOpenInterestnumber positions[].grossPnlnumber positions[].fundingPnlnumber positions[].tradingFeenumber positions[].liquidationFeenumber positions[].netPnlnumber positions[].pnlCurrencystring nextCursorstring Present when the page came back full, so another may follow hiddenalways boolean true when the trader shows positions only to copiers
Example curl -H "X-API-KEY: $KOPYON_KEY" \
"https://api.kopyon.com/v5/mexc-copy-trading/positionHistory?traderId=71631996" {
"data" : {
"positions" : [
{
"positionId" : "1521553746" ,
"symbol" : "BTCUSDT" ,
"side" : "SHORT" ,
"marginMode" : "CROSS" ,
"leverage" : 100 ,
"entryPrice" : 82679.9 ,
"closePrice" : 81667.95 ,
"openedAt" : 1792149227000 ,
"closedAt" : 1792166119000 ,
"updatedAt" : 1792166119000 ,
"openedVolume" : 0.6716 ,
"closedVolume" : 0.6716 ,
"grossPnl" : 679.62562 ,
"fundingPnl" : 0 ,
"tradingFee" : 44.150406424 ,
"netPnl" : 635.475213576 ,
"pnlCurrency" : "USDT" ,
"sourceDetails" : {}
},
{
"positionId" : "1521017974" ,
"symbol" : "ETHUSDT" ,
"side" : "LONG" ,
"marginMode" : "CROSS" ,
"leverage" : 100 ,
"entryPrice" : 2417.5696301020407 ,
"closePrice" : 2477.99 ,
"openedAt" : 1792075404000 ,
"closedAt" : 1792149166000 ,
"updatedAt" : 1792149166000 ,
"openedVolume" : 7.84 ,
"closedVolume" : 7.84 ,
"grossPnl" : 473.6957 ,
"fundingPnl" : -2.0981613015 ,
"tradingFee" : 15.352475 ,
"netPnl" : 456.2450636985 ,
"pnlCurrency" : "USDT" ,
"sourceDetails" : {}
},
{
"positionId" : "1520670035" ,
"symbol" : "SOLUSDT" ,
"side" : "LONG" ,
"marginMode" : "CROSS" ,
"leverage" : 100 ,
"entryPrice" : 103.53 ,
"closePrice" : 101.98 ,
"openedAt" : 1792040661000 ,
"closedAt" : 1792043133000 ,
"updatedAt" : 1792043133000 ,
"openedVolume" : 89.4 ,
"closedVolume" : 89.4 ,
"grossPnl" : -138.57 ,
"fundingPnl" : 0 ,
"tradingFee" : 7.3490376 ,
"netPnl" : -145.9190376 ,
"pnlCurrency" : "USDT" ,
"sourceDetails" : {}
}
],
"nextCursor" : "MzZmNzQ3NDYzYzhhNDI3Mi4y" ,
"hidden" : false
}
} Stream and webhooks Paid plans can follow a trader in real time over wss://api.kopyon.com/v5/streamor through signed webhooks. Topics for this source:
openPositions: Open positions, whenever they changepositionEvents: Opened, increased, decreased, closedpositionHistory: Newly closed positionsStream messages and webhook signatures