Skip to main content

GET Position

Get a specific position by instrument NT8​

Returns the current NinjaTrader position for one account and instrument.

Supply the full native NT8 instrument name, including the intended contract month and year for futures. Continuous-symbol translation is a webhook-ingestion feature, not part of this endpoint's contract. Your integration is responsible for selecting the correct instrument. See NT8 instrument names.

Endpoint​

GET /v1/api/accounts/{account}/position

Headers​

NameValue
Content-Typeapplication/json
AuthorizationBearer <token>

Path parameters​

NameTypeRequiredDescription
accountstringRequiredName of account in NT8

Query parameters​

NameTypeRequiredDescription
instrumentstringRequiredURL-encoded instrument name

Code examples​

import requests

token = 'my-secret-token'

url = "https://app.crosstrade.io/v1/api/accounts/Sim101/position"
headers = {
"Authorization": f"Bearer {token}",
"Content-Type": "application/json"
}

try:
response = requests.get(url, headers=headers, params={'instrument': 'MES 06-25'})
print(f"Response Code: {response.status_code}, Response Text: {response.text}")
except Exception as e:
print(f"An error occurred: {e}")

Response​

{
"type": "NinjaTrader.Cbi.Position",
"account": "Sim101",
"instrument": "ES 12-25",
"instrumentType": "Future",
"marketPosition": "Long",
"quantity": 4,
"averagePrice": 5779.8125,
"marketPrice": 5789.5,
"unrealizedProfitLoss": 1937.5,
"success": true
}

Platform nuances​

NT8 returns position fields at the top level and expresses direction with marketPosition.

WebSocket API​

This request can also be made over the WebSocket API. The account path parameter and instrument query parameter are passed inside args.

{
"action": "rpc",
"id": "my-request-id",
"api": "GetPosition",
"args": {
"account": "Sim101",
"instrument": "ES 12-26"
}
}