Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Order and trade experimental contexts #1021

Merged
merged 25 commits into from
Jul 28, 2023

Conversation

kriswest
Copy link
Contributor

@kriswest kriswest commented Jul 10, 2023

resolves #644
resolves #655

Experimental Order and Trade types, as discussed at Standards Working Group #1013 and Context Data & Intents #1019.

Implemented with documentation in the schema (to save adding it later when we add to all types). Markdown documentation to come. In the course of doing so, we discovered that docs should not be added for pure reference fields (it should be a description on the reference itself, and common to all usages of that reference).

These types seemed to imply a Product type, which has also been added as part of this PR.

Examples:

  • Order

    {
        "type": "fdc3.order",
        "name": "...",
        "id": {
      	  "myOMS": "12345"
        },
        "details": {
      	  "product": {
      		  "type": "fdc3.product",
      		  "instrument": {
      			  "type": "fdc3.instrument",
      			  "id": {
      				  "ticker": "MSFT"
      			  }
      		  }
      	  }
        }
    }
    {
        "type": "fdc3.order",
        "id": {
      	  "myOMS": "ABC123"
        }
    }
  • Trade

    {
        "type": "fdc3.trade",
        "name": "...",
        "id": {
      	  "myEMS": "12345"
        },
        "product": {
      	  "type": "fdc3.product",
      	  "instrument": {
      		  "type": "fdc3.instrument",
      		  "id": {
      			  "ticker": "MSFT"
      		  }
      	  }
        }
    }
  • Product

    {
        "type": "fdc3.product",
        "instrument": {
      	  "type": "fdc3.instrument",
      	  "id": {
      		  "ticker": "MSFT"
      	  }
        }
    }

Note the nesting of the product in order under a details object (not itself a context). I figured that, if (as discussed) an order can have no product, then it might accumulate other details fields, which it would make sense to keep together. Trade, which requires a product, does not do this.

@kriswest kriswest added enhancement New feature or request context-data FDC3 Context Data Working Group Context Data & Intents Contexts & Intents Discussion Group labels Jul 10, 2023
@kriswest kriswest requested a review from mistryvinay July 10, 2023 08:59
@netlify
Copy link

netlify bot commented Jul 10, 2023

Deploy Preview for fdc3 canceled.

Name Link
🔨 Latest commit b8fdbfc
🔍 Latest deploy log https://app.netlify.com/sites/fdc3/deploys/64c3a290ce7d850008e2a24c

@kriswest
Copy link
Contributor Author

@nemery @hampshanubs @dominicgifford Here are those draft contexts for your review. Examples in the PR, schemas to read in the files tab. I'll add the markdown docs this week after you've had a first look (in case you see immediate changes needed).

Let me know how these look ASAP please.

@kriswest kriswest marked this pull request as ready for review July 24, 2023 14:23
@kriswest kriswest requested review from mistryvinay, hughtroeger and a team July 24, 2023 14:23
Copy link
Contributor

@mistryvinay mistryvinay left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@kriswest kriswest mentioned this pull request Jul 25, 2023
14 tasks
docs/context/ref/Order.md Outdated Show resolved Hide resolved
docs/context/ref/Product.md Outdated Show resolved Hide resolved
docs/context/ref/Trade.md Outdated Show resolved Hide resolved
@kriswest kriswest merged commit 7be3c69 into master Jul 28, 2023
@kriswest kriswest deleted the order-and-trade-experimental-contexts branch July 28, 2023 11:14
@timjenkel
Copy link

You probably discussed this in one of the meetings, but what is the difference between Instrument and Product?

@kriswest
Copy link
Contributor Author

kriswest commented Aug 8, 2023

You probably discussed this in one of the meetings, but what is the difference between Instrument and Product?

@timjenkel A tradeable product might be an instrument, but it also might be a cash raise, a swap or something else. Hence, we created a product type as a place to put more detail as needed (I'm no expert but @dominicgifford, @nemery and @hampshanubs are and thought it made sense).

You can see the current @experimental and extensible definition at: https://fdc3.finos.org/docs/next/context/ref/Product and how its used at https://fdc3.finos.org/docs/next/context/ref/Order and https://fdc3.finos.org/docs/next/context/ref/Trade. Feedback and further discussion are (as always) most welcome

@bingenito bingenito mentioned this pull request Nov 6, 2023
18 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Context Data & Intents Contexts & Intents Discussion Group context-data FDC3 Context Data Working Group enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Standardize a context representing a Trade Context Proposal: Order
4 participants