Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The examples below show the record relationship linkage depending on whether there is an overlying, underlying or related relationship.

Table of Contents
  • "self" reference is self-referential and returns single product or instrument referenced (productGuid will be the same as that returned in the original query).

  • underlyingProducts link returns all of the underlying products for the associated productGuid.

  • no overlyingProducts.

  • instruments link returns all of the instruments for the associated productGuid.

Expand
Code Block
  "_links" : {
    "self" : {
      "href" : "__/v#/products/[productGuid]"
    },
    "underlyingProducts" : {
      "href" : "__/v#/products/[productGuid]/underlyings"
    },
    "instruments" : {
      "href" : "__/v#/products/[productGuid]/instruments"
    }
  }
  • "self" reference is self-referential and returns single product or instrument referenced (productGuid will be the same as that returned in the original query).

  • underlyingProducts link returns all of the related underlying products for the associated productGuid.

  • overlyingProducts link returns all of the related overlying products for the associated productGuid.

  • instruments link returns all of the instruments for the associated productGuid.

Expand
Code Block
  "_links" : {
    "self" : {
      "href" : "__/v#/products/[productGuid]"
    },
    "underlyingProducts" : {
      "href" : "__/v#/products/[productGuid]/underlyings"
    },
    "overlyingProducts" : {
      "href" : "__/v#/products/[productGuid]/overlyings"
    },
    "instruments" : {
      "href" : "__/v#/products/[productGuid]/instruments"
    }
  }

Underlying relationship example. Number of sides, ratio and legNumber may vary based on strategy type. Overlying productGuid will always be the same. Overlying products will display similarly, except that underlying productGuid will always be the same.

Expand
Code Block
{
    "_embedded": {
        "relationships": [
            {
                "marketSide": "SELL",
                "legNumber": "2",
                "ratio": "1",
                "_links": {
                    "underlyingProduct": {
                        "href": "__/v#/products/[underlying productGuid]"
                    },
                    "overlyingProduct": {
                        "href": "__/v#/products/[overlying productGuid1]"
                    }
                }
            },
            {
                "marketSide": "BUY",
                "legNumber": "1",
                "ratio": "1",
                "_links": {
                    "underlyingProduct": {
                        "href": "__/v#/products/[underlying productGuid]"
                    },
                    "overlyingProduct": {
                        "href": "__/v#/products/[overlying productGuid2]"
                    }
                }
            }
        ]
    },
    "_links": {
        "self": {
            "href": "__/v#/products/[productGuid]/underlyings?page=0&size=20"
        }
    },
    "_metadata": {
        "size": 20,
        "totalElements": 2,
        "totalPages": 1,
        "number": 0,
        "type": "page"
    }
}

Links that will display when there is a BTIC underlying (isBticProduct="Y"). The structure is the same for a TAM (isTamProduct="Y") or TAS (isTasProduct="Y"). This example shows what will display for a BTIC product with overlyings.

Expand
Code Block
  "_links": {
                    "self": {
                        "href": "__/v#/products/[productGuid]"
                    },
                    "overlyingProducts" : {
                        "href" : "__/v#/products/[productGuid]/overlyings"
                    }
                    "bticUnderlying": {
                        "href": "__/v#/products/[BTIC underlying productGuid]"
                    },
                    "instruments": {
                        "href": "__/v#/products/[productGuid]/instruments"
                    }
               }[

The related links will display when there is a relationship between the Volatility Index (CVOL)  products and related futures products. Futures products with a related CVOL Index will reflect a new "relatedIndexes" href.

This link will return all CVOL related indexes related to the futures product. For example,

  • relatedIndexes for the British Pound future product (Clearing code BP; CME Globex code 6B) will return

    • GBVL

    • FXVL 

 relatedIndexes structure:

...

This link will return all FX futures products related to the CVOL product. For example,

  • relatedFutures for the GBVL product will return

    • British Pound future product (Clearing code BP; CME Globex code 6B)

 relatedFutures  relatedFutures structure:

Expand
Code Block
 links": {                    
             "self": {                        
                "href": _/v#/products/[guid]
              },              
             "relatedFuturesProducts": {                        
                "href": _/v#/products/[guid]/relatedfutures                      
              }                                                                   
         } 

  • "self" reference is self-referential and returns single product or instrument referenced (Guid will be the same as that returned in the query above).

  • underlyingInstruments link returns all of the related underlying instruments for the associated Guid.

Expand
Code Block
languagejs
"_links": {
                    "self": {
                        "href": "__/v#/instruments/[guid]"
                    },
                    "underlyingInstruments": {
                        "href": "__/v#/instruments/[guid]/underlyings"
                    },
                    "product": {
                        "href": "__/v#/products/[productGuid]"
                    }
                }

Instrument can have multiple underlying instruments, depending on related product.

Expand
Code Block
languagejs
"_embedded": {
        "relationships": [
            {
                "marketSide": null,
                "legNumber": null,
                "ratio": null,
                "_links": {
                    "underlyingInstrument": {
                        "href": "https://api.refdata.nr.cmegroup.com/v#/instruments/[underlying instrument guid]"
                    },
                    "overlyingInstrument": {
                        "href": "https://api.refdata.nr.cmegroup.com/v#/instruments/[overlying instrument guid]"
                    }
                }
            }
        }

Instrument can have secondary underlying link at the instrument level for for Calendar Spread on Options (CSO). The secondary underlying link provides clients with a simplified process to derive the tradable underlying outright futures legs of the CSOthe CSO.  

Expand
Code Block
"_links" : {
    "self" : {
      "href" : "_/v#/instruments/[guid]"
    },
    "secondaryUnderlyings" : {
      "href" : "_/v#/instruments/[guid]/underlyings" 
    },
    "underlyingInstruments" : {
     "href" : "_/v#/instruments/[guid]/underlyings" 
    },
    "product" : {
      "href" : "_/v#/products/[guid]" 
    }
  }