Purpose: For firms that have a platform to generate their own trades, this guide provides instructions for submitting these trades through Orion’s Trade Order Management platform for trade execution.
Simple Use Case: Firm has engine and algorithm for rebalancing portfolios but wants to execute the trades through Orion. The specific trades are generated and then submitted to Orion to create and send trades to the custodian.
Scope and Outputs: What are the limits of this solution – what does it both do and NOT do?What is the end result?
Process Overview:
- Validate Trades
- Create Trades
Process Steps:
- First, submit the trades to Orion’s validation endpoints, which will check for errors or warnings, such as security not found, or overspend cash. These can be displayed to the user before going to the next step, so that the user can decide to continue or cancel the trades.
POST /trading/validateimport/orders/list
Sample:
[
{
"accountId": 1,
"ticker": "CLSAX",
"dollars": 1000,
"action": "BUY"
},
{
"accountID": 2,
"ticker": "IBM",
"shares": 5,
"action": "SELL"
}
]
Returns;
[
{
"accountId": 1,
"accountNumber" : "XXXXXXX",
"action": "BUY"
"ticker": "CLSAX",
"dollars": 1000,
"shares": 123.456,
"productId": 10103,
"isValid": true,
"message": "",
"tradeType": "Dollars",
"navPrice": 1.23,
"side": "1",
"amount": 1000
},
{
"accountID": 2,
"accountNumber" : "XXXXXX",
"action": "SELL"
"ticker": "IBM",
"dollars": 123.456,
"shares": 5,
"productId": 20120,
"isValid": true,
"message": "",
"tradeType": "Shares",
"isValid": true,
"message": "",
"tradeType": "Shares",
"navPrice": 1.23,
"side": "2",
"amount": 5
}
]
- Generate the trades that you want to move forward with.
Sample:
{
"trades": [{
"accountId": 1,
"productId": 10103,
"tradeType": "Dollars",
"amount": 1000,
"side": "1"
},
{
"accountId": 2,
"productId": 20120,
"tradeType": "Shares",
"amount": 5,
"side": "2"
}
],
"routine": "QuickTrade"
}
First one: buy (side=”1″) of CLSAX of $1000.
Second one: sell (side=”2″) of AAPL of 5 shares.
Returns: 200 OK, or error