NAV Navbar
json

Changelogs

Introduction

Communication Protocol

HTTPS Protocol.

Encoding

The request and response data code for all interfaces is formatted according to UTF-8. Content for responses in all interfaces is formatted according to JSON.

API Request Structure

Name Description Notes
API Address Address for API interface Eg. https://mapi.matrixport.com/fixed-income/api/v2/products
Public Parameters Universal parameters for all interfaces
Private Parameter Special parameters for each interface See each API interface description for details

API hosts (production)

Public Parameters

Public parameters are used for interface authentication. Unless otherwise necessary, these parameters will be omitted for each interface. Each request must contain these parameters unless stated otherwise.

Parameter Name Type Mandatory Limit Description
x-request-id string N - Globally unique trace id, used for tracing requests, Strongly recommended to pass in the request header.

Response Format Strings

All interface response values are formatted according to JSON. Unless otherwise stated, all request return values contain the following text strings:

Parameter Name Type Description
code int Interface call status, (ie. error code): 0: Normal, Others: Call error.
message string Error message is description of API errors
data object Results will return as defined by each interface

Authentication

please refer to this link

Strategy API

Product List For Clients

Parameter Name Type Mandatory Location Description
run_time_day integer N query Number of runtime days for fetched products
currency string N query Available currencies which the products supported: eg. USDT, USDC, BTC, ETH, DAI, DOGE, DOT, LTC. Empty values indicate products for all currencies
strategy_id string N query choose only the products that have the specified strategy id
is_collect BoolFlag(integer) N query Flag indicating if only collected/favorite products should be returned
sort_strategy_id string N query ID of sorting strategy
is_mine BoolFlag(integer) N query Flag indicating if only the private products created by the user should be returned
product_id string N query only choose the product that has the specific product id
recommendation_template_type integer N query Type of recommendation template, eg. RecommendationTemplateType=1,MyExclusiveTemplateType=2
roi string N query If this value is not empty, only the products that have larger roi would be choose
max_drawdown_since_inception string N query If this value is not empty, only the products that have less drop down since inception rate would be choose
is_invested BoolFlag(integer) N query Flag indicating if only products invested by the user should be fetched
is_viewed BoolFlag(integer) N query Flag indicating if only products which have been viewed by the user should be fetched
include_nav_chart BoolFlag(integer) N query Flag indicating if NAV chart should be included in the response
sort_rule integer N query Sorting rule for the products, for details please check enums part
sort_order integer N query Determine whether the fetched products should be sort in an asc or desc order eg.ProductSortOrderAsc=1, ProductSortOrderDesc=2
is_private_strategy BoolFlag(integer) N query Flag indicating if only private strategy products should be returned
not_included_currencies []string N query only choose the products of which the investment currencies are not in the not_included_currencies list
has_activity BoolFlag(integer) N query Flag indicating if only products with activity should be returned
limit integer N query maximum of products displayed in a page
offset integer N query the offset indicates the start count of products in a page, by default it is zero
#Using `curl` to send a POST request:
curl "https://mapi.matrixport.com/strategy/api/v2/products?currency=USDT&user_id=123&run_time_day=30&is_collect=true&sort_strategy_id=abc"
Parameter Name Type Description
code integer Response code
data.count integer Number of items
data.items array List of items
data.items.access_codes array List of access codes (only for private strategy)
data.items.access_codes.access_code_string string Access code string
data.items.access_codes.access_count integer Access count
data.items.access_codes.code_access_limit integer Code access limit
data.items.access_codes.invested integer Invested amount
data.items.access_codes.is_promotion boolean Is this code used for agent promotion
data.items.access_codes.note string Note
data.items.access_codes.personal_quota string Personal quota for investment using this code
data.items.access_codes.portfolio_id string Portfolio ID
data.items.access_codes.product_id string Product ID
data.items.access_codes.product_name string Product name
data.items.access_codes.user_id string User ID
data.items.apy string Annual percentage yield
data.items.apy1year string 1-year annual percentage yield
data.items.apy_180d string 180-day annual percentage yield
data.items.apy_30d string 30-day annual percentage yield
data.items.apy_7d string 7-day annual percentage yield
data.items.apy_90d string 90-day annual percentage yield
data.items.apy_display_rule integer APY display rule, used to control for details please check enums part
data.items.apy_time_milli integer the latest annual percentage yield time in milliseconds
data.items.aum string Assets under management
data.items.category_proportions array List of category proportions
data.items.category_proportions.category string Category eg. Spot, Futures, Idle
data.items.category_proportions.proportion string Proportion
data.items.category_proportions.value string Value
data.items.category_proportions.value_usd string Value in USD
data.items.close_period_start_time integer Close period start time
data.items.currency string Currency of the product
data.items.display_name array List of display names
data.items.display_name.language string Language code
data.items.display_name.text string Display name in the specified language
data.items.expected_apy string Expected APY
data.items.has_private_strategy_activated integer(BoolFlag) Has private strategy activated
data.items.inception_to_date_apy string Inception-to-date APY
data.items.invested integer Invested amount
data.items.is_available boolean Is available means whether product is visitable to user (only for private strategy)
data.items.is_collect integer(BoolFlag) Is this product collected by user
data.items.is_private_strategy integer(BoolFlag) Is private strategy
data.items.is_stop_raise integer(BoolFlag) Has the product in stop raising state
data.items.labels array List of labels for this product.
data.items.labels.language string Language code
data.items.labels.text string Label text in the specified language
data.items.listing_time integer Listing to the public time
data.items.max_drawdown_since_inception string Max drawdown since inception
data.items.minimum_activate_amount string Minimum subscription amount to activate this product(only for private strategy)
data.items.nav string Net asset value
data.items.nav_chart array List of NAV chart data
data.items.nav_chart.day_timestamp integer Day timestamp
data.items.nav_chart.nav string net asset value
data.items.number_of_x_day integer Number of x days,used in corporation with display rule to illustrate the apy to investor
data.items.pb_user_balance_usd string PB user balance in USD
data.items.pb_user_id string PB user ID
data.items.private_strategy_visibility integer Private strategy visibility. eg.PrivateStrategyVisibleToCodeHolder=0, PrivateStrategyFullyVisible=2
data.items.product_activity object Product promotion activity information
data.items.product_activity.activity_description array Activity description
data.items.product_activity.activity_description.language string Language code
data.items.product_activity.activity_description.text string Description text in the specified language
data.items.product_activity.activity_link array Activity link
data.items.product_activity.activity_link.language string Language code
data.items.product_activity.activity_link.text string Link text in the specified language
data.items.product_activity.activity_title array Activity title
data.items.product_activity.activity_title.language string Language code
data.items.product_activity.activity_title.text string Title text in the specified language
data.items.product_activity.end_time integer Activity End time
data.items.product_activity.icon_description array Activity Icon description
data.items.product_activity.icon_description.language string Language code
data.items.product_activity.icon_description.text string Icon description text in the specified language
data.items.product_activity.icon_url string Icon URL
data.items.product_activity.id integer Activity ID
data.items.product_activity.product_id string Product ID
data.items.product_activity.start_time integer Start time
data.items.product_activity.status integer Activity status. eg.ProductActivityStatusInActive=1, ProductActivityStatusActive=2, ProductActivityStatusExpired=3
data.items.product_id string Product ID
data.items.product_name string Product name
data.items.product_strategy object Customized product strategy info, used to display the investment strategy for the product, it could be aggressive or conservative
data.items.product_strategy.description array Product strategy description
data.items.product_strategy.description.language string Language code
data.items.product_strategy.description.text string Description text in the specified language
data.items.product_strategy.display_name array Product strategy display name
data.items.product_strategy.display_name.language string Language code
data.items.product_strategy.display_name.text string Display name in the specified language
data.items.product_strategy.introduce array Product strategy introduction
data.items.product_strategy.introduce.language string Language code
data.items.product_strategy.introduce.text string Introduction text in the specified language
data.items.product_strategy.strategy_id string Strategy ID
data.items.promotion_sentence array List of promotion sentences
data.items.promotion_sentence.language string Language code
data.items.promotion_sentence.text string Promotion sentence in the specified language
data.items.rcu_id integer risk control unit id,risk control unit can be regard as a minimum unit used to receive and process risk control information
data.items.return1year string 1-year return
data.items.return_180d string 180-day return
data.items.return_30d string 30-day return
data.items.return_7d string 7-day return
data.items.return_90d string 90-day return
data.items.return_since_inception string Return since inception
data.items.status integer Product Status. eg:ProductStatusUnListed=1, ProductStatusListed=2
data.items.strategy_id string Strategy ID
data.items.trading_scope array List of trading scopes, trading scopes means the type of currency or instrument the product manger would like to invest
data.items.trading_scope.language string Language code
data.items.trading_scope.text string Trading scope text in the specified language
data.items.volatility string Volatility of product
data.items.window_end_time integer The latest open window batch end time
data.items.window_start_time integer The latest open window batch start time
data.items.x_day_apy string x-day APY,the x is set by product operation team
data.items.yearly_sharpe_ratio string Yearly Sharpe ratio
data.items.ytd_return string Year-to-date return
message string Message providing additional information about the response
{
  // integer, response code indicating success or error
  "code": 0,
  // string, message providing additional information about the response
  "message": "",
  "data": {
    // integer, total number of products matching the query
    "count": 23,
    "items": [
      {
        // string, unique ID of the product
        "product_id": "6820591484295766016",
        // string, ID of the strategy associated with the product
        "strategy_id": "strategy_001",
        // string, name of the product
        "product_name": "USDT Fixed Interest M0121",
        "display_name": [
          {
            // string, language code
            "language": "en",
            // string, product name in the specified language
            "name": "USDT Fixed Interest M0121"
          }
        ],
        // int64, timestamp when the product was listed
        "listing_time": 1627021721000,
        // string, currency in which the product is denominated
        "currency": "USDT",
        // int64, RCU ID associated with the product
        "rcu_id": 12345,
        // object, details of the product's strategy (null if not applicable)
        "product_strategy": null,
        "apy_display_rule": {
          // integer, rule for displaying APY
          "type": 1
        },
        // integer, number of days for which the APY is calculated
        "number_of_x_day": 30,
        // decimal, expected annual percentage yield
        "expected_apy": "0.12",
        // decimal, year-to-date return
        "ytd_return": "0.1",
        // decimal, maximum drawdown since inception
        "max_drawdown_since_inception": "0.05",
        // decimal, yearly Sharpe ratio
        "yearly_sharpe_ratio": "1.5",
        // decimal, APY calculated over X days
        "x_day_apy": "0.08",
        // decimal, 7-day APY
        "apy_7d": "0.06",
        // decimal, 30-day APY
        "apy_30d": "0.07",
        // decimal, 90-day APY
        "apy_90d": "0.09",
        // decimal, 180-day APY
        "apy_180d": "0.1",
        // decimal, 1-year APY
        "apy1year": "0.11",
        // decimal, APY since inception
        "inception_to_date_apy": "0.12",
        // decimal, 7-day return
        "return_7d": "0.06",
        // decimal, 30-day return
        "return_30d": "0.07",
        // decimal, 90-day return
        "return_90d": "0.09",
        // decimal, 180-day return
        "return_180d": "0.1",
        // decimal, 1-year return
        "return1year": "0.11",
        // decimal, return since inception
        "return_since_inception": "0.12",
        // decimal, latest APY
        "apy": "0.12",
        // int64, timestamp of the latest APY calculation
        "apy_time_milli": 1627021721000,
        // decimal, volatility of the product
        "volatility": "0.2",
        "promotion_sentence": [
          {
            // string, language code
            "language": "en",
            // string, promotional sentence in the specified language
            "text": "High interest"
          }
        ],
        // boolean, flag indicating if the product is collected
        "is_collect": true,
        "labels": [
          [
            {
              // string, language code
              "language": "en",
              // string, label text in the specified language
              "text": "High interest"
            }
          ]
        ],
        // integer, status of the product: 0 - unknown, 1 - unlisted, 2 - listed
        "status": 2,
        // boolean, flag indicating if the product has stopped raising
        "is_stop_raise": false,
        // boolean, flag indicating if the product is a private strategy
        "is_private_strategy": false,
        // boolean, flag indicating if the private strategy has been activated
        "has_private_strategy_activated": false,
        // integer, visibility level of the private strategy
        "private_strategy_visibility": 1,
        // decimal, minimum amount required to activate the product
        "minimum_activate_amount": "100.0",
        // array, access codes for private portfolio (null if not applicable)
        "access_codes": null,
        // int64, timestamp when the close period starts
        "close_period_start_time": 1627021721000,
        "trading_scope": [
          {
            // string, language code
            "language": "en",
            // string, trading scope description in the specified language
            "text": "Global"
          }
        ],
        // int64, timestamp when the investment window starts
        "window_start_time": 1627021721000,
        // int64, timestamp when the investment window ends
        "window_end_time": 1627021721000,
        // decimal, net asset value of the product
        "nav": "1.0",
        // array, NAV chart data (null if not applicable)
        "nav_chart": null,
        // boolean, flag indicating if the product is available
        "is_available": true,
        // integer, amount invested in the product
        "invested": 1000,
        // decimal, assets under management
        "aum": "1000000.0",
        // object, product activity details (null if not applicable)
        "product_activity": null
      }
    ]
  }
}

This API endpoint retrieves product-related information by keyword search, supporting fuzzy or precise matching of product attributes (e.g., product code, name). It returns filtered product details such as basic information, strategy descriptions, yield data, and risk indicators.

Parameter Name Type Mandatory Location Description
keyword string Y query_string Search keyword, used to match product-related attributes (e.g., product code like "RESES")

Use curl to sends a GET request with the required keyword:

curl -X 'GET' \
  'https://mapi.matrixport.com/strategy/api/v2/product/range-search?keyword=RESES' \
  -H 'accept: application/json'

The response returns a structured JSON string containing status code, product search results (count, type, and detailed items), and additional message information.

Parameter Name Type Description
code integer Return code:
- 0: Request succeeded
- Non-0: Request failed (specific code corresponds to error type)
data object Core search result data, including count, type, and product list
data.count integer Total number of products matching the search keyword
data.items array List of matched product details, each element corresponds to one product
data.items[].product_id string Unique product ID (e.g., "7366442319878500352")
data.items[].product_code string Short product code (e.g., "RESES"), often used for quick identification
data.items[].strategy_id string Unique ID of the strategy associated with the product
data.items[].product_name string Full product name (e.g., "dawnBDDreserve-share-USDT pay")
data.items[].display_name array Multilingual product display name
data.items[].display_name[].language string Language code (e.g., "en-US", "zh-CN", "zh-TW")
data.items[].display_name[].text string Product name in the specified language
data.items[].listing_time integer Product listing timestamp (milliseconds since Unix epoch, e.g., 1716912000000)
data.items[].nav_start_time integer Net Asset Value (NAV) calculation start timestamp (0 means not started)
data.items[].currency string Product denomination currency (e.g., "USDT")
data.items[].rcu_id integer RCU (Risk Control Unit) ID, used for risk classification
data.items[].pb_user_id string Associated PB (Prime Broker) user ID
data.items[].product_strategy object Strategy details associated with the product
data.items[].product_strategy.strategy_id string Unique strategy ID (consistent with strategy_id above)
data.items[].product_strategy.display_name array Multilingual strategy name
data.items[].product_strategy.display_name[].language string Language code
data.items[].product_strategy.display_name[].text string Strategy name in the specified language (e.g., "Arbitrage Strategy" for en-US)
data.items[].product_strategy.description array Multilingual brief strategy description
data.items[].product_strategy.description[].language string Language code
data.items[].product_strategy.description[].text string Brief strategy intro (e.g., "Taking advantage of different pricing in the market.")
data.items[].product_strategy.introduce array Multilingual detailed strategy introduction (supports HTML tags like <p>)
data.items[].product_strategy.introduce[].language string Language code
data.items[].product_strategy.introduce[].text string Detailed strategy content (e.g., explanation of arbitrage methods)
data.items[].apy_display_rule integer APY (Annual Percentage Yield) display rule identifier
data.items[].number_of_x_day integer Reference day count for yield calculation (e.g., 1 for daily yield)
data.items[].expected_apy string Expected APY (e.g., "0" for no expected yield)
data.items[].apy_7d string 7-day APY
data.items[].apy_30d string 30-day APY
data.items[].apy_60d string 60-day APY
data.items[].apy_90d string 90-day APY
data.items[].apy_180d string 180-day APY
data.items[].apy1year string 1-year APY
data.items[].inception_to_date_apy string APY since product inception
data.items[].apy_ytd string Year-to-date (YTD) APY
data.items[].return_7d string 7-day return rate
data.items[].return_30d string 30-day return rate
data.items[].return_since_inception string Return rate since product inception
data.items[].ytd_return string Year-to-date (YTD) return rate
data.items[].max_drawdown_since_inception string Maximum drawdown since product inception
data.items[].yearly_sharpe_ratio string Annual Sharpe ratio (risk-adjusted return indicator)
data.items[].sharpe_ratio_7d string 7-day Sharpe ratio
data.items[].sortino_ratio string Sortino ratio (focuses on downside risk)
data.items[].volatility string Product volatility (measures price fluctuation)
data.items[].maximum_drawdown_7d string 7-day maximum drawdown
data.items[].risk_level integer Risk level (0 = low risk, higher values = higher risk; specific mapping depends on business rules)
data.items[].status integer Product status (e.g., 2 = active; specific value mapping depends on business definition)
data.items[].is_stop_raise integer Whether fund-raising is stopped:
- 2 = not stopped
- Other values = stopped
data.items[].is_private_strategy integer Whether it is a private strategy:
- 2 = public
- Other values = private
data.items[].is_available boolean Whether the product is available for search/operation
data.items[].is_purchasable boolean Whether the product is purchasable
data.items[].invested integer User's investment status (e.g., 0 = not invested)
data.items[].Other Info - -
data.items[].aum string Product AUM (Assets Under Management) in denomination currency
data.items[].aum_usd string Product AUM converted to USD
data.items[].minimum_activate_amount string Minimum activation amount (e.g., "0.0001" USDT)
data.items[].fund_manager_name string Fund manager name (empty if not set)
data.items[].nav string Latest Net Asset Value (NAV)
data.items[].latest_nav_time_milli integer Timestamp of the latest NAV update (0 means not updated)
data.items[].jump_url string Deep link for app navigation (e.g., Flutter route to product detail page)
message string Additional response information:
- Empty string: Request succeeded
- Non-empty: Error message or prompt (e.g., "Keyword cannot be empty")
{
  "code": 0,
  "data": {
    "count": 1,
    "type": 1,
    "items": [
      {
        "product_id": "7366442319878500352",
        "product_code": "RESES",
        "strategy_id": "7366442315147325440",
        "product_name": "dawnBDDreserve-share-USDT pay",
        "display_name": [
          {
            "language": "en-US",
            "text": "reserve-share-USDT pay"
          },
          {
            "language": "zh-CN",
            "text": "reserve-share-USDT pay"
          },
          {
            "language": "zh-TW",
            "text": "reserve-share-USDT pay"
          }
        ],
        "listing_time": 1716912000000,
        "nav_start_time": 0,
        "currency": "USDT",
        "rcu_id": 7880,
        "pb_user_id": "3156985",
        "product_strategy": {
          "strategy_id": "7366442315147325440",
          "display_name": [
            {
              "language": "en-US",
              "text": "Arbitrage Strategy"
            },
            {
              "language": "zh-CN",
              "text": "套利策略"
            },
            {
              "language": "zh-TW",
              "text": "套利策略"
            }
          ],
          "description": [
            {
              "language": "en-US",
              "text": "Taking advantage of different pricing in the market."
            },
            {
              "language": "zh-CN",
              "text": "利用市场的不同定价来获取风险较低的利润策略"
            },
            {
              "language": "zh-TW",
              "text": "利用市場的不同定價來獲取風險較低的利潤策略"
            }
          ],
          "introduce": [
            {
              "language": "en-US",
              "text": "<p>The Arbitrage strategy seeks to profit from market volatility by skilfully exploiting price differentials in the cryptocurrency market. The strategy encompasses various forms of arbitrage, including market arbitrage, cross-exchange arbitrage and spot arbitrage, to maximise market opportunities through real-time data analysis and execution of quick trades. Positions and strategies are dynamically adjusted to seek relatively stable returns while reducing market risk. This enables the cryptocurrency strategy to achieve relatively stable investment performance under different market conditions.</p>"
            },
            {
              "language": "zh-CN",
              "text": "<p>套利策略通过巧妙利用加密货币市场的价格差异,以期在市场波动中获得利润。该策略涵盖各种套利形式,包括市场套利、跨交易所套利和期现套利,通过实时数据分析和执行快速交易来最大程度地利用市场机会。通过动态调整仓位和策略,以追求相对稳定的回报,同时降低市场风险。这使得加密资币策略在不同市场状况下都能够实现较为稳定的投资表现。</p>"
            },
            {
              "language": "zh-TW",
              "text": "<p>套利策略通過巧妙利用加密貨幣市場的價格差異,以期在市場波動中獲得利潤。該策略涵蓋各種套利形式,包括市場套利、跨交易所套利和期現套利,通過實時數據分析和執行快速交易來最大程度地利用市場機會。通過動態調整倉位和策略,以追求相對穩定的回報,同時降低市場風險。這使得加密資幣策略在不同市場狀況下都能夠實現較為穩定的投資表現。</p>"
            }
          ]
        },
        "apy_display_rule": 0,
        "number_of_x_day": 1,
        "expected_apy": "0",
        "max_drawdown_since_inception": "0",
        "yearly_sharpe_ratio": "0",
        "x_day_apy": "0",
        "apy_7d": "0",
        "apy_30d": "0",
        "apy_60d": "0",
        "apy_90d": "0",
        "apy_180d": "0",
        "apy1year": "0",
        "inception_to_date_apy": "0",
        "apy_ytd": "0",
        "return_7d": "0",
        "return_30d": "0",
        "return_60d": "0",
        "return_90d": "0",
        "return_180d": "0",
        "return1year": "0",
        "return_since_inception": "0",
        "ytd_return": "0",
        "sharpe_ratio_7d": "0",
        "sharpe_ratio_30d": "0",
        "sharpe_ratio_60d": "0",
        "sharpe_ratio_90d": "0",
        "sharpe_ratio_180d": "0",
        "sharpe_ratio_1y": "0",
        "sharpe_ratio_ytd": "0",
        "sharpe_ratio_since_inception": "0",
        "sharpe_ratio_by_bond_yield_7d": "0",
        "sharpe_ratio_by_bond_yield_30d": "0",
        "sharpe_ratio_by_bond_yield_60d": "0",
        "sharpe_ratio_by_bond_yield_90d": "0",
        "sharpe_ratio_by_bond_yield_180d": "0",
        "sharpe_ratio_by_bond_yield_1y": "0",
        "sharpe_ratio_by_bond_yield_ytd": "0",
        "sharpe_ratio_by_bond_yield_since_inception": "0",
        "sortino_ratio_7d": "0",
        "sortino_ratio_30d": "0",
        "sortino_ratio_60d": "0",
        "sortino_ratio_90d": "0",
        "sortino_ratio_180d": "0",
        "sortino_ratio_1y": "0",
        "sortino_ratio_ytd": "0",
        "sortino_ratio": "0",
        "sortino_ratio_by_bond_yield_7d": "0",
        "sortino_ratio_by_bond_yield_30d": "0",
        "sortino_ratio_by_bond_yield_60d": "0",
        "sortino_ratio_by_bond_yield_90d": "0",
        "sortino_ratio_by_bond_yield_180d": "0",
        "sortino_ratio_by_bond_yield_1y": "0",
        "sortino_ratio_by_bond_yield_ytd": "0",
        "sortino_ratio_by_bond_yield_since_inception": "0",
        "popularity_value_7d": "0",
        "popularity_value_30d": "0",
        "popularity_value_60d": "0",
        "popularity_value_90d": "0",
        "popularity_value_180d": "0",
        "popularity_value_1y": "0",
        "popularity_value_inception": "0",
        "popularity_value_ytd": "0",
        "maximum_drawdown_7d": "0",
        "maximum_drawdown_30d": "0",
        "maximum_drawdown_60d": "0",
        "maximum_drawdown_90d": "0",
        "maximum_drawdown_180d": "0",
        "maximum_drawdown_1y": "0",
        "maximum_since_inception": "0",
        "maximum_drawdown_ytd": "0",
        "apy": "0",
        "apy_time_milli": 0,
        "volatility": "0",
        "promotion_sentence": null,
        "is_collect": 2,
        "labels": null,
        "status": 2,
        "is_stop_raise": 2,
        "is_private_strategy": 2,
        "has_private_strategy_activated": 0,
        "private_strategy_visibility": 0,
        "minimum_activate_amount": "0.0001",
        "access_codes": null,
        "close_period_start_time": 0,
        "trading_scope": null,
        "fund_manager_name": "",
        "window_start_time": 0,
        "window_end_time": 0,
        "nav": "1",
        "latest_nav_time_milli": 0,
        "nav_chart": null,
        "is_available": true,
        "is_purchasable": true,
        "invested": 0,
        "aum": "0",
        "aum_usd": "0",
        "product_activity": null,
        "category_proportions": null,
        "pb_user_balance_usd": "0",
        "is_self_operated": 2,
        "is_customized": 2,
        "risk_level": 0,
        "fund_manager_user_id_for_community": "3157004",
        "is_display_deposit_risk_popup_window": 2,
        "deposit_popup_window_i18n": null,
        "jump_url": "flutter://open?category=%2Ffund2&route=%2Fdetail&params=%7B%22product%22%3A%20%227366442319878500352%22%7D",
        "user_id": ""
      }
    ]
  },
  "message": ""
}

Get Product Detail

Parameter Name Type Mandatory location Description
product_id string Y query ID of the product to be fetched
# Using `curl` to send a GET request:
curl -X 'GET' \\
  'https://mapi.matrixport.com/strategy/api/v2/product?product_id=7213729255023566848' \\
  -H 'accept: application/json' \\
  -H 'USER-ID: request user id'
Field Path Data Type Field Description
code Number API return status code. 0 usually indicates a successful request, while non-0 indicates a failed request
message String API return message. It is usually an empty string for successful requests and contains a specific error description for failed requests.
data.absolute_return String Absolute return. The specific return value is stored as a string.
data.apy_7d String 7-day Annual Percentage Yield (APY). The yield value is stored as a string.
data.apy_30d String 30-day Annual Percentage Yield (APY). The yield value is stored as a string.
data.apy_60d String 60-day Annual Percentage Yield (APY). The yield value is stored as a string.
data.apy_90d String 90-day Annual Percentage Yield (APY). The yield value is stored as a string.
data.apy_180d String 180-day Annual Percentage Yield (APY). The yield value is stored as a string.
data.apy_display_rule Number APY display rule identifier. Different values correspond to different display logics
data.apy_ytd String Year-to-Date (YTD) Annual Percentage Yield (APY). The yield value is stored as a string.
data.apy1year String 1-year Annual Percentage Yield (APY). The yield value is stored as a string.
data.bench_mark_apy_1y String Benchmark 1-year Annual Percentage Yield (APY), used to compare product performance. Stored as a string.
data.bench_mark_apy_7d String Benchmark 7-day Annual Percentage Yield (APY), used to compare product performance. Stored as a string.
data.bench_mark_apy_30d String Benchmark 30-day Annual Percentage Yield (APY), used to compare product performance. Stored as a string.
data.bench_mark_apy_60d String Benchmark 60-day Annual Percentage Yield (APY), used to compare product performance. Stored as a string.
data.bench_mark_apy_90d String Benchmark 90-day Annual Percentage Yield (APY), used to compare product performance. Stored as a string.
data.bench_mark_apy_180d String Benchmark 180-day Annual Percentage Yield (APY), used to compare product performance. Stored as a string.
data.bench_mark_apy_since_inception String Benchmark Annual Percentage Yield (APY) since inception, used to compare product performance. Stored as a string.
data.bench_mark_apy_ytd String Benchmark Year-to-Date (YTD) Annual Percentage Yield (APY), used to compare product performance. Stored as a string.
data.bench_mark_return_1y String Benchmark 1-year return, used to compare product performance. Stored as a string.
data.bench_mark_return_7d String Benchmark 7-day return, used to compare product performance. Stored as a string.
data.bench_mark_return_30d String Benchmark 30-day return, used to compare product performance. Stored as a string.
data.bench_mark_return_60d String Benchmark 60-day return, used to compare product performance. Stored as a string.
data.bench_mark_return_90d String Benchmark 90-day return, used to compare product performance. Stored as a string.
data.bench_mark_return_180d String Benchmark 180-day return, used to compare product performance. Stored as a string.
data.bench_mark_return_since_inception String Benchmark return since inception, used to compare product performance. Stored as a string.
data.bench_mark_return_ytd String Benchmark Year-to-Date (YTD) return, used to compare product performance. Stored as a string.
data.bind_code String Binding code, used as an identifier to associate with other systems or functions. An empty string indicates no binding.
data.bit_coin_performance String Bitcoin-related performance value.
data.btc_perf_start_time Number Start time for Bitcoin performance data statistics, stored as a millisecond-level Unix timestamp. 0 indicates not set.
data.calmar_ratio String Calmar Ratio (a risk-adjusted return indicator; a higher value indicates better risk-adjusted returns). Stored as a string.
data.close_period_end_at_time Number Lock-up period end time, stored as a millisecond-level Unix timestamp. 0 indicates no lock-up period or not set.
data.close_period_start_time Number Lock-up period start time, stored as a millisecond-level Unix timestamp. 0 indicates no lock-up period or not set.
data.code String Internal product code. An empty string may indicate unassigned or a special scenario.
data.created_at Number Data creation time, stored as a millisecond-level Unix timestamp. The corresponding specific date can be queried using a timestamp conversion tool.
data.currency String Product pricing currency type. Here it is USDT (Tether).
data.deposit_popup_window_i18n Null Internationalization (i18n) configuration for the deposit popup window. null indicates no i18n content configured for the popup window.
data.display_name Array Array of multi-language display names for the product. Each element contains language (language code, e.g., en-US, zh-CN) and text (product name in the corresponding language).
data.display_name[].language String Language code, following ISO language code standards (e.g., en-US for English-US, zh-CN for Chinese-Mainland China, zh-TW for Chinese-Taiwan China).
data.display_name[].text String Product display name in the corresponding language.
data.expected_apy String Expected Annual Percentage Yield (APY). The expected return value is stored as a string.
data.fm_performance_fee_mode Number Fund Manager (FM) performance fee calculation mode identifier.
data.fm_performance_fee_rate String Fund Manager (FM) performance fee rate, stored as a string. Here, "0.05" indicates 5%.
data.fm_platform_fixed_fee_rate String Fund Manager (FM) platform fixed fee rate, stored as a string. Here, "0.001" indicates 0.1%.
data.fund_manager Object Fund manager information object, including detailed information such as avatar, ID, and name.
data.fund_manager.avatar String Fund manager's avatar image URL. An empty string indicates no avatar set.
data.fund_manager.fund_manager_id String Unique identifier ID of the fund manager, used to associate fund manager-related data.
data.fund_manager.name String Fund manager's name.
data.fund_manager.network_group_id String ID of the network group that the fund manager belongs to. An empty string indicates no affiliation with a network group.
data.fund_manager.pb_strategy_account_id Null Prime Broker (PB) strategy account ID. null indicates no associated PB strategy account.
data.fund_manager.profit_account_id String Fund manager's profit account ID, used to associate with profit settlement-related accounts.
data.fund_manager.schools Array Array of the fund manager's educational background (schools). Each element contains school logo, multi-language name, and other information.
data.fund_manager.schools[].logo_url String School logo image URL, which can be accessed directly to view the school identifier.
data.fund_manager.schools[].name Array Array of multi-language names of the school. Each element contains a language identifier and the school name in the corresponding language.
data.fund_manager.schools[].name[].language String Language identifier, following the same rules as data.display_name[].language.
data.fund_manager.schools[].name[].text String School name in the corresponding language
data.fund_manager.schools[].product_school_id String Unique product-side ID associated with the school, used to associate product and educational background data.
data.fund_manager.team_description Array Array of multi-language team descriptions. Each element contains a language identifier and the team description in the corresponding language (supports HTML tags).
data.fund_manager.team_description[].language String Language identifier, following the same rules as data.display_name[].language.
data.fund_manager.team_description[].text String Team description text in the corresponding language, including HTML tags (e.g.,

) for formatted display.

data.fund_manager.team_logo String Team logo image URL, which can be accessed directly to view the team identifier.
data.fund_manager.type Number Fund manager type identifier. Different values correspond to different types
data.fund_manager.website String Official website URL of the team or fund manager, which can be accessed to obtain more information.
data.gross_delta String Gross Delta value (a risk indicator for financial derivatives, measuring the impact of underlying asset price changes on product value). Stored as a string.
data.gross_leverage_ratio String Gross leverage ratio (measuring the ratio of product liabilities to assets, reflecting risk level). Stored as a string.
data.has_agent Number Agent existence identifier. 2 usually indicates no agent
data.id String Unique product or data identifier ID, used to distinguish different products or data records.
data.ignore_data_cache_update Boolean Data cache update ignore identifier. false indicates not ignored (cache updated normally), true indicates ignored (cache not updated).
data.ignore_last_disclosure_date Boolean Last disclosure date ignore identifier. false indicates not ignored (using the latest disclosure date), true indicates ignored.
data.inception_to_date_apy String Annual Percentage Yield (APY) since inception. The annualized return value from product inception to the present is stored as a string.
data.is_auto_nav_calculation Number Automatic NAV calculation identifier. 1 usually indicates automatic calculation ( e.g., 0 for manual, 1 for automatic).
data.is_bitcoin_performance Number Bitcoin performance association identifier. 1 usually indicates associated (product returns are linked to or compared with Bitcoin performance), 0 indicates not associated.
data.is_customized Number Customized product identifier. 2 usually indicates non-customized ( e.g., 1 for customized, 2 for standardized).
data.is_display_deposit_risk_popup_window Number Deposit risk popup window display identifier. 2 usually indicates not displayed (specific rules e.g., 1 for displayed, 2 for not displayed).
data.is_display_third_part_tag Number Third-party tag display identifier. 2 usually indicates not displayed (specific rules e.g., 1 for displayed, 2 for not displayed).
data.is_monitor_co_investment_ratio Number Co-investment ratio monitoring identifier. 1 usually indicates monitoring (specific rules e.g., 0 for not monitoring, 1 for monitoring).
data.is_neutral_strategy Number Neutral strategy identifier. 2 usually indicates not a neutral strategy (specific rules e.g., 1 for neutral, 2 for non-neutral).
data.is_private_strategy Number Private strategy identifier. 2 usually indicates not a private strategy (specific rules e.g., 1 for private, 2 for public).
data.is_self_operated Number Self-operated product identifier. 2 usually indicates not self-operated (specific rules e.g., 1 for self-operated, 2 for third-party cooperative).
data.is_shown_nav_before_fee Number Pre-fee NAV display identifier. 2 usually indicates not displayed (specific rules e.g., 1 for displaying pre-fee NAV, 2 for displaying post-fee NAV).
data.is_stop_raise Number Fundraising suspension identifier. 2 usually indicates not suspended (specific rules e.g., 1 for suspended, 2 for ongoing fundraising).
data.last_disclosure_date Number Latest disclosure date, stored as a millisecond-level Unix timestamp. The corresponding specific date can be converted via timestamp tools.
data.last_disclosure_date_u_time Number Latest disclosure date (UTC time), stored as a millisecond-level Unix timestamp for unified time zone date calculations.
data.latest_nav String Latest Net Asset Value (NAV). The current unit NAV of the product is stored as a string (e.g., "1" represents 1 unit currency per share).
data.latest_nav_time_milli Number Latest NAV generation time, stored as a millisecond-level Unix timestamp. 0 indicates no specific time recorded.
data.latest_usd_aum String Latest USD Asset Under Management (AUM). The total value of assets currently managed by the product (denominated in USD) is stored as a string.
data.listing_time Number Product launch time, stored as a millisecond-level Unix timestamp, corresponding to the time when the product is officially displayed or open for subscription.
data.lockup_period_days Number Lock-up period in days. 0 indicates no lock-up period (investors can redeem at any time), and values greater than 0 indicate the number of days the investment must be locked up.
data.max_drawdown_last_6_months String Maximum drawdown in the last 6 months (an indicator to measure the product’s recent risk, i.e., the maximum loss range during the period). Stored as a string.
data.max_drawdown_last_7_days String Maximum drawdown in the last 7 days, stored as a string, reflecting the product’s short-term risk level.
data.max_drawdown_since_inception String Maximum drawdown since inception, stored as a string, reflecting the product’s maximum risk exposure from its establishment to the present.
data.maximum_drawdown String Maximum drawdown (a general indicator, usually referring to the period since inception if no time range is specified). Stored as a string.
data.maximum_drawdown_1y String Maximum drawdown in the last 1 year, stored as a string, reflecting the product’s annual risk level.
data.maximum_drawdown_30d String Maximum drawdown in the last 30 days, stored as a string, reflecting the product’s monthly risk level.
data.maximum_drawdown_60d String Maximum drawdown in the last 60 days, stored as a string, reflecting the product’s risk level within two months.
data.maximum_drawdown_90d String Maximum drawdown in the last 90 days, stored as a string, reflecting the product’s quarterly risk level.
data.maximum_drawdown_ytd String Year-to-Date (YTD) maximum drawdown, stored as a string, reflecting the product’s risk level within the current year.
data.min_redemption_shares String Minimum redemption shares. The minimum number of shares required for a single redemption by investors is stored as a string (e.g., "0.0001" represents 0.0001 shares).
data.min_subscription_amount String Minimum subscription amount. The minimum amount required for a single subscription by investors is stored as a string (corresponding to the pricing currency, e.g., USDT).
data.minimum_additional_subscription_amount String Minimum additional subscription amount. "-1" indicates no additional subscription limit or no support for additional subscriptions; positive values indicate the minimum additional amount.
data.mp_performance_fee_mode Number MP performance fee calculation mode identifier, following the same rules as data.fm_performance_fee_mode.
data.mp_performance_fee_rate String MP performance fee rate, stored as a string. Here, "0.05" represents 5%.
data.mp_platform_fixed_fee_rate String MP platform fixed fee rate, stored as a string. Here, "0.001" represents 0.1%.
data.nav_start_time Number NAV calculation start time, stored as a millisecond-level Unix timestamp. 0 indicates calculation starts from the product’s establishment.
data.net_leverage_ratio String Net leverage ratio (leverage level after deducting hedging components), stored as a string, reflecting the product’s actual leverage risk.
data.number_of_x_day Number X-day cycle count, used to identify the number of days in a custom time cycle
data.pb_user_id String PB (Prime Broker) user ID, used to associate user accounts in the PB system.
data.popularity_value_1y String 1-year popularity value (an indicator to measure the product’s popularity), stored as a string.
data.popularity_value_7d String 7-day popularity value, stored as a string, reflecting the product’s short-term popularity.
data.popularity_value_30d String 30-day popularity value, stored as a string, reflecting the product’s monthly popularity.
data.popularity_value_60d String 60-day popularity value, stored as a string, reflecting the product’s popularity within two months.
data.popularity_value_90d String 90-day popularity value, stored as a string, reflecting the product’s quarterly popularity.
data.popularity_value_180d String 180-day popularity value, stored as a string, reflecting the product’s popularity within six months.
data.popularity_value_inception String Popularity value since inception, stored as a string, reflecting the product’s long-term popularity.
data.popularity_value_ytd String Year-to-Date (YTD) popularity value, stored as a string, reflecting the product’s popularity in the current year.
data.positive_return_months Number Number of months with positive returns. It counts the total number of months in the product’s history that achieved positive returns. 0 indicates no months with positive returns.
data.product_code String Product code (short identifier), used for quick product identification
data.product_content object
data.product_content.black_list_group_id string
data.product_content.broker_page_redirect integer
data.product_content.broker_page_url string
data.product_content.description array
data.product_content.investment_history integer
data.product_content.investment_history_for_code_holder integer
data.product_content.investment_history_for_investor integer
data.product_content.investment_rules array
data.product_content.is_code_holder integer
data.product_content.is_invested integer
data.product_content.labels array
data.product_content.performance_display integer
data.product_content.performance_display_pnl integer
data.product_content.personal_profile_display integer
data.product_content.personal_profile_introduction array
data.product_content.position_analysis integer
data.product_content.position_analysis_for_code_holder integer
data.product_content.position_analysis_for_investor integer
data.product_content.private_strategy_visibility integer
data.product_content.product_id string
data.product_content.promotion_sentence array
data.product_content.schools array
data.product_content.short_description array
data.product_content.strategy_description array
data.product_content.team_background array
data.product_content.team_background_url string
data.product_content.trade_history_position_analysis integer
data.product_content.trading_points_introduction array
data.product_content.trading_scope array
data.product_content.trading_venue array
data.product_content.white_list_group_id string
data.product_fee_structure_v2 object
data.product_fee_structure_v2.fee_model_id string
data.product_fee_structure_v2.fm_performance_fee_mode integer
data.product_fee_structure_v2.fm_performance_fee_rate array
data.product_fee_structure_v2.fm_platform_fixed_fee_rate array
data.product_fee_structure_v2.mp_performance_fee_mode integer
data.product_fee_structure_v2.mp_performance_fee_rate array
data.product_fee_structure_v2.mp_platform_fixed_fee_rate array
data.product_fee_structure_v2.profit_bill_cycling_day integer
data.product_fee_structure_v2.profit_bill_cycling_month integer
data.product_fee_structure_v2.redemption_fee_rate array
data.product_fee_structure_v2.subscription_fee_rate string
data.product_fee_structure_v2.type string
data.product_id String Unique product identifier ID, used to uniquely distinguish different products in the system.
data.product_strategy Object Product strategy information object, containing multi-language content such as strategy description, display name, and introduction.
data.product_strategy.description Array Multi-language array of strategy descriptions. Each element contains a language identifier and a description of the core strategy logic in the corresponding language.
data.product_strategy.description[].language String Language identifier, following the same rules as data.display_name[].language.
data.product_strategy.description[].text String Strategy description text in the corresponding language, briefly explaining the core logic of the strategy.
data.product_strategy.display_name Array Multi-language array of strategy display names. Each element contains a language identifier and the strategy name in the corresponding language.
data.product_strategy.display_name[].language String Language identifier, following the same rules as data.display_name[].language.
data.product_strategy.display_name[].text String Strategy display name in the corresponding language (e.g., "Arbitrage Strategy" in English, "套利策略" in Chinese).
data.product_strategy.introduce Array Multi-language array of detailed strategy introductions. It contains formatted text with HTML tags, explaining the strategy principles, advantages, etc., in detail.
data.product_strategy.introduce[].language String Language identifier, following the same rules as data.display_name[].language.
data.product_strategy.introduce[].text String Detailed strategy introduction text in the corresponding language, supporting HTML tags (e.g.,

) for formatted display.

data.product_strategy.strategy_id String Unique strategy identifier ID, used to associate strategy-related configurations and data.
data.profit_bill_cycling_day Number Daily cycle for profit statements. 1 indicates generating a profit statement every day; values greater than 1 indicate generating a profit statement every N days.
data.profit_bill_cycling_month Number Monthly cycle for profit statements. 1 indicates generating a profit statement every month; values greater than 1 indicate generating a profit statement every N months.
data.promotion_activity Null Promotion activity configuration. null indicates no ongoing promotion activities or no activity information configured.
data.quick_tag_ids String List of quick tag IDs, stored as a string (multiple IDs separated by delimiters). An empty string indicates no tags.
data.rcu_id Number RCU (possibly "Resource Control Unit" or a specific business module) ID, used to associate related resource configurations.
data.redemption_fee_rate String Redemption fee rate, stored as a string. Here, "0.03" represents 3% (the fee ratio investors need to pay when redeeming).
data.report_rcu_id Number Report-related RCU ID, used to associate resource configurations required for report generation and display.
data.reported_ex_account_id String Reported exchange account ID. "0" indicates no reported exchange account or no associated account.
data.reported_nav String Reported NAV. The product’s NAV reported to regulators or third parties is stored as a string.
data.return_7d String 7-day return rate. The actual return ratio of the product in the last 7 days is stored as a string.
data.return_30d String 30-day return rate. The actual return ratio of the product in the last 30 days is stored as a string.
data.return_60d String 60-day return rate. The actual return ratio of the product in the last 60 days is stored as a string.
data.return_90d String 90-day return rate. The actual return ratio of the product in the last 90 days is stored as a string.
data.return_180d String 180-day return rate. The actual return ratio of the product in the last 180 days is stored as a string.
data.return_since_inception String Return rate since inception. The cumulative return ratio of the product from its establishment to the present is stored as a string.
data.return1year String 1-year return rate. The cumulative return ratio of the product in the last 12 months is stored as a string.
data.risk_level Number Risk level. 0 usually indicates the lowest risk level (specific rules e.g., levels 1-5 correspond to different risk degrees).
data.running_days Number Product running days. It counts the actual number of days the product has been running since its launch or establishment.
data.sharpe_ratio_7d String 7-day Sharpe Ratio (a risk-adjusted return indicator; a higher value indicates better returns per unit of risk). Stored as a string.
data.sharpe_ratio_30d String 30-day Sharpe Ratio, stored as a string, reflecting the monthly risk-adjusted return.
data.sharpe_ratio_60d String 60-day Sharpe Ratio, stored as a string, reflecting the risk-adjusted return within two months.
data.sharpe_ratio_90d String 90-day Sharpe Ratio, stored as a string, reflecting the quarterly risk-adjusted return.
data.sharpe_ratio_180d String 180-day Sharpe Ratio, stored as a string, reflecting the risk-adjusted return within six months.
data.sharpe_ratio_by_bond_yield_1y String 1-year Sharpe Ratio based on bond yield (calculated using bond yield as the risk-free rate). Stored as a string.
data.sharpe_ratio_by_bond_yield_7d String 7-day Sharpe Ratio based on bond yield, stored as a string.
data.sharpe_ratio_by_bond_yield_30d String 30-day Sharpe Ratio based on bond yield, stored as a string.
data.sharpe_ratio_by_bond_yield_60d String 60-day Sharpe Ratio based on bond yield, stored as a string.
data.sharpe_ratio_by_bond_yield_90d String 90-day Sharpe Ratio based on bond yield, stored as a string.
data.sharpe_ratio_by_bond_yield_180d String 180-day Sharpe Ratio based on bond yield, stored as a string.
data.sharpe_ratio_by_bond_yield_since_inception String Sharpe Ratio based on bond yield since inception, stored as a string.
data.sharpe_ratio_by_bond_yield_ytd String Year-to-Date (YTD) Sharpe Ratio based on bond yield, stored as a string.
data.sharpe_ratio_since_inception String Sharpe Ratio since inception, stored as a string, reflecting the product’s long-term risk-adjusted return.
data.sharpe_ratio_ytd String Year-to-Date (YTD) Sharpe Ratio, stored as a string, reflecting the product’s risk-adjusted return in the current year.
data.since_inception_days Number Days since inception. It counts the total number of days from the product’s establishment to the present (there may be differences from running_days, depending on business definitions).
data.sortino_ratio String Sortino Ratio (a risk-adjusted return indicator that only considers downside risk; a higher value indicates better downside risk control). Stored as a string.
data.sortino_ratio_1y String 1-year Sortino Ratio, stored as a string, reflecting the annual downside risk-adjusted return.
data.sortino_ratio_7d String 7-day Sortino Ratio, stored as a string, reflecting the short-term downside risk-adjusted return.
data.sortino_ratio_30d String 30-day Sortino Ratio, stored as a string, reflecting the monthly downside risk-adjusted return.
data.sortino_ratio_60d String 60-day Sortino Ratio, stored as a string, reflecting the downside risk-adjusted return within two months.
data.sortino_ratio_90d String 90-day Sortino Ratio, stored as a string, reflecting the quarterly downside risk-adjusted return.
data.sortino_ratio_180d String 180-day Sortino Ratio, stored as a string, reflecting the downside risk-adjusted return within six months.
data.sortino_ratio_by_bond_yield_1y String 1-year Sortino Ratio based on bond yield (using bond yield as the risk-free rate and only considering downside risk). Stored as a string.
data.sortino_ratio_by_bond_yield_7d String 7-day Sortino Ratio based on bond yield, stored as a string.
data.sortino_ratio_by_bond_yield_30d String 30-day Sortino Ratio based on bond yield, stored as a string.
data.sortino_ratio_by_bond_yield_60d String 60-day Sortino Ratio based on bond yield, stored as a string.
data.sortino_ratio_by_bond_yield_90d String 90-day Sortino Ratio based on bond yield, stored as a string.
data.sortino_ratio_by_bond_yield_180d String 180-day Sortino Ratio based on bond yield, stored as a string.
data.sortino_ratio_by_bond_yield_since_inception String Sortino Ratio based on bond yield since inception, stored as a string.
data.sortino_ratio_by_bond_yield_ytd String Year-to-Date (YTD) Sortino Ratio based on bond yield, stored as a string.
data.sortino_ratio_ytd String Year-to-Date (YTD) Sortino Ratio, stored as a string, reflecting the product’s downside risk-adjusted return in the current year.
data.status Number Product status identifier. 2 usually indicates normal operation
data.strategy_manager Object Strategy manager information object, with the same structure as data.fund_manager, including avatar, ID, team information, etc.
data.strategy_manager.avatar String Strategy manager’s avatar image URL. An empty string indicates no avatar set.
data.strategy_manager.fund_manager_id String Unique identifier ID of the strategy manager (may be reused with the fund manager ID, depending on the business scenario).
data.strategy_manager.name String Strategy manager’s name.
data.strategy_manager.network_group_id String ID of the network group that the strategy manager belongs to. An empty string indicates no affiliation with a network group.
data.strategy_manager.pb_strategy_account_id Null PB (Prime Broker) strategy account ID associated with the strategy manager. null indicates no association.
data.strategy_manager.profit_account_id String Strategy manager’s profit account ID, used to associate with profit settlement accounts.
data.strategy_manager.schools Array Array of the strategy manager’s educational background (schools), with the same structure as data.fund_manager.schools.
data.strategy_manager.schools[].logo_url String School logo image URL.
data.strategy_manager.schools[].name Array Array of multi-language names of the school.
data.strategy_manager.schools[].name[].language String Language identifier, following ISO language code standards.
data.strategy_manager.schools[].name[].text String School name in the corresponding language.
data.strategy_manager.schools[].product_school_id String Unique product-side ID associated with the school.
data.strategy_manager.team_description Array Array of multi-language team descriptions, with the same structure as data.fund_manager.team_description.
data.strategy_manager.team_description[].language String Language identifier.
data.strategy_manager.team_description[].text String Team description text in the corresponding language (including HTML tags).
data.strategy_manager.team_logo String Team logo image URL.
data.strategy_manager.type Number Strategy manager type identifier, following the same rules as data.fund_manager.type.
data.strategy_manager.website String Official website URL of the team or strategy manager.
data.subscription_fee_rate String Subscription fee rate, stored as a string. Here, "0.06" represents 6% (the fee ratio investors need to pay when subscribing).
data.time_weighted_return String Time-Weighted Return (excludes the impact of capital inflows and outflows on returns, providing a more accurate reflection of investment capability). Stored as a string.
data.total_quota_limit String Total product quota limit. "-1" indicates no quota limit; positive values indicate the upper limit of the total quota (corresponding to the pricing currency).
data.user_daily_subscription_limit String User’s daily subscription limit. "-1" indicates no daily limit; positive values indicate the maximum amount a user can subscribe to per day.
data.user_subscription_limit String User’s total subscription limit. "-1" indicates no total limit; positive values indicate the maximum cumulative amount a user can subscribe to.
data.volatility String Volatility (a risk indicator measuring the degree of fluctuation in product returns). Stored as a string; a higher value indicates higher risk.
data.x_day_apy String Annual Percentage Yield (APY) for a custom X-day cycle. The value of X is defined by data.number_of_x_day. Stored as a string.
data.yearly_sharpe_ratio String Annualized Sharpe Ratio (an annualized risk-adjusted return indicator), stored as a string, reflecting the annual investment cost-effectiveness.
data.yearly_volatility String Annualized volatility (the annualized degree of fluctuation in returns), stored as a string, reflecting the annual risk level.
data.ytd_return String Year-to-Date (YTD) return rate. The cumulative return ratio of the product from the start of the current year to the present is stored as a string.
{
  // Response code
  "code": 0,
  "data": {
    // ID of the product
    "product_id": "7213729255023566848",
    "display_name": [
      {
        // Language code
        "language": "en-US",
        // Display name in the specified language
        "text": "JMS USDT Arbitrage Strategy"
      },
      {
        // Language code
        "language": "zh-CN",
        // Display name in the specified language
        "text": "JMS USDT Arbitrage Strategy"
      },
      {
        // Language code
        "language": "zh-TW",
        // Display name in the specified language
        "text": "JMS USDT Arbitrage Strategy"
      }
    ],
    // Timestamp of the listing time
    "listing_time": 1716912000000,
    // RCU ID
    "rcu_id": 5437,
    // Currency of the product
    "currency": "USDT",
    "product_strategy": {
      // ID of the strategy
      "strategy_id": "7213729253878521856",
      "display_name": [
        {
          // Language code
          "language": "en-US",
          // Display name in the specified language
          "text": "qat1 test"
        },
        {
          // Language code
          "language": "zh-CN",
          // Display name in the specified language
          "text": "qat1 test"
        },
        {
          // Language code
          "language": "zh-TW",
          // Display name in the specified language
          "text": "qat1 test"
        }
      ],
      "description": [
        {
          // Language code
          "language": "en-US",
          // Description in the specified language
          "text": "Taking advantage of different pricing in the market."
        },
        {
          // Language code
          "language": "zh-CN",
          // Description in the specified language
          "text": "利用市场的不同定价来获取风险较低的利润策略"
        },
        {
          // Language code
          "language": "zh-TW",
          // Description in the specified language
          "text": "利用市場的不同定價來獲取風險較低的利潤策略"
        }
      ],
      "introduce": [
        {
          // Language code
          "language": "en-US",
          // Introduction in the specified language
          "text": "<p>The Arbitrage strategy seeks to profit from market volatility by skilfully exploiting price differentials in the cryptocurrency market. The strategy encompasses various forms of arbitrage, including market arbitrage, cross-exchange arbitrage and spot arbitrage, to maximise market opportunities through real-time data analysis and execution of quick trades. Positions and strategies are dynamically adjusted to seek relatively stable returns while reducing market risk. This enables the cryptocurrency strategy to achieve relatively stable investment performance under different market conditions.</p>"
        },
        {
          // Language code
          "language": "zh-CN",
          // Introduction in the specified language
          "text": "<p>套利策略通过巧妙利用加密货币市场的价格差异,以期在市场波动中获得利润。该策略涵盖各种套利形式,包括市场套利、跨交易所套利和期现套利,通过实时数据分析和执行快速交易来最大程度地利用市场机会。通过动态调整仓位和策略,以追求相对稳定的回报,同时降低市场风险。这使得加密资币策略在不同市场状况下都能够实现较为稳定的投资表现。</p>"
        },
        {
          // Language code
          "language": "zh-TW",
          // Introduction in the specified language
          "text": "<p>套利策略通過巧妙利用加密貨幣市場的價格差異,以期在市場波動中獲得利潤。該策略涵蓋各種套利形式,包括市場套利、跨交易所套利和期現套利,通過實時數據分析和執行快速交易來最大程度地利用市場機會。通過動態調整倉位和策略,以追求相對穩定的回報,同時降低市場風險。這使得加密資幣策略在不同市場狀況下都能夠實現較為穩定的投資表現。</p>"
        }
      ]
    },
    // Rule for displaying APY
    "apy_display_rule": 0,
    // Number of days for a specific calculation
    "number_of_x_day": 1,
    // Expected annual percentage yield
    "expected_apy": "0",
    // Product status
    "status": 2,
    // Flag for stopping the raise
    "is_stop_raise": 2,
    // Flag for collection status
    "is_collect": 2,
    "product_content": {
      // Flag for investment status
      "is_invested": 2,
      // Flag for code holder status
      "is_code_holder": 2,
      // ID of the product
      "product_id": "7213729255023566848",
      // URL of the team background
      "team_background_url": "string",
      "description": [
        {
          // Language code
          "language": "en-US",
          // Description in the specified language
          "text": "<p>What is an Arbitrage Strategy?</p><p><br></p><p>Funding Rate Arbitrage means that when the market is bullish and the perpetual contract price is higher than the spot, the bulls need to pay a certain percentage of interest to the bears, which is known as the funding rate of the perpetual contract. Through this mechanism, various strategies can be deployed to maintain neutral/minimal exposure in the strategy, while making a steady profit.</p><p><br></p><p>Futures Basis Spread Arbitrage exploits the basis difference between the delivery price of a token’s futures contract and its spot price by observing the basis premium rate. The concept of 'Mean Reversion’ is being utilized here to achieve an expected return, while also maintaining low exposure in the Strategy due to the nature of the position pairings.</p>"
        },
        {
          // Language code
          "language": "zh-CN",
          // Description in the specified language
          "text": "<p>什么是套利基金?</p><p><br></p><p>资金费率套息指当市场做多力量占优,永续合约价格高于现货时,多方需向空方支付一定比例的利息,此时资金费率为正。长期观察,资金费率多为正数,可实现低风险的资金费率套息的套利操作。</p><p><br></p><p>期现基差套利利用期货交割合约交割价与锚定现货的基差,通过观察基差溢价率,利用“均值回归”的方法实现在不关注市场价格涨跌的情况下获得既定的预期收益。</p>"
        },
        {
          // Language code
          "language": "zh-TW",
          // Description in the specified language
          "text": "<p>什麼是套利基金?</p><p><br></p><p>資金費率套息指當市場做多力量佔優,永續合約價格高於現貨時,多方需向空方支付一定比例的利息,此時資金費率為正。長期觀察,資金費率多為正數,可實現低風險的資金費率套息的套利操作。</p><p><br></p><p>期現基差套利利用期貨交割合約交割價與錨定現貨的基差,透過觀察基差溢價率,利用\"平均值迴歸\"的方法實現在不關注市場價格漲跌的情況下獲得既定的預期收益。</p>"
        }
      ],
      "short_description": [
        {
          // Language code
          "language": "en-US",
          // Short description in the specified language
          "text": "J USDT arbitrage Strategy is a market-neutral strategy that arbitrages USDT-denominated swaps while also arbitraging the basis and funding rates."
        },
        {
          // Language code
          "language": "zh-CN",
          // Short description in the specified language
          "text": "J USDT 套利策略是一种市场中性策略,针对USDT本位的掉期套利策略,同时对基差和多空费率进行套利。"
        },
        {
          // Language code
          "language": "zh-TW",
          // Short description in the specified language
          "text": "J USDT 套利策略是一種市場中性策略,針對USDT本位的掉期套利策略,同時對基差和多空費率進行套利。"
        }
      ],
      "team_background": [
        {
          // Language code
          "language": "en-US",
          // Team background in the specified language
          "text": "team_background_en"
        },
        {
          // Language code
          "language": "zh-CN",
          // Team background in the specified language
          "text": "team_background_zh"
        },
        {
          // Language code
          "language": "zh-TW",
          // Team background in the specified language
          "text": "team_background_tw"
        }
      ],
      "trading_venue": [
        {
          // Language code
          "language": "en-US",
          // Trading venue in the specified language
          "text": "J USDT arbitrage Strategy will be traded on the Binance, OKX and Bybit Exchange. "
        },
        {
          // Language code
          "language": "zh-CN",
          // Trading venue in the specified language
          "text": "J USDT 套利策略在Binance、OKX和Bybit Exchange交易。"
        },
        {
          // Language code
          "language": "zh-TW",
          // Trading venue in the specified language
          "text": "J USDT 套利策略在Binance、OKX和Bybit Exchange交易。"
        }
      ],
      "strategy_description": [
        {
          // Language code
          "language": "en-US",
          // Strategy description in the specified language
          "text": "<p>J USDT arbitrage Strategy is a market-neutral strategy that arbitrages USDT-denominated swaps while also arbitraging the basis and funding rates.</p><p><br></p><p>This strategy hedges risks using zero net exposure futures and spot, and utilizes self-developed monitoring modules with business data for second-level monitoring. The team conducts 24/7 dual manual and programmatic monitoring of the accounts. Product retracement exceeding 1% will trigger a warning. The product stop loss line is NAV=0.9.</p><p><br></p><p>Recent year's real indicators : annualized return of 8.75%, Sharpe ratio of 4.7, max drawdown of -0.67%.</p><p><br></p><p>Investment and redemption currency for this strategy is USDT.</p>"
        },
        {
          // Language code
          "language": "zh-CN",
          // Strategy description in the specified language
          "text": "<p>J USDT 套利策略是一种市场中性策略,针对USDT本位的掉期套利策略,同时对基差和多空费率进行套利;</p><p><br></p><p>本策略使用期货和现货的零敞口对冲风险,并采用自研系统监听模块加业务数据,以秒级监控产品运行,团队7x24小时对账户进行人工与程序双重监控;产品回撤超过1%将触发预警,产品止损线為NAV=0.9</p><p>近一年实盘指标:年化收益率为8.75%,夏普比率4.7,最大回撤-0.67%;</p><p><br></p><p>本基金投资币种及赎回币种为USDT。</p>"
        },
        {
          // Language code
          "language": "zh-TW",
          // Strategy description in the specified language
          "text": "<p>J USDT 套利策略是一種市場中性策略,針對USDT本位的掉期套利策略,同時對基差和多空費率進行套利;</p><p><br></p><p>本策略使用期貨和現貨的零敞口對沖風險,並採用自研系統監聽模塊加業務數據,以秒級監控產品運行,團隊7x24小時對賬戶進行人工與程序雙重監控;產品回撤超過1%將觸發預警,產品止損線為NAV=0.9</p><p><br></p><p>近一年實盤指標:年化收益率為8.75%,夏普比率4.7,最大回撤-0.67%;</p><p><br></p><p>本基金投資幣種及贖回幣種為USDT。</p>"
        }
      ],
      "investment_rules": [
        {
          // Language code
          "language": "en-US",
          // Investment rules in the specified language
          "text": "<p>Subscription Rules</p><p><br></p><p>The Strategy will be placed on a proportional basis.</p><p><br></p><p>Matrixport will calculate the total amount invested and allocate the effective invested amount after the subscription period closes. Any unsuccessful subscriptions will be returned to your account.</p><p><br></p><p>Portfolio Allocation Calculation</p><p><br></p><p>Allocation Ratio = Quota for the period / The total amount subscribed during the period * 100%</p><p>Effective Invested Amount = Amount invested during the period * Allocation ratio</p><p><br></p><p>Effective invested amount per investor: 10,000-1,000,000 USDT</p><p><br></p><p>If the final effective invested amount allocated to an investor is less than 10,000 USDT, all subscription amounts will be refunded. If it is higher than 1,000,000 USDT, the effective invested amount will only be 1,000,000 USDT.</p><p><br></p><p>Subscription Period</p><p>7th 00:00:00-10th 12:00:00 of each month (UTC+8)</p><p><br></p><p>Redemption Period</p><p><br></p><p>7th 00:00:00-10th 12:00:00 of each month (UTC+8)</p><p><br></p><p>Monthly NAV Cut-off Date</p><p><br></p><p>10th of each month at 10:00:00 (UTC+8)</p><p><br></p><p>Settlement / Effective Invested Shares Confirmation Date</p><p>Subscription or redemption confirmation will be settled within four working days after the 10/24th of each month; during the processing period, data and indicator updates will be temporarily suspended</p><p><br></p><p>Portfolio NAV</p><p><br></p><p>Initial NAV will be confirmed after the Subscription Period.</p><p><br></p><p>Portfolio NAV will be updated daily (except for the period between the Closing Date of the Subscription Period, and the release date of the formal Monthly NAV)</p><p><br></p><p>During routine system maintenance, there may be brief data fluctuations or missing data, please do not panic, as it will be automatically restored within a certain period of time.</p><p><br></p><p>Please note that the daily NAV is for reference only. In order to ensure the accuracy of the data and settlement amount, the NAV used to confirm the subscription amount, redemption amount and revenue, is the Monthly NAV.</p><p><br></p><p>Holding Shares</p><p><br></p><p>No. of Shares allocated to the strategy's investor will be calculated based on the Monthly NAV, and confirmed after the end of the Subscription Period.</p><p><br></p><p>Redemption amount will be calculated based on the Monthly NAV, and confirmed by the Strategy Manager.</p><p><br></p><p>Holding Balance</p><p><br></p><p>Holding Balance = Holding Shares * Latest NAV</p><p><br></p><p>Fees Structure</p><p><br></p><p>Subscription Fee Rate:0%</p><p>Redemption Fee:0.5%</p><p><br></p><p>Receive Amount = Redeemed Shares * Redemption NAV*(1-0.5%)</p><p><br></p><p>Performance Fee:25%</p><p>Platform Fixed Fee:0%</p><p>Platform Variable Fee:10%</p><p><br></p><p>Performance Fee = Profit Before Fees * 25%</p><p>Platform Variable Fee = Profit Before Fees * 10%</p><p><br></p><p>Platform Fee (Variable): Matrixport will impose a variable platform fee amounting to 10% of the profit gained by the investor during the current NAV striking period (Profit = (NAV per unit at the current NAV Striking Date - NAV per unit at the previous NAV Striking Date) x investor's number of units). However, if investor incurs a loss during the current NAV striking period, Matrixport will not charge such variable platform fee.</p>"
        },
        {
          // Language code
          "language": "zh-CN",
          // Investment rules in the specified language
          "text": "<p>申购规则</p><p>本策略将采用比例配售方式。</p><p><br></p><p>在募集期内,用户在APP内策略介绍页投入本金,请您注意,此投资金额并不是最终有效申购金额。募集期结束后,Matrixport会依据每位用户的投资金额以及本期募集期发售规模进行计算,分配用户有效申购金额。 剩余本金将会退还至您的账户余额。</p><p><br></p><p>策略分配公式:</p><p>配售比例=本期策略限定发售规模/募集期内所有用户申购的总金额×100%;</p><p>投资者有效申购金额=该投资者募集期内投入的申购金额×配售比例</p><p><br></p><p>单人每期有效申购金额:10,000 -1,000,000 USDT</p><p>若单人最终有效申购金额低于10,000 USDT,则退回所有申购资金。若单人最终有效申购金额最终高于1,000,000 USDT,则本期有效申购金额为1,000,000 USDT。</p><p><br></p><p>申购活动开放期</p><p>每月7号 00:00:00-每月10号12:00:00 (UTC+8)</p><p><br></p><p>赎回活动开放期</p><p>每月7号 00:00:00-每月10号12:00:00 (UTC+8)</p><p><br></p><p>净值计算日</p><p>每月10日08:00:00(UTC+8)</p><p><br></p><p>结算/有效申购份额确认日</p><p>每月10/24号后的四个工作日内确认申购或完成赎回结算;处理期间,数据和指标将短暂暂停更新</p><p><br></p><p>策略资产净值</p><p><br></p><p>初始策略资产净值将在认购期结束后,才正式被确认。</p><p><br></p><p>策略资产净值将每日更新(以下期间除外:认购期结束后,至每月策略净值公报前)。</p><p><br></p><p>在不定期的日常系统维护中,可能会出现短暂的数据波动或数据缺失,请不要惊慌,数据会在一定时间内会恢复正常。</p><p><br></p><p>每日更新的产品净值仅作参考。为了保证数据和结算金额的准确性,用于确认认购股份数量、赎回金额、和策略收益的资产净值,会是每月资产净值。</p><p><br></p><p>持有股份</p><p><br></p><p>策略投资者获分配的股份数量,将根据截止日期的资产净值计算,并在认购期结束后确认。</p><p>赎回金额,将根据截止日期的资产净值计算,并由策略经理确认。</p><p><br></p><p>持有金额</p><p><br></p><p>持有金额 = 持有份额 * 最新策略资产净值</p><p><br></p><p>费用结构</p><p><br></p><p>申购费率:0%</p><p>赎回费率:0.5%</p><p><br></p><p>赎回金额 = 赎回份额 * 赎回净值*(1-0.5%)</p><p><br></p><p>业绩费率:25%</p><p>平台固定运营费率:0%</p><p>平台浮动运营费率:10%</p><p><br></p><p>业绩费 = 费前利润 * 25%</p><p>平台浮动运营费=费前利润 *10%,</p><p><br></p><p>平台浮动运营费率:Matrixport 将收取投资者在当前净值披露期间获得利润的10%作为浮动平台费用(利润=(当前净值披露日的每份净值-前一净值披露日的每份净值)x 投资者持有的份额数)。但是,如果投资者在本月披露期间发生损失,Matrixport 将不会收取这部分浮动平台费用。</p>"
        },
        {
          // Language code
          "language": "zh-TW",
          // Investment rules in the specified language
          "text": "<p>申購規則</p><p>本策略將採用比例配售方式。</p><p><br></p><p>在募集期內,用戶在APP內策略介紹頁投入本金,請您注意,此投資金額並不是最終有效申購金額。募集期結束後,Matrixport會依據每位用戶的投資金額以及本期募集期發售規模進行計算,分配用戶有效申購金額。 剩餘本金將會退還至您的賬戶餘額。</p><p><br></p><p>策略分配公式:</p><p>配售比例=本期策略限定發售規模/募集期內所有用戶申購的總金額×100%;</p><p>投資者有效申購金額=該投資者募集期內投入的申購金額×配售比例</p><p><br></p><p>單人每期有效申購金額:10,000 -1,000,000 USDT</p><p>若單人最終有效申購金額低於10,000 USDT,則退回所有申購資金。若單人最終有效申購金額最終高於1,000,000 USDT,則本期有效申購金額為1,000,000 USDT。</p><p><br></p><p>申購活動開放期</p><p>每月7號 00:00:00-每月10號12:00:00 (UTC+8)</p><p><br></p><p>贖回活動開放期</p><p>每月7號 00:00:00-每月10號12:00:00 (UTC+8)</p><p><br></p><p>淨值計算日</p><p>每月10日08:00:00(UTC+8)</p><p><br></p><p>結算/有效申購份額確認日</p><p>每月10/24號後的四個工作日內確認申購或完成贖回結算;處理期間,數據和指標將短暫暫停更新</p><p><br></p><p>策略資產淨值</p><p><br></p><p>初始策略資產淨值將在認購期結束後,才正式被確認。</p><p><br></p><p>策略資產淨值將每日更新(以下期間除外:認購期結束後,至每月策略淨值公報前)。</p><p><br></p><p>在不定期的日常系統維護中,可能會出現短暫的數據波動或數據缺失,請不要驚慌,數據會在一定時間內會恢復正常。</p><p><br></p><p>每日更新的產品淨值僅作參考。為了保證數據和結算金額的準確性,用於確認認購股份數量、贖回金額、和策略收益的資產淨值,會是每月資產淨值。</p><p><br></p><p>持有股份</p><p><br></p><p>策略投資者獲分配的股份數量,將根據截止日期的資產淨值計算,並在認購期結束後確認。</p><p>贖回金額,將根據截止日期的資產淨值計算,並由策略經理確認。</p><p><br></p><p>持有金額</p><p><br></p><p>持有金額 = 持有份額 * 最新策略資產淨值</p><p><br></p><p>費用結構</p><p><br></p><p>申購費率:0%</p><p>贖回費率:0.5%</p><p><br></p><p>贖回金額=贖回份額 * 贖回淨值*(1-0.5%)</p><p><br></p><p>業績費率:25%</p><p>平台固定運營費率:0%</p><p>平台浮動運營費率:10%</p><p><br></p><p>業績費 = 費前利潤 * 25%</p><p>平台浮動運營費 = 費前利潤 *10%,</p><p><br></p><p>平台浮動運營費率:Matrixport 將收取投資者在當前淨值披露期間獲得利潤的10%作為浮動平台費用(利潤=(當前淨值披露日的每份淨值-前一淨值披露日的每份淨值)x 投資者持有的份額數)。但是,如果投資者在本月披露期間發生損失,Matrixport 將不會收取這部分浮動平台費用。</p>"
        }
      ],
      "promotion_sentence": [
        {
          // Language code
          "language": "en-US",
          // Promotion sentence in the specified language
          "text": "promotion_sentence_en"
        },
        {
          // Language code
          "language": "zh-CN",
          // Promotion sentence in the specified language
          "text": "promotion_sentence_zh"
        },
        {
          // Language code
          "language": "zh-TW",
          // Promotion sentence in the specified language
          "text": "promotion_sentence_tw"
        }
      ],
      // Array of trading scope information
      "trading_scope": [],
      "personal_profile_introduction": [
        {
          // Language code
          "language": "en-US",
          // Personal profile introduction in the specified language
          "text": "personal_profile_introduction_en"
        },
        {
          // Language code
          "language": "zh-CN",
          // Personal profile introduction in the specified language
          "text": "personal_profile_introduction_zh"
        },
        {
          // Language code
          "language": "zh-TW",
          // Personal profile introduction in the specified language
          "text": "personal_profile_introduction_tw"
        }
      ],
      // Blacklist group ID
      "black_list_group_id": "",
      // Whitelist group ID
      "white_list_group_id": "",
      "labels": [
        [
          {
            // Language code
            "language": "en-US",
            // Label text in the specified language
            "text": "Ultra-low Risk Arbitrage"
          },
          {
            // Language code
            "language": "zh-CN",
            // Label text in the specified language
            "text": "极低风险套利"
          },
          {
            // Language code
            "language": "zh-TW",
            // Label text in the specified language
            "text": "極低風險套利"
          }
        ]
      ],
      "schools": [
        {
          // URL of the school logo
          "logo_url": "schools_url",
          // ID of the product school
          "product_school_id": "7213741606909108224",
          "name": [
            {
              // Language code
              "language": "en-US",
              // School name in the specified language
              "text": "schools_en"
            },
            {
              // Language code
              "language": "zh-CN",
              // School name in the specified language
              "text": "schools_zh"
            },
            {
              // Language code
              "language": "zh-TW",
              // School name in the specified language
              "text": "schools_tw"
            }
          ]
        }
      ],
      // Personal profile display flag
      "personal_profile_display": 0,
      // Broker page redirect flag
      "broker_page_redirect": 0,
      // Broker page URL
      "broker_page_url": "",
      // Performance display flag
      "performance_display": 2,
      // Position analysis value
      "position_analysis": 63,
      // Trade history position analysis value
      "trade_history_position_analysis": 63,
      // Investment history value
      "investment_history": 3,
      // Position analysis for code holder value
      "position_analysis_for_code_holder": 0,
      // Trade history position analysis for code holder value
      "trade_history_position_analysis_for_code_holder": 0,
      // Investment history for code holder value
      "investment_history_for_code_holder": 0,
      // Position analysis for investor value
      "position_analysis_for_investor": 0,
      // Trade history position analysis for investor value
      "trade_history_position_analysis_for_investor": 0,
      // Investment history for investor value
      "investment_history_for_investor": 0,
      "trading_points_introduction": [
        {
          // Language code
          "language": "en-US",
          // Trading points introduction in the specified language
          "text": "<p>Market-neutral approach that combines USDT-denominated swaps, basis and funding rate arbitrage, advanced risk management, and cutting-edge monitoring systems.</p>"
        },
        {
          // Language code
          "language": "zh-CN",
          // Trading points introduction in the specified language
          "text": "<p>以市场中性的方式结合USDT本位掉期、基差和资金费率套利、先进的风险管理和尖端监控系统。</p>"
        },
        {
          // Language code
          "language": "zh-TW",
          // Trading points introduction in the specified language
          "text": "<p>以市場中性的方式結合USDT本位掉期、基差和資金費率套利、先進的風險管理和尖端監控系統。</p>"
        }
      ],
      // Performance display PNL flag
      "performance_display_pnl": 2,
      // Private strategy visibility flag
      "private_strategy_visibility": 0
    },
    // Private strategy flag
    "is_private_strategy": 2,
    // Bitcoin performance flag
    "is_bitcoin_performance": 1,
    // ID
    "id": "105",
    // Created at timestamp
    "created_at": 1719887079024,
    // Updated at timestamp
    "updated_at": 1719887079024,
    // Volatility of the product
    "volatility": "0",
    // Maximum drawdown
    "maximum_drawdown": "0",
    // Number of holdings
    "holdings": 0,
    // APY over X days
    "x_day_apy": "0",
    // 7-day APY
    "apy_7d": "0",
    // 30-day APY
    "apy_30d": "0",
    // 90-day APY
    "apy_90d": "0",
    // 180-day APY
    "apy_180d": "0",
    // 1-year APY
    "apy1year": "0",
    // APY since inception
    "inception_to_date_apy": "0",
    // 7-day return
    "return_7d": "0",
    // 30-day return
    "return_30d": "0",
    // 90-day return
    "return_90d": "0",
    // 180-day return
    "return_180d": "0",
    // 1-year return
    "return1year": "0",
    // Return since inception
    "return_since_inception": "0",
    // Year-to-date return
    "ytd_return": "0",
    // Yearly volatility
    "yearly_volatility": "0",
    // Yearly Sharpe ratio
    "yearly_sharpe_ratio": "0",
    // Maximum drawdown in the last 30 days
    "maximum_drawdown_30d": "0",
    // Latest net asset value
    "latest_nav": "1",
    // Timestamp of the latest NAV in milliseconds
    "latest_nav_time_milli": 0,
    // Latest assets under management in USD
    "latest_usd_aum": "0",
    // Reported net asset value
    "reported_nav": "0",
    // Performance related to Bitcoin
    "bit_coin_performance": "0",
    // Absolute return
    "absolute_return": "0",
    // Time-weighted return
    "time_weighted_return": "0",
    // Sortino ratio
    "sortino_ratio": "0",
    // Calmar ratio
    "calmar_ratio": "0",
    // Net leverage ratio
    "net_leverage_ratio": "0",
    // Gross leverage ratio
    "gross_leverage_ratio": "0",
    // Gross delta
    "gross_delta": "0",
    // Maximum drawdown in the last 7 days
    "max_drawdown_last_7_days": "0",
    // Maximum drawdown in the last 6 months
    "max_drawdown_last_6_months": "0",
    // Maximum drawdown since inception
    "max_drawdown_since_inception": "0",
    // Timestamp of the last disclosure date
    "last_disclosure_date": 1719964800000,
    // UNIX timestamp of the last disclosure date
    "last_disclosure_date_u_time": 1719878400000,
    // Update frequency in months
    "update_frequency_month": 0,
    // Update frequency in month days
    "update_frequency_month_day": 0,
    // Update frequency in days
    "update_frequency_day": 2,
    // Range of days for the data
    "data_range_days": 1,
    // Flag for NAV display in reports
    "is_report_nav_display": 2,
    // Report RCU ID
    "report_rcu_id": 3337,
    // Reported external account ID
    "reported_ex_account_id": "0",
    // Flag for monitoring co-investment ratio
    "is_monitor_co_investment_ratio": 1,
    // Flag for auto NAV calculation
    "is_auto_nav_calculation": 1,
    // Flag for NAV display before fee
    "is_shown_nav_before_fee": 2,
    // Default shown net asset value
    "default_shown_nav": 0,
    // Performance fee mode for platform
    "mp_performance_fee_mode": 1,
    // Performance fee rate for platform
    "mp_performance_fee_rate": "0.01",
    // Performance fee mode for strateegy manager
    "fm_performance_fee_mode": 2,
    // Performance fee rate for strategy manager
    "fm_performance_fee_rate": "0.01",
    // Fixed fee rate for platform
    "mp_platform_fixed_fee_rate": "0.01",
    // Fixed fee rate for platform
    "fm_platform_fixed_fee_rate": "0.01",
    // Subscription fee rate
    "subscription_fee_rate": "0.06",
    // Redemption fee rate
    "redemption_fee_rate": "0.01",
    // Month for profit billing cycle
    "profit_bill_cycling_month": 1,
    // Day of the month for profit billing cycle
    "profit_bill_cycling_day": 1,
    // Network group commission rebate
    "network_group_commission_rebate": "0.3",
    // Accumulated commission rebate for profit
    "fm_profit_acc_commission_rebate": "0.2",
    // Scope of commission rebate
    "commission_rebate_scope": 15,
    // Minimum subscription amount
    "min_subscription_amount": "0.0001",
    // Daily subscription limit for users
    "user_daily_subscription_limit": "-1",
    // Subscription limit for users
    "user_subscription_limit": "-1",
    // Flag for launchpad status
    "is_launchpad": 2,
    // Minimum redemption shares
    "min_redemption_shares": "0.0001",
    // Timestamp for the start of the close period
    "close_period_start_time": 0,
    // Timestamp for the end of the close period
    "close_period_end_at_time": 0,
    // Number of days in the lockup period
    "lockup_period_days": 0,
    "strategy_manager": {
      // Name of the strategy manager
      "name": "JZL Capital",
      // Profit account ID
      "profit_account_id": "123",
      // Network group ID
      "network_group_id": "",
      // Type of the strategy manager
      "type": 1,
      // URL of the team's logo
      "team_logo": "https://i.imgur.com/IrtwPtb.png",
      // Website of the strategy manager
      "website": "https://www.jzlcapital.xyz/",
      "schools": [
        {
          // URL of the school logo
          "logo_url": "https://imgur.com/HDG4GgR",
          // ID of the product school
          "product_school_id": "7213729252712505344",
          "name": [
            {
              // Language code
              "language": "en-US",
              // School name in the specified language
              "text": "University of Washington"
            },
            {
              // Language code
              "language": "zh-CN",
              // School name in the specified language
              "text": "华盛顿大学 "
            },
            {
              // Language code
              "language": "zh-TW",
              // School name in the specified language
              "text": "華盛頓大學"
            }
          ]
        }
      ],
      "team_description": [
        {
          // Language code
          "language": "en-US",
          // Team description in the specified language
          "text": "<p>JZL Capital is a professional institution focusing on blockchain ecological research and investment, founded in Hong Kong. The founding team has rich experience, having served as CEOs and executive directors of many overseas listed companies. They also led the investment into eToro, the world's leading social investment network platform headquartered in Israel, embarking on their research and investment in the blockchain ecosystem. JZL Capital's quant team was established in 2021 and has reached strategic partnerships with multiple exchanges and institutions.</p>"
        },
        {
          // Language code
          "language": "zh-CN",
          // Team description in the specified language
          "text": "<p>团队成员毕业于芝加哥大学、卡耐基梅隆大学、莱斯大学、华盛顿大学、南洋理工、复旦大学等国内外一流名校,并曾服务于摩根士丹利、微软、美国银行、阿里巴巴等知名企业,拥有丰富的金融、互联网与区块链从业经验。</p>"
        },
        {
          // Language code
          "language": "zh-TW",
          // Team description in the specified language
          "text": "<p>團隊成員畢業於芝加哥大學、卡耐基梅隆大學、萊斯大學、華盛頓大學、南洋理工、復旦大學等國內外一流名校,並曾服務於摩根士丹利、微軟、美國銀行、阿里巴巴等知名企業,擁有豐富的金融、互聯網與區塊鏈從業經驗。</p>"
        }
      ],
      // PB strategy account ID
      "pb_strategy_account_id": null,
      // Avatar URL
      "avatar": ""
    },
    // Code
    "code": "",
    // Bind code
    "bind_code": "",
    // Private strategy visibility flag
    "private_strategy_visibility": 0,
    "product_fee_structure_v2": {
      // Fee structure type
      "type": "private_advanced",
      // Fee model ID
      "fee_model_id": "7213729255078092800",
      // Performance fee mode for platform
      "mp_performance_fee_mode": 1,
      "mp_performance_fee_rate": [
        {
          // AUM start
          "aum_start": "0",
          // AUM end
          "aum_end": "0",
          // Fee rate
          "fee_rate": "0.01"
        }
      ],
      // Performance fee mode for strategy manager
      "fm_performance_fee_mode": 2,
      "fm_performance_fee_rate": [
        {
          // AUM start
          "aum_start": "0",
          // AUM end
          "aum_end": "0",
          // Fee rate
          "fee_rate": "0.01"
        }
      ],
      // Fixed fee rate for platform
      "mp_platform_fixed_fee_rate": [
        {
          // AUM start
          "aum_start": "0",
          // AUM end
          "aum_end": "0",
          // Fee rate
          "fee_rate": "0.01"
        }
      ],
      // Fixed fee rate for platform
      "fm_platform_fixed_fee_rate": [
        {
          // AUM start
          "aum_start": "0",
          // AUM end
          "aum_end": "0",
          // Fee rate
          "fee_rate": "0.01"
        }
      ],
      "redemption_fee_rate": [
        {
          // Period start
          "period_start": 0,
          // Period end
          "period_end": 0,
          // Fee rate
          "fee_rate": "0.01"
        }
      ],
      // Subscription fee rate
      "subscription_fee_rate": "0.06",
      // Month for profit billing cycle
      "profit_bill_cycling_month": 1,
      // Day of the month for profit billing cycle
      "profit_bill_cycling_day": 1,
      // Network group commission rebate
      "network_group_commission_rebate": "0.3",
      // Accumulated commission rebate for profit
      "fm_profit_acc_commission_rebate": "0.2",
      // Scope of commission rebate
      "commission_rebate_scope": 15
    },
    // Promotion activity
    "promotion_activity": null
  },
  // Response message
  "message": ""
}

User Holding

Parameter Name Type Mandatory Location Description
is_cleared boolean N - Flag indicating if only cleared products should be returned
is_holding boolean N - Flag indicating if only currently holding products should be returned
product_id string N - ID of the specific product
# Using `curl` to send a GET request:
curl -X 'GET' \\
'https://mapi.matrixport.com/strategy/api/v2/product?USER-ID=472107&is_cleared=false&is_holding=true&product_id=7213729255023566848' \\
-H 'accept: application/json'
Parameter Name Type Description
code integer return code
data array array of product holding info, each one corresponds to a certain product
data.cumulative_holding_days integer The cumulative holding days of all orders the user has placed
data.cumulative_holding_days integer The cumulative holding days of all orders the user has placed
data.cumulative_revenues string equals to the sum result of unrealized revenues and realized revenue
data.cumulative_yield string cumulative_revenues/total subscription amount
data.currency string Currency of the product
data.display_name array Display name in multiple languages
data.display_name.language string Language code
data.display_name.text string Display name in the specified language
data.effective_orders_count integer Number of effective orders
data.est_redemption_confirm_timestamp integer Estimated redemption confirmation timestamp
data.est_subscription_confirm_timestamp integer Estimated subscription confirmation timestamp
data.holding_amount string Holding amount
data.holding_apy string Holding annual percentage yield
data.holding_balance string Holding balance
data.holding_status ProductHoldingStatus(integer) Holding status
data.holding_yield string Yield of holding
data.investment_rules array Investment rules in multiple languages
data.investment_rules.language string Language code
data.investment_rules.text string Investment rules in the specified language
data.latest_before_fee_nav string Latest net asset value before fee
data.latest_nav string Latest net asset value
data.latest_nav_timestamp integer Latest net asset value timestamp
data.lock_shares string Locked shares
data.pending_amount string Pending amount equals to holding_amount plus redeeming amount
data.pending_amount_usd string Pending amount in USD
data.position_cost string Position cost of the product
data.product_id string Product ID
data.realized_revenues string Realized revenues
data.realized_yield string Realized yield
data.redeeming string Redeeming shares
data.redeeming_amount string Redeeming amount
data.redeeming_amount_usd string Redeeming amount in USD
data.redempted string Redeemed shares
data.redemption_amount string Redemption amount
data.redemption_date integer Redemption date timestamp
data.reserved_redemption_shares string Reserved redemption shares
data.reserved_subscription_amount string Reserved subscription amount
data.shares string shares
data.subscribing string Subscribing amount
data.subscription_amount string Subscription amount
data.subscription_amount_before_fee string Subscription amount before fee
data.subscription_shares string Subscription shares
data.un_confirmed_amount string Unconfirmed amount
data.unrealized_pnl string Unrealized profit and loss
data.usd_price string USD price
data.usd_valuation string USD valuation
data.yesterday_pnl string Profit and loss of the previous day
data.yesterday_pnl_rate string Profit and loss rate of the previous day
data.yesterday_pnl_usd string Profit and loss of the previous day in USD
message string Message providing additional information about the response
{
  // Status code of the response
  "code": 0,
  "data": [
    {
      // Product ID
      "product_id": "7214442311336714240",
      "display_name": [
        {
          // Language code
          "language": "en-US",
          // Display name in the specified language
          "text": "0704mockcancel01"
        },
        {
          // Language code
          "language": "zh-CN",
          // Display name in the specified language
          "text": "0704mockcancel01"
        },
        {
          // Language code
          "language": "zh-TW",
          // Display name in the specified language
          "text": "0704mockcancel01"
        }
      ],
      // Currency of the product
      "currency": "USDT",
      // Holding balance
      "holding_balance": "8.1",
      // Number of shares
      "shares": "0",
      // Redeeming amount
      "redeeming": "0",
      // Redeeming amount
      "redeeming_amount": "0",
      // Redeeming amount in USD
      "redeeming_amount_usd": "0",
      // Subscribing amount
      "subscribing": "8.1",
      // Pending amount equals to holding_amount plus redeeming amount
      "pending_amount": "8.1",
      // Pending amount in USD
      "pending_amount_usd": "8.095303296",
      // Redeemed shares
      "redempted": "0",
      // Locked shares
      "lock_shares": "0",
      // Reserved redemption shares
      "reserved_redemption_shares": "0",
      // Reserved subscription amount
      "reserved_subscription_amount": "0",
      // Realized revenues
      "realized_revenues": "0",
      // Realized yield
      "realized_yield": "0",
      // cumulative_revenues/total subscription amount
      "cumulative_yield": "0",
      // Equals to the sum result of unrealized revenues and realized revenue
      "cumulative_revenues": "0",
      // Subscription amount
      "subscription_amount": "0",
      // Subscription amount before fee
      "subscription_amount_before_fee": "0",
      // Subscription shares
      "subscription_shares": "0",
      // Unconfirmed amount
      "un_confirmed_amount": "8.1",
      // Redemption amount
      "redemption_amount": "0",
      // Unrealized profit and loss
      "unrealized_pnl": "0",
      // Holding amount
      "holding_amount": "0",
      // Yield of holding
      "holding_yield": "0",
      // USD valuation
      "usd_valuation": "8.095303296",
      // USD price
      "usd_price": "0.99942016",
      // Latest net asset value
      "latest_nav": "1.005",
      // Latest net asset value before fee
      "latest_before_fee_nav": "1.005",
      // Latest net asset value timestamp
      "latest_nav_timestamp": 1720051200000,
      // Holding annual percentage yield
      "holding_apy": "0",
      // Profit and loss of the previous day
      "yesterday_pnl": "0",
      // Profit and loss of the previous day in USD
      "yesterday_pnl_usd": "0",
      // Profit and loss rate of the previous day
      "yesterday_pnl_rate": "0",
      // Position cost of the product
      "position_cost": "0",
      // Investment rules in multiple languages
      "investment_rules": [],
      // Redemption date timestamp
      "redemption_date": 0,
      // Holding status
      "holding_status": 1,
      // Number of effective orders
      "effective_orders_count": 0,
      // The cumulative holding days of all orders the user has placed
      "cumulative_holding_days": 0,
      // Estimated subscription confirmation timestamp
      "est_subscription_confirm_timestamp": 1720396800000,
      // Estimated redemption confirmation timestamp
      "est_redemption_confirm_timestamp": 0
    }
  ],
  // Message providing additional information about the response
  "message": ""
}

User Holding Volume

# Using `curl` to send a GET request:
curl -X 'GET' \\
'https://mapi.matrixport.com/strategy/api/v2/user/holding/volume' \\
-H 'accept: application/json' \\
-H 'USER-ID: request_user_id' \\
-H 'uid: unique_identifier'
Parameter Name Type Description
count integer Total number of holdings
amount string Total amount of holdings
apy string Total weighted average annual percentage yield
avg_holding_period string Average holding period in days
subscribing string Total Amount currently subscribing
redeeming string Total Amount currently redeeming
reserving_to_subscribe string Total Amount reserved to subscribe
reserving_to_redeem string Total Amount reserved to redeem
cumulative_yield string Total cumulative yield = Total cumulative revenues/Total subscribed amount
cumulative_revenues string Total cumulative revenues
realized_yield string Realized yield = Realized revenues / Total subscribed amount
realized_revenues string Total Realized revenues
unrealized_pnl string Total Unrealized profit and loss
holding_amount string Total holding amount
holding_yield string Total holding yield = Total Unrealized profit and loss/ total holding amount
pnl_yield string Total profit and loss yield (deprecated)
subscribed_amount string Total subscribed amount
yesterday_pnl string Total Profit and loss of the previous day
yesterday_hold_amount_usd string Total Holding amount in USD of the previous day
yesterday_yield string Total Yield of the previous day
message string Message providing additional information about the response
{
  // Status code of the response
  "code": 0,
  "data": {
    // Total number of holdings
    "count": 1,
    // Total amount of holdings
    "amount": "23.373538578",
    // Total weighted average annual percentage yield
    "apy": "0",
    // Average holding period in days
    "avg_holding_period": "2",
    // Total amount currently subscribing
    "subscribing": "0",
    // Total amount currently redeeming
    "redeeming": "0",
    // Total amount reserved to subscribe
    "reserving_to_subscribe": "0",
    // Total amount reserved to redeem
    "reserving_to_redeem": "0",
    // Total cumulative yield = Total cumulative revenues/Total subscribed amount
    "cumulative_yield": "0",
    // Total cumulative revenues
    "cumulative_revenues": "0",
    // Realized yield = Realized revenues / Total subscribed amount
    "realized_yield": "0",
    // Total realized revenues
    "realized_revenues": "0",
    // Total unrealized profit and loss
    "unrealized_pnl": "0",
    // Total holding amount
    "holding_amount": "23.373538578",
    // Total holding yield = Total unrealized profit and loss / total holding amount
    "holding_yield": "0",
    // Total profit and loss yield (deprecated)
    "pnl_yield": "0",
    // Total subscribed amount
    "subscribed_amount": "23.373538578",
    // Total profit and loss of the previous day
    "yesterday_pnl": "0",
    // Total holding amount in USD of the previous day
    "yesterday_hold_amount_usd": "0",
    // Total yield of the previous day
    "yesterday_yield": "0"
  },
  // Message providing additional information about the response
  "message": ""
}

Order Details

Parameter Name Type Mandatory Location Description
order_id string N query_string ID of the specific order
serial_no string N query_string serial number of the order
# Using `curl` to send a GET request:
curl -X 'GET' \\
  'https://mapi.matrixport.com/strategy/api/v2/order?order_id=7213808580171259904' \\
  -H 'accept: application/json' \\
  -H 'USER-ID: request_user_id'
Parameter Name Type Description
code integer Status code of the response
data object Contains the data of the response
data.actual_subscription_amount string Actual amount of the subscription
data.confirm_nav string Confirmed net asset value
data.confirm_nav_time integer Timestamp of the confirmed NAV
data.display_name array Display name in multiple languages
data.display_name.language string Language code
data.display_name.text string Display name in the specified language
data.err_code integer Error code
data.estimate_confirm_time integer Estimated confirmation time
data.high_water_nav string High water net asset value
data.high_water_nav_time integer Timestamp of the high water NAV
data.manage_fee_accrual_time integer Timestamp of the management fee accrual
data.order_id string ID of the order
data.serial_no string serial number of the order
data.product_id string ID of the product
data.redeeming_share string Share being redeemed
data.redemption_share string Share already redemption
data.remark string Remark
data.status OrderStatusType(integer) Status of the order
data.subscription_amount string Amount of the subscription
data.subscription_currency string Currency of the subscription
data.subscription_fee string Fee for the subscription
data.subscription_fee_rate string Rate of the subscription fee
data.subscription_refund_amount string Amount refunded from the subscription (in launchpad mode)
data.subscription_share string Share of the subscription
data.subscription_time integer Timestamp of the subscription
data.sync_agreement boolean Whether the subscription is synchronized with the agreement
data.unlock_time integer Timestamp when the subscription unlocks
data.user_id string ID of the user
data.window_batch_id integer Window batch ID the order is placed within
data.x_request_id string Request ID
message string Message providing additional information about the response

Response Example

{
  "code": 0,
  // integer, Status code of the response
  "data": {
    // string, ID of the user
    "user_id": "3090923",
    // string, ID of the order
    "order_id": "7213808580171259904",
    // string, ID of the product
    "product_id": "7213807695949062144",
    // string, amount of the subscription
    "subscription_amount": "25",
    // string, currency of the subscription
    "subscription_currency": "USDT",
    // string, actual amount of the subscription
    "actual_subscription_amount": "22.5",
    // string, amount refunded from the subscription (in launch pad mode)
    "subscription_refund_amount": "0",
    // string, fee for the subscription
    "subscription_fee": "2.5",
    // string, rate of the subscription fee
    "subscription_fee_rate": "0.1",
    // string, share of the subscription
    "subscription_share": "22.5",
    // string, share being redeemed
    "redeeming_share": "0",
    // string, share already redeemed
    "redemption_share": "0",
    // integer, timestamp of the subscription
    "subscription_time": 1719905991568,
    // integer, timestamp when the subscription unlocks
    "unlock_time": 1724889600000,
    // integer, estimated confirmation time
    "estimate_confirm_time": 1724947201000,
    // integer, timestamp of the confirmed NAV
    "confirm_nav_time": 1719705600000,
    // string, confirmed net asset value
    "confirm_nav": "1",
    // string, high water net asset value
    "high_water_nav": "1",
    // integer, timestamp of the high water NAV
    "high_water_nav_time": 1719705600000,
    // integer, timestamp of the management fee accrual
    "manage_fee_accrual_time": 1719705600000,
    // integer, status of the order
    "status": 300,
    // integer, error code
    "err_code": 0,
    // string, remark
    "remark": "",
    // boolean, whether the subscription is synchronized with the agreement
    "sync_agreement": false,
    // string, request ID
    "x_request_id": "",
    // array, display name in multiple languages
    "display_name": null,
    // integer, window batch ID the order is placed within
    "window_batch_id": 50,
    //string, serial number of the order
    "serial_no": "5cf38dd6-8e40-4774-8c5e-4970723d36d4"
  },
  // string, message providing additional information about the response
  "message": ""
}

Order Placement

Parameter Name Type Mandatory Location Description
amount string Y body Order amount
code string N body Code
serial_no string Y body serial number for the order
product_id string Y body ID of the product
# Using `curl` to send a POST request:
curl -X 'POST' \
  'https://mapi.matrixport.com/strategy/api/v2/outer/order' \
  -H 'accept: application/json' \
  -H 'USER-ID: request_user_id' \
  -H 'Content-Type: application/json' \
  -d '{[Redeem_Order_Documentation.md](..%2F..%2F..%2F..%2F..%2F..%2F..%2FDownloads%2FRedeem_Order_Documentation.md)
    "amount": "100",
    "code": "",
    "serial_no": "5cf38dd6-8e40-4774-8c5e-4970723d36d4",
    "product_id": "7213792140441542656"
  }'
Parameter Name Type Description
code integer Response code
data object Data containing the order details
data.order_id string ID of the order
data.order_status OrderStatusType(integer) Status of the order
data.serial_no string serial number of the order
message string Message providing additional information

Response Example

{
  "code": 0,
  // integer, Response code
  "data": {
    "order_id": "7218887028946362368",
    // string, ID of the order
    "order_status": 300,
    // integer, Status of the order
    //string, serial number of the order
    "serial_no": "5cf38dd6-8e40-4774-8c5e-4970723d36d4"
  },
  "message": "string"
  // string, Message providing additional information
}

Redeem Order

Parameter Name Type Mandatory Location Description
product_id string Y body ID of the product
share string Y body Share to be redeemed
serial_no string Y body Serial number of the redeem order
# Using `curl` to send a POST request:
curl -X 'POST' \
  'https://mapi.matrixport.com/strategy/api/v2/outer/redeem' \
  -H 'accept: application/json' \
  -H 'USER-ID: request_user_id' \
  -H 'Content-Type: application/json' \
  -d '{
    "product_id": "7213807695949062144",
    "serial_no": "5cf38dd6-8e40-4774-8c5e-4970723d36d4",
    "share": "18"
  }'
Parameter Name Type Description
code integer Response code
data object Data containing the redemption details
data.confirm_nav_time integer Timestamp of the confirmed NAV
data.confirm_time integer Timestamp of the confirmation
data.fm_performance_fee string Strategy manager performance fee
data.fm_platform_fixed_fee string Strategy manager platform fixed fee
data.mp_performance_fee string Matrixport performance fee
data.mp_platform_fixed_fee string Matrixport platform fixed fee
data.performance_fee string Performance fee
data.product_id string ID of the product
data.redemption_amount string Amount of the redemption
data.redemption_arrival_time integer Timestamp of redemption arrival
data.redemption_currency string Currency of the redemption
data.redemption_fee string Redemption fee
data.redemption_fee_rate string Rate of the redemption fee
data.redemption_id string ID of the redemption
data.redemption_nav string Redemption net asset value
data.redemption_nav_time integer Timestamp of the redemption NAV
data.redemption_profit string Profit from the redemption
data.redemption_share string Shares redeemed
data.redemption_time integer Timestamp of the redemption
data.settle_amount string settle_amount = Redemption principal + redemption profit - redemption fee
data.status RedemptionStatus(integer) Status of the redemption
data.user_id string User ID
data.window_batch_id integer Window batch ID the redemption is placed within
data.serial_no integer Serial Number of the redemption record
message string Message providing additional information

Response Example

{
  // integer, Response code
  "code": 0,
  "data": {
    // integer, Timestamp of the confirmed NAV
    "confirm_nav_time": 1719905843862,
    // integer, Timestamp of the confirmation
    "confirm_time": 1719905880536,
    // string, strategy manager performance fee
    "fm_performance_fee": "0.3",
    // string, strategy manager platform fixed fee
    "fm_platform_fixed_fee": "0.2",
    // string, Matrixport performance fee
    "mp_performance_fee": "0.2",
    // string, Matrixport platform fixed fee
    "mp_platform_fixed_fee": "0.2",
    // string, Performance fee
    "performance_fee": "0.2",
    // string, ID of the product
    "product_id": "7213807695949062144",
    // string, Amount of the redemption
    "redemption_amount": "20",
    // integer, Timestamp of redemption arrival
    "redemption_arrival_time": 0,
    // string, Currency of the redemption
    "redemption_currency": "USDT",
    // string, Redemption fee
    "redemption_fee": "0.2",
    // string, Rate of the redemption fee
    "redemption_fee_rate": "0.02",
    // string, ID of the redemption
    "redemption_id": "7218887025964212224",
    // string, Redemption net asset value
    "redemption_nav": "1.01",
    // integer, Timestamp of the redemption NAV
    "redemption_nav_time": 1719905880536,
    // string, Profit from the redemption
    "redemption_profit": "1.5",
    // string, Shares redeemed
    "redemption_share": "18",
    // integer, Timestamp of the redemption
    "redemption_time": 1719905880536,
    // string, Settlement amount = Redemption principal + redemption profit - redemption fee
    "settle_amount": "20",
    // integer, Status of the redemption
    "status": 400,
    // string, User ID
    "user_id": "472107",
    // integer, Window batch ID the redemption is placed within
    "window_batch_id": 32,
    // Serial Number of the redemption record
    "serial_no": "5cf38dd6-8e40-4774-8c5e-4970723d36d4"
  },
  // string, Message providing additional information
  "message": "string"
}

Redemption Details

Parameter Name Type Mandatory Description
order_id string Y ID of the order
serial_no string Y Order serial number
# Using `curl` to send a GET request:
curl -X 'GET' \
  'https://mapi.matrixport.com/strategy/api/v2/redeem?order_id=7218891282591375360&serial_no=7218891282591375360' \
  -H 'USER-ID: request user id' \
  -H 'accept: application/json'
Parameter Name Type Description
code integer Status code of the response
data object Contains the redemption data
data.confirm_nav_time integer Timestamp of confirmed NAV
data.confirm_time integer Confirmation timestamp
data.fm_performance_fee string Strategy Manager performance fee
data.fm_platform_fixed_fee string Strategy Manager Matrixport platform fixed fee
data.mp_performance_fee string Matrixport platform performance fee
data.mp_platform_fixed_fee string Matrixport platform fixed fee
data.performance_fee string Performance fee
data.product_id string ID of the redeemed product
data.redemption_amount string Redemption amount
data.redemption_arrival_time integer Timestamp of redemption arrival
data.redemption_currency string Currency used for redemption
data.redemption_fee string Redemption fee
data.redemption_fee_rate string Redemption fee rate
data.redemption_id string ID of the redemption
data.redemption_nav string NAV used for redemption
data.redemption_nav_time integer Timestamp of NAV used for redemption
data.redemption_profit string Profit from redemption after fee
data.redemption_share string shares redeemed
data.redemption_time integer Timestamp of redemption
data.serial_no string Redemption order serial number
data.settle_amount string Settled amount after redemption fees and charges
data.status RedemptionStatus(integer) Status of the redemption transaction
data.window_batch_id integer Window batch ID for redemption
message string Additional information message
{
  // integer, Status code of the response
  "code": 0,
  // object, Contains the redemption data
  "data": {
    // string, ID of the redemption
    "redemption_id": "7218891282591375360",
    // string, ID of the user
    "user_id": "605788",
    // string, ID of the redeemed product
    "product_id": "7218891251402530816",
    // integer, Timestamp of redemption arrival
    "redemption_arrival_time": 0,
    // integer, Timestamp of redemption
    "redemption_time": 1721779200000,
    // integer, Confirmation timestamp
    "confirm_time": 1721117804168,
    // integer, Timestamp of confirmed NAV
    "confirm_nav_time": 0,
    // string, Currency used for redemption
    "redemption_currency": "USDT",
    // string, Shares redeemed
    "redemption_share": "1000",
    // string, NAV used for redemption
    "redemption_nav": "1.037468493150684931",
    // integer, Timestamp of NAV used for redemption
    "redemption_nav_time": 1721952000000,
    // RedemptionStatus(integer), Status of the redemption transaction
    "status": 400,
    // string, Redemption fee rate
    "redemption_fee_rate": "0.03",
    // string, Redemption fee
    "redemption_fee": "31.124054794520547929",
    // string, Performance fee
    "performance_fee": "0",
    // string, Matrixport platform performance fee
    "mp_performance_fee": "7.5",
    // string, strategy Manager Matrixport platform fixed fee
    "fm_performance_fee": "2.500000000000000509",
    // string, Matrixport platform fixed fee
    "mp_platform_fixed_fee": "0.920547945205479451",
    // string, strategy Manager Matrixport platform fixed fee
    "fm_platform_fixed_fee": "1.61095890410958904",
    // string, Profit from redemption after fee
    "redemption_profit": "6.344438356164383071",
    // string, Settled amount after redemption fees and charges
    "settle_amount": "1006.344438356164383071",
    // integer, Window batch ID for redemption
    "window_batch_id": 861,
    // string, Redemption amount
    "redemption_amount": "1050",
    // string, Redemption order serial number
    "serial_no": "7218891282591375360"
  },
  // string, Additional information message
  "message": ""
}

Cancel Order

Parameter Name Type Mandatory Location Description
order_id string Y body ID of the order to cancel
#Using `curl` to send a POST request:
curl -X 'POST' \
  'https://mapi.matrixport.com/strategy/api/v2/order/cancel' \
  -H 'accept: application/json' \
  -H 'USER-ID: request_user_id' \
  -H 'Content-Type: application/json' \
  -d '{
    "order_id": "7181563878688808960"
  }'
Parameter Name Type Description
code integer Response code
data object Data containing the order details
data.order_id string ID of the order
data.order_status OrderStatusType(integer) Status of the order
message string Message providing additional information

Response Example

{
  // integer, Response code
  "code": 0,
  "data": {
    // string, ID of the order
    "order_id": "7181563878688808960",
    // integer, Status of the order
    "order_status": 200
  },
  // string, Message providing additional information
  "message": ""
}

Cancel Redeem Order

Parameter Name Type Mandatory Location Description
order_id string Y body ID of the order to be cancelled
# Using `curl` to send a POST request:
curl -X 'POST' \
  'https://mapi.matrixport.com/strategy/api/v2/redeem/cancel' \
  -H 'accept: application/json' \
  -H 'USER-ID: user123' \
  -H 'Content-Type: application/json' \
  -d '{
        "order_id": "7217078982746169344"
      }'
Parameter Name Type Description
code integer Status code of the response
data object Contains the data of the response
message string Message providing additional information
{
  "code": 0,
  // integer, Status code of the response
  "data": {},
  // object, Contains the data of the response
  "message": ""
  // string, Message providing additional information
}

Trade Record

Parameter Name Type Mandatory Location Description
currency string N query_string Currency of the order
limit integer N query_string Limit of records per page
offset integer N query_string Offset for pagination
order_id string N query_string ID of the specific order
order_type integer N query_string Type of the order eg. OrderTypeDeposit=1, OrderTypeRedeem = 2
product_id string N query_string ID of the product
start_time integer N query_string Start time filter
end_time integer N query_string End time filter
status integer N query_string Status of the order
status_type FilterStatusType(string) N query_string Type of order status
user_id string N query_string ID of the user
#Using `curl` to send a GET request:
curl -X 'GET' \
  'https://mapi.matrixport.com/strategy/api/v2/user/trade_record?currency=USDT&start_time=1626012000000&end_time=1628690400000' \
  -H 'accept: application/json' \
  -H 'USER-ID: user123'
Parameter Name Type Description
code integer Status code of the response
data object Contains the data of the response
data.count integer Total count of records
data.items array List of order record items
data.items.amount string Subscription amount of order (only for subscription)
data.items.currency string Currency of the order
data.items.order_id string ID of the order
data.items.order_type integer Type of the order, eg. OrderTypeDeposit=1, OrderTypeRedeem = 2
data.items.product_display_name array Display name in multiple languages
data.items.product_id string ID of the product
data.items.product_name string Name of the product
data.items.share string Redemption share of the order (only for redemption)
data.items.status integer Status of the order
data.items.time_stamp integer Timestamp of the order
data.items.user_id string ID of the user
data.items.subscription_fee_rate string Subscription fee rate
data.items.redemption_fee_rate string Redemption fee rate
data.items.fm_performance_fee string Strategy Manager performance fee
data.items.mp_performance_fee string Matrixport platform performance fee
data.items.mp_platform_fixed_fee string Matrixport platform fixed fee
data.items.fm_platform_fixed_fee string Strategy Manager platform fixed fee
data.items.subscription_fee string Subscription fee
data.items.redemption_fee string Redemption fee
data.items.confirm_shares_time integer Confirm shares timestamp
data.items.confirm_nav string Confirmed NAV
message string Message providing additional information
{
  "code": 0,
  // integer, Status code of the response
  "data": {
    // integer, Total count of records
    "count": 1,
    // array, List of trade record items
    "items": [
      {
        // string, Subscription amount of order (only for subscription)
        "amount": "5000",
        // string, Currency of the order
        "currency": "USDT",
        // string, ID of the order
        "order_id": "7217078982746169344",
        // integer, Type of the order, eg. OrderTypeDeposit=1, OrderTypeRedeem = 2
        "order_type": 1,
        // array, Display name in multiple languages
        "product_display_name": [
          {
            // string, Language code
            "language": "en-US",
            // string, Display name in the specified language
            "text": "0xlulu t突击策略"
          },
          {
            "language": "ru-RU",
            "text": "0xlulu t突击策略"
          },
          {
            "language": "zh-CN",
            "text": "0xlulu t突击策略"
          },
          {
            "language": "zh-TW",
            "text": "0xlulu t突击策略"
          }
        ],
        // string, ID of the product
        "product_id": "7217078701178347520",
        // string, Name of the product
        "product_name": "0xlulu t突击策略",
        // string, Redemption share of the order (only for redemption)
        "share": "4500",
        // integer, Status of the order
        "status": 300,
        // integer, Timestamp of the order
        "time_stamp": 1720685716279,
        // string, ID of the user
        "user_id": "51456",
        // string, Subscription fee rate
        "subscription_fee_rate": "0.1",
        // string, Redemption fee rate
        "redemption_fee_rate": "0",
        // string, strategy Manager performance fee
        "fm_performance_fee": "0",
        // string, Matrixport platform performance fee
        "mp_performance_fee": "0",
        // string, Matrixport platform fixed fee
        "mp_platform_fixed_fee": "0",
        // string, strategy Manager platform fixed fee
        "fm_platform_fixed_fee": "0",
        // string, Subscription fee
        "subscription_fee": "500",
        // string, Redemption fee
        "redemption_fee": "0",
        // integer, Confirm shares timestamp
        "confirm_shares_time": 1720656000000,
        // string, Confirmed NAV
        "confirm_nav": "1"
      }
    ]
  },
  // string, Message providing additional information
  "message": ""
}
Parameter Name Type Mandatory Location Description
day_timestamp_end integer Y query_string End timestamp for the data
day_timestamp_start integer Y query_string Start timestamp for the data
product_id string Y query_string ID of the product
#Using `curl` to send a GET request:
curl -X 'GET' \
  'https://mapi.matrixport.com/strategy/api/v2/risk/nav_chart_data_v2?day_timestamp_start=1626012000000&day_timestamp_end=1628690400000&product_id=7213729255023566848' \
  -H 'accept: application/json'
Parameter Name Type Description
code integer Status code of the response
data object Contains the data of the response
data.normal_nav array List of normal NAV records
data.normal_nav.before_fee_nav string Nav before fee
data.normal_nav.day_timestamp integer Day timestamp of the NAV
data.normal_nav.is_daily_first integer Indicator if it's the first NAV of the day
data.normal_nav.nav string Nav after fee
data.normal_nav.product_id string ID of the product
data.normal_nav.rcu_id integer Risk Control Unit ID
data.normal_nav.time_stamp integer Timestamp of the NAV
data.real_time_nav array List of real-time NAV records
data.real_time_nav.before_fee_nav string NAV before fees
data.real_time_nav.day_timestamp integer Day timestamp of the NAV
data.real_time_nav.is_daily_first integer Indicator if it's the first NAV of the day
data.real_time_nav.nav string Nav after fee
data.real_time_nav.product_id string ID of the product
data.real_time_nav.rcu_id integer Risk Control Unit ID
data.real_time_nav.time_stamp integer Timestamp of the NAV
message string Message providing additional information
{
  "code": 0,
  // integer, Status code of the response
  "data": {
    // array, List of normal NAV records
    "normal_nav": [
      {
        // integer, Risk Control Unit ID
        "rcu_id": 5437,
        // integer, Day timestamp of the NAV
        "day_timestamp": 1720224000000,
        // string, Nav After Fee
        "nav": "1",
        // string, NAV before fee
        "before_fee_nav": "1",
        // string, ID of the product
        "product_id": "7213729255023566848",
        // integer, Timestamp of the NAV
        "time_stamp": 1720224000000,
        // integer, Indicator if it's the first NAV of the day
        "is_daily_first": 1
      },
      {
        "rcu_id": 5437,
        "day_timestamp": 1720396800000,
        "nav": "1",
        "before_fee_nav": "1",
        "product_id": "7213729255023566848",
        "time_stamp": 1720396800000,
        "is_daily_first": 1
      },
      {
        "rcu_id": 5437,
        "day_timestamp": 1720483200000,
        "nav": "1.013",
        "before_fee_nav": "1.013",
        "product_id": "7213729255023566848",
        "time_stamp": 1720483200000,
        "is_daily_first": 1
      },
      {
        "rcu_id": 5437,
        "day_timestamp": 1720569600000,
        "nav": "1.013",
        "before_fee_nav": "1.013",
        "product_id": "7213729255023566848",
        "time_stamp": 1720569600000,
        "is_daily_first": 1
      }
    ],
    // array, List of real-time NAV records
    "real_time_nav": []
  },
  // string, Message providing additional information
  "message": ""
}

BTC Performance History

Parameter Name Type Mandatory Location Description
limit integer N query_string Limit of records for pagination
offset integer N query_string Offset for pagination
product_id string N query_string ID of the product
timestamp_in_ms integer N query_string Timestamp in milliseconds
timestamp_in_ms_end integer N query_string End timestamp in milliseconds
timestamp_in_ms_start integer N query_string Start timestamp in milliseconds
# Using `curl` to send a GET request:
curl -X 'GET' \
  'https://mapi.matrixport.com/strategy/api/v2/risk/btc_performance_history?limit=10&offset=0&product_id=7218887010432704512&timestamp_in_ms_start=1626012000000&timestamp_in_ms_end=1628690400000' \
  -H 'accept: application/json'
Parameter Name Type Description
code integer Status code of the response
data array List of BTC performance history records
data.day_timestamp_in_ms integer Day timestamp in milliseconds
data.nav string Net Asset Value
data.pre_nav string Previous Net Asset Value
data.pre_rate string Previous exchange rate of the currency to USD
data.product_id string ID of the product
data.rate string Current exchange rate of the currency to USD
data.rcu_id integer Risk Control Unit ID
data.timestamp_in_ms integer Timestamp in milliseconds
message string Message providing additional information
{
  "code": 0,
  // integer, Status code of the response
  "data": [
    {
      // integer, Day timestamp in milliseconds
      "day_timestamp_in_ms": 1720396800000,
      // string, Net Asset Value
      "nav": "1",
      // string, Previous Net Asset Value
      "pre_nav": "1",
      // string, Previous exchange rate of the currency to USD
      "pre_rate": "60000",
      // string, ID of the product
      "product_id": "7218887010432704512",
      // string, Current exchange rate of the currency to USD
      "rate": "60000",
      // integer, Risk Control Unit ID
      "rcu_id": 3337,
      // integer, Timestamp in milliseconds
      "timestamp_in_ms": 1720396800000
    },
    {
      "day_timestamp_in_ms": 1720742400000,
      "nav": "1",
      "pre_nav": "1",
      "pre_rate": "60000",
      "product_id": "7218887010432704512",
      "rate": "60000",
      "rcu_id": 3337,
      "timestamp_in_ms": 1720742400000
    }
  ],
  // string, Message providing additional information
  "message": ""
}

Bind Private Portfolio Access Code

This API endpoint is used to bind an access code to a user's account for accessing a private portfolio.

Parameter Type Description
code integer Response status code (0 = success, non-zero = error)
data string Product ID associated with the bound access code (e.g., "7368218963505000448")
message string Status message (empty string for successful requests)

Request:

curl -X 'GET' \
  'https://mapi.matrixport.com/fund/api/v2/private-portfolio/access-code/bind?code=RF269' \
  -H 'accept: application/json' \
  -H 'USER-ID: 605788'

Response:

{
  "code": 0,
  "data": "7368218963505000448",
  "message": ""
}

Product Statistical Return Data

Parameter Name Type Mandatory Location Description
product_id string Y query_string ID of the product
user_id string Y query_string ID of the user requesting data
# Using `curl` to send a GET request:
curl -X 'GET' \
  'https://fund.qat.rd2.matrixport.io/fund/api/v2/product/product-statistical-return-data?product_id=7368217089901015040&user_id=740' \
  -H 'accept: application/json'
Parameter Name Type Description
code integer Status code of the response (0 indicates success)
data object Container for the statistical return data
data.product_id string ID of the product
data.strategy_id string ID of the investment strategy
data.day_timestamp integer Day timestamp reference
data.count integer Count of records or data points
data.rank_return_7d integer Ranking based on 7-day return
data.rank_return_30d integer Ranking based on 30-day return
data.rank_return_60d integer Ranking based on 60-day return
data.rank_return_90d integer Ranking based on 90-day return
data.rank_return_180d integer Ranking based on 180-day return
data.rank_return_1year integer Ranking based on 1-year return
data.rank_return_since_inception integer Ranking based on return since inception
data.rank_return_ytd integer Ranking based on year-to-date return
data.rating_return_7d integer Rating based on 7-day return
data.rating_return_30d integer Rating based on 30-day return
data.rating_return_60d integer Rating based on 60-day return
data.rating_return_90d integer Rating based on 90-day return
data.rating_return_180d integer Rating based on 180-day return
data.rating_return_1year integer Rating based on 1-year return
data.rating_return_since_inception integer Rating based on return since inception
data.rating_return_ytd integer Rating based on year-to-date return
data.avg_return_7d string Average 7-day return
data.avg_return_30d string Average 30-day return
data.avg_return_60d string Average 60-day return
data.avg_return_90d string Average 90-day return
data.avg_return_180d string Average 180-day return
data.avg_return1year string Average 1-year return
data.avg_return_since_inception string Average return since inception
data.avg_return_ytd string Average year-to-date return
data.avg_apy_7d string Average 7-day Annual Percentage Yield
data.avg_apy_30d string Average 30-day Annual Percentage Yield
data.avg_apy_60d string Average 60-day Annual Percentage Yield
data.avg_apy_90d string Average 90-day Annual Percentage Yield
data.avg_apy_180d string Average 180-day Annual Percentage Yield
data.avg_apy1year string Average 1-year Annual Percentage Yield
data.avg_apy_since_inception string Average Annual Percentage Yield since inception
data.avg_apy_ytd string Average year-to-date Annual Percentage Yield
data.rank_apy_7d integer Ranking based on 7-day APY
data.rank_apy_30d integer Ranking based on 30-day APY
data.rank_apy_60d integer Ranking based on 60-day APY
data.rank_apy_90d integer Ranking based on 90-day APY
data.rank_apy_180d integer Ranking based on 180-day APY
data.rank_apy_1year integer Ranking based on 1-year APY
data.rank_apy_since_inception integer Ranking based on APY since inception
data.rank_apy_ytd integer Ranking based on year-to-date APY
data.benchmark_return_7d string Benchmark 7-day return
data.benchmark_return_30d string Benchmark 30-day return
data.benchmark_return_60d string Benchmark 60-day return
data.benchmark_return_90d string Benchmark 90-day return
data.benchmark_return_180d string Benchmark 180-day return
data.benchmark_return_1year string Benchmark 1-year return
data.benchmark_return_since_inception string Benchmark return since inception
data.benchmark_return_ytd string Benchmark year-to-date return
data.benchmark_apy_7d string Benchmark 7-day APY
data.benchmark_apy_30d string Benchmark 30-day APY
data.benchmark_apy_60d string Benchmark 60-day APY
data.benchmark_apy_90d string Benchmark 90-day APY
data.benchmark_apy_180d string Benchmark 180-day APY
data.benchmark_apy_1year string Benchmark 1-year APY
data.benchmark_apy_since_inception string Benchmark APY since inception
data.benchmark_apy_ytd string Benchmark year-to-date APY
data.omit_benchmark_data boolean Indicates if benchmark data is omitted
data.currency_benchmark_hint_words array Hint words related to currency benchmark
message string Message providing additional information (empty for successful responses)
{
  "code": 0,
  // integer, Status code of the response (0 indicates success)
  "data": {
    // string, ID of the product
    "product_id": "7368217089901015040",
    // string, ID of the investment strategy
    "strategy_id": "7368187299626168320",
    // integer, Day timestamp reference
    "day_timestamp": 0,
    // integer, Count of records or data points
    "count": 1,
    // integer, Ranking based on 7-day return
    "rank_return_7d": 1,
    // integer, Ranking based on 30-day return
    "rank_return_30d": 1,
    // integer, Ranking based on 60-day return
    "rank_return_60d": 1,
    // integer, Ranking based on 90-day return
    "rank_return_90d": 1,
    // integer, Ranking based on 180-day return
    "rank_return_180d": 1,
    // integer, Ranking based on 1-year return
    "rank_return_1year": 1,
    // integer, Ranking based on return since inception
    "rank_return_since_inception": 1,
    // integer, Ranking based on year-to-date return
    "rank_return_ytd": 1,
    // integer, Rating based on 7-day return
    "rating_return_7d": 0,
    // integer, Rating based on 30-day return
    "rating_return_30d": 0,
    // integer, Rating based on 60-day return
    "rating_return_60d": 0,
    // integer, Rating based on 90-day return
    "rating_return_90d": 0,
    // integer, Rating based on 180-day return
    "rating_return_180d": 0,
    // integer, Rating based on 1-year return
    "rating_return_1year": 0,
    // integer, Rating based on return since inception
    "rating_return_since_inception": 0,
    // integer, Rating based on year-to-date return
    "rating_return_ytd": 0,
    // string, Average 7-day return
    "avg_return_7d": "0",
    // string, Average 30-day return
    "avg_return_30d": "0",
    // string, Average 60-day return
    "avg_return_60d": "0",
    // string, Average 90-day return
    "avg_return_90d": "0",
    // string, Average 180-day return
    "avg_return_180d": "0",
    // string, Average 1-year return
    "avg_return1year": "0",
    // string, Average return since inception
    "avg_return_since_inception": "0",
    // string, Average year-to-date return
    "avg_return_ytd": "0",
    // string, Average 7-day Annual Percentage Yield
    "avg_apy_7d": "0",
    // string, Average 30-day Annual Percentage Yield
    "avg_apy_30d": "0",
    // string, Average 60-day Annual Percentage Yield
    "avg_apy_60d": "0",
    // string, Average 90-day Annual Percentage Yield
    "avg_apy_90d": "0",
    // string, Average 180-day Annual Percentage Yield
    "avg_apy_180d": "0",
    // string, Average 1-year Annual Percentage Yield
    "avg_apy1year": "0",
    // string, Average Annual Percentage Yield since inception
    "avg_apy_since_inception": "0",
    // string, Average year-to-date Annual Percentage Yield
    "avg_apy_ytd": "0",
    // integer, Ranking based on 7-day APY
    "rank_apy_7d": 1,
    // integer, Ranking based on 30-day APY
    "rank_apy_30d": 1,
    // integer, Ranking based on 60-day APY
    "rank_apy_60d": 1,
    // integer, Ranking based on 90-day APY
    "rank_apy_90d": 1,
    // integer, Ranking based on 180-day APY
    "rank_apy_180d": 1,
    // integer, Ranking based on 1-year APY
    "rank_apy_1year": 1,
    // integer, Ranking based on APY since inception
    "rank_apy_since_inception": 1,
    // integer, Ranking based on year-to-date APY
    "rank_apy_ytd": 1,
    // string, Benchmark 7-day return
    "benchmark_return_7d": "0",
    // string, Benchmark 30-day return
    "benchmark_return_30d": "0",
    // string, Benchmark 60-day return
    "benchmark_return_60d": "0",
    // string, Benchmark 90-day return
    "benchmark_return_90d": "0",
    // string, Benchmark 180-day return
    "benchmark_return_180d": "0",
    // string, Benchmark 1-year return
    "benchmark_return_1year": "0",
    // string, Benchmark return since inception
    "benchmark_return_since_inception": "0",
    // string, Benchmark year-to-date return
    "benchmark_return_ytd": "0",
    // string, Benchmark 7-day APY
    "benchmark_apy_7d": "0",
    // string, Benchmark 30-day APY
    "benchmark_apy_30d": "0",
    // string, Benchmark 60-day APY
    "benchmark_apy_60d": "0",
    // string, Benchmark 90-day APY
    "benchmark_apy_90d": "0",
    // string, Benchmark 180-day APY
    "benchmark_apy_180d": "0",
    // string, Benchmark 1-year APY
    "benchmark_apy_1year": "0",
    // string, Benchmark APY since inception
    "benchmark_apy_since_inception": "0",
    // string, Benchmark year-to-date APY
    "benchmark_apy_ytd": "0",
    // boolean, Indicates if benchmark data is omitted
    "omit_benchmark_data": true,
    // array, Hint words related to currency benchmark
    "currency_benchmark_hint_words": []
  },
  // string, Message providing additional information
  "message": ""
}

Product Windows Information

Parameter Name Type Mandatory Location Description
product_id string Y query_string ID of the product
Header Name Type Mandatory Description
USER-ID string Y ID of the user requesting data
# Using `curl` to send a GET request:
curl -X 'GET' \
  'https://fund.qat.rd2.matrixport.io/fund/api/v2/product/windows?product_id=7368511712036859904' \
  -H 'accept: application/json' \
  -H 'USER-ID: 605788'
Parameter Name Type Description
code integer Status code of the response (0 indicates success)
data object Container for the window information
data.subscription_window object Subscription window details
data.subscription_window.id integer Unique identifier for the subscription window
data.subscription_window.product_id string ID of the product
data.subscription_window.product_name string Name of the product
data.subscription_window.currency string Currency used for the product
data.subscription_window.start_time integer Start timestamp of the subscription window (in milliseconds)
data.subscription_window.end_time integer End timestamp of the subscription window (in milliseconds)
data.subscription_window.latest_confirm_time integer Latest confirmation timestamp for subscriptions (in milliseconds)
data.subscription_window.confirm_time integer Confirmation timestamp for subscriptions (in milliseconds)
data.subscription_window.deposit_quota string Maximum deposit quota for the subscription window
data.subscription_window.deposit_amount string Total deposited amount in the subscription window
data.subscription_window.is_instant_handling_window integer Indicator for instant handling window (2 = enabled)
data.redeem_window object Redemption window details
data.redeem_window.id integer Unique identifier for the redemption window
data.redeem_window.product_id string ID of the product
data.redeem_window.product_name string Name of the product
data.redeem_window.currency string Currency used for the product
data.redeem_window.start_time integer Start timestamp of the redemption window (in milliseconds)
data.redeem_window.end_time integer End timestamp of the redemption window (in milliseconds)
data.redeem_window.latest_confirm_time integer Latest confirmation timestamp for redemptions (in milliseconds)
data.redeem_window.confirm_time integer Confirmation timestamp for redemptions (in milliseconds)
data.redeem_window.deposit_quota string Maximum quota related to redemptions
data.redeem_window.deposit_amount string Amount related to redemptions
data.redeem_window.is_instant_handling_window integer Indicator for instant handling window (0 = disabled)
message string Message providing additional information (empty for successful responses)
{
  "code": 0,
  // integer, Status code of the response (0 indicates success)
  "data": {
    "subscription_window": {
      // integer, Unique identifier for the subscription window
      "id": 517,
      // string, ID of the product
      "product_id": "7368511712036859904",
      // string, Name of the product
      "product_name": "BDDbdd product",
      // string, Currency used for the product
      "currency": "USDT",
      // integer, Start timestamp of the subscription window (in milliseconds)
      "start_time": 1757635200000,
      // integer, End timestamp of the subscription window (in milliseconds)
      "end_time": 1757721600000,
      // integer, Latest confirmation timestamp for subscriptions (in milliseconds)
      "latest_confirm_time": 1757894400000,
      // integer, Confirmation timestamp for subscriptions (in milliseconds)
      "confirm_time": 1757808000000,
      // string, Maximum deposit quota for the subscription window
      "deposit_quota": "1000000",
      // string, Total deposited amount in the subscription window
      "deposit_amount": "0",
      // integer, Indicator for instant handling window (2 = enabled)
      "is_instant_handling_window": 2
    },
    "redeem_window": {
      // integer, Unique identifier for the redemption window
      "id": 517,
      // string, ID of the product
      "product_id": "7368511712036859904",
      // string, Name of the product
      "product_name": "BDDbdd product",
      // string, Currency used for the product
      "currency": "USDT",
      // integer, Start timestamp of the redemption window (in milliseconds)
      "start_time": 1757635200000,
      // integer, End timestamp of the redemption window (in milliseconds)
      "end_time": 1757721600000,
      // integer, Latest confirmation timestamp for redemptions (in milliseconds)
      "latest_confirm_time": 1757894400000,
      // integer, Confirmation timestamp for redemptions (in milliseconds)
      "confirm_time": 1757808000000,
      // string, Maximum quota related to redemptions
      "deposit_quota": "1000000",
      // string, Amount related to redemptions
      "deposit_amount": "0",
      // integer, Indicator for instant handling window (0 = disabled)
      "is_instant_handling_window": 0
    }
  },
  // string, Message providing additional information
  "message": ""
}

Product Reservation

Parameter Name Type Mandatory Location Description
amount string Y body Order amount
code string N body Code
order_type integer Y body Type of the order eg. OrderTypeDeposit=1, OrderTypeRedeem = 2
product_id string Y body ID of the product
reservation_id string N body ID of the reservation record
# Using `curl` to send a POST request:
curl -X 'POST' \
  'https://mapi.matrixport.com/strategy/api/v2/product/reservation' \
  -H 'accept: application/json' \
  -H 'USER-ID: request_user_id' \
  -H 'Content-Type: application/json' \
  -d '{
    "amount": "100",
    "code": "",
    "order_type":1,
    "product_id": "7213792140441542656"
  }'
Parameter Name Type Description
code integer Response code
data object Data containing the order details
data.reservation_id string ID of the reservation record
message string Message providing additional information

Response Example

{
  "code": 0,
  "data": {
    "reservation_id": "7218887028946362368"
  },
  "message": "string"
  // string, Message providing additional information
}

Order Agreement Preview

Parameter Name Type Mandatory Location Description
product_id string Y query_string ID of the product
agreement_type integer Y query_string eg 1:product protocol 2:risk protocol
number string Y query_string eg fund or fund_risk
Header Name Type Mandatory Description
USER-ID string Y ID of the user requesting data
# Using `curl` to send a GET request:
curl -X 'GET' \
  'https://fund.qat.rd2.matrixport.io/strategy/api/v2/order/agreement/preview?agreement_type=1&number=fund&product_id=7295357230424199168' \
  -H 'accept: application/json' \
  -H 'USER-ID: 605788'
Parameter Name Type Description
code integer Status code of the response (0 indicates success)
data object Container for the window information
data.agreement_id integer ID of the agreement
data.number integer agreement number
data.language string agreement language
data.content string agreement content
data.name string agreement name
message string Message providing additional information (empty for successful responses)
{
  "code": 0,
  "data": {
    "agreement_id": 7295357230424199132,
    "number": "fund",
    "language": "zh-CN",
    "content": "order agreement preview content",
    "name": "agreement 1 "
  },
  "message": ""
}

Reservation Record

Parameter Name Type Mandatory Location Description
user_id string N query_string the user of rever
limit integer N query_string Limit of records per page
offset integer N query_string Offset for pagination
order_id string N query_string deposit order id or redeem record id
order_type integer N query_string Type of the order eg. OrderTypeDeposit=1, OrderTypeRedeem = 2
reservation_record_id integer N query_string reservation_record_id
product_id string N query_string ID of the product
created_at_start integer N query_string create record Start time filter
end_time integer N query_string create record End time filter
status integer N query_string Type of the ReservationStatus
currency string N query_string currency of the product
#Using `curl` to send a GET request:
curl -X 'GET' \
'https://mapi.matrixport.com/strategy/api/v2/product/reservation/records?reservation_record_id=7226488781719740416' \
-H 'accept: application/json' \
-H 'USER-ID: user123'
Parameter Name Type Description
code integer Status code of the response
data object Contains the data of the response
data.count integer Total count of records
data.items array List of order record items
data.items.amount string actual Subscription amount or redemption share of reservation
data.items.req_amount string user request Subscription amount or redemption share of reservation
data.items.currency string Currency of the order
data.items.order_id string ID of the subscription or redemption order
data.items.type integer Type of the order, eg. OrderTypeDeposit=1, OrderTypeRedeem = 2
data.items.display_name object product i18n name
data.items.execution_time_milli integer The time when the subscription or redemption order is generated
data.items.is_customized integer the product is customized product or no
data.items.status integer Status of the reservation record
message string Message providing additional information
{
  "code": 0,
  "data": {
    "count": 1,
    "items": [
      {
        "reservation_record_id": "7375858744909049856",
        "created_at": 1758541761616,
        "status": 5,
        "type": 1,
        "amount": "1000",
        "req_amount": "1000",
        "currency": "USDT",
        "product_id": "7375858721148317696",
        "display_name": [],
        "execution_time_milli": 1758541765113,
        "product_name": "",
        "is_customized": 2,
        "order_id": "7375858744909049856"
      }
    ]
  },
  "message": ""
}

Enums

This part will list out some enums which is too long or frequently appeared, and there to be placed here for easiness of checking

ProductSortRule(int32)

value enum value
1 ProductSortRuleThirtyDaysApy
2 ProductSortRuleVolatility
3 ProductSortRuleNumberOfUsers
4 ProductSortRuleReturnSinceInception
5 ProductSortRuleSevenDaysReturn
6 ProductSortRuleThreeMonthsReturn
7 ProductSortRuleSixMonthsReturn
8 ProductSortRuleYtdReturn
9 ProductSortRuleYearlySharpeRatio
10 ProductSortRuleRunDay
11 ProductSortRuleThirtyDaysReturn
12 ProductSortRuleThirtyDaysApyNotRanking
13 ProductSortRuleMaxDrawDownSinceInception
14 ProductSortRuleAum

BoolFlag(int32)

value enum value
1 BoolFlagTrue
2 BoolFlagFalse

ApyDisplayRule(int32)

value enum value
0 APYDisplayInceptionToDateAPY
1 APYDisplayExpected
2 APYDisplayXDaysAPY
3 APYDisplayReturnSinceInception
4 APYDisplay30DReturn
5 APYDisplay1YDReturn

CommissionRebateScopeType

value enum value
1 FixedPlatformFee
2 PerformanceFee
4 RedemptionFee
8 SubscriptionFee

ProductHoldingStatus

value enum value
0 HoldingStatusYetHolding
1 HoldingStatusPending
2 HoldingStatusHolding
4 HoldingStatusRedeemed
8 HoldingStatusRedeemingProcess

OrderStatusType

value enum value
0 OrderStatusProcessing
100 OrderStatusWaitConfirm
110 OrderStatusCancelRefunding
200 OrderStatusCancel
300 OrderStatusClosing

RedemptionStatus

value enum value
0 RedemptionStatusCreated
100 RedemptionCanceled
300 RedemptionStatusWaitSettled
400 RedemptionStatusSettled

FilterStatusType

value enum value
"" StatusTypeAll
pending StatusTypePending
confirm StatusTypeConfirm
cancelled StatusTypeCancel
pending_confirm StatusTypePendingConfirm

Error Codes

Error Code Description (English)
12170001 No permission
12170002 Currency mismatch
12170003 Other
12070501 File does not exist when downloading
12170003 Amount must be greater than zero
12170004 Not implemented
12170005 Allocation failed
12170006 New order canceled
12170007 Must be in a transaction
12170008 Model is nil when updating the database, cannot find the table to update
12170009 Not using "for update" in transaction
12070010 Record not found
12070502 Failed to upload file to OOS
12070516 Empty response data
12170101 RCU already exists
12170102 Product not in selling status
12170103 Access code used up
12170104 Access code count reached limit
12170105 Less than minimum purchase amount
12170106 Purchase user group limit
12170107 Insufficient window balance, deprecated, use CodeErrSubscriptionQuotaLimit
12170108 Order has been processed
12170109 Order is processing
12170110 Transfer amount error
12170111 Insufficient holding quota
12170112 Insufficient balance
12170113 Not within product window period
12170114 Strategy manager not found
12170115 Subscription quota limit
12170116 Redemption quota limit
12170117 Private product not listed
12170118 No permission to operate private strategy
12170119 Private product has orders
12170200 Incorrect order status
12170201 Activity not finished
12170300 Existing promotion activity time conflict, please check and modify
12170301 Promotion agent already exists
12170302 No agent permission
12170303 Access code error
12170304 Promotion expired
12170305 Promotion paused
12170306 Invalid promotion end time for extension
12170307 Unauthorized promotion operator
12170308 Unauthorized promotion agent operator
12170309 User has already been an agent for this promotion
12170310 Access code has been removed
12170311 Not within the promotion activity time