@reactivemarkets/switchboard-sdk
Version:
SDK for the Reactive Markets Switchboard
110 lines (109 loc) • 2.98 kB
TypeScript
import { OrderType, SecurityType, Side, TimeInForce } from "@reactivemarkets/switchboard-api";
import { IStrategyParameter } from "../iStrategyParameter";
import { IMessageBuilder } from "./iMessageBuilder";
export interface INewOrderSingleBuilder extends IMessageBuilder {
/**
* The trading account.
* @param account
*/
account(account: string): INewOrderSingleBuilder;
/**
* Order currency.
* @param ccy currency
*/
ccy(ccy?: string): INewOrderSingleBuilder;
/**
* Request identifier assigned by the client (Max 48 characters).
* @param clOrderId
*/
clOrderId(clOrderId?: string): INewOrderSingleBuilder;
/**
* List of order execution venues. Ignored if venue is not AGG.
* @param venues
*/
execVenues(venues?: string[]): INewOrderSingleBuilder;
/**
* Swap only, far leg all-in price.
* @param price
*/
farPrice(price?: number): INewOrderSingleBuilder;
/**
* Swap only, far leg quantity.
* @param qty
*/
farQty(qty?: number): INewOrderSingleBuilder;
/**
* Swap only, far leg tenor symbol.
* @param tenor
*/
farTenor(tenor?: string): INewOrderSingleBuilder;
/**
* Order type
* @param side
*/
orderType(side: OrderType): INewOrderSingleBuilder;
/**
* Order price.
* @param price
*/
price(price?: number): INewOrderSingleBuilder;
/**
* Order price tolerance.
* @param priceTolerance
*/
priceTolerance(priceTolerance?: number): INewOrderSingleBuilder;
/**
* Order quantity. MUST be greater than zero.
* @param qty
*/
qty(qty: number): INewOrderSingleBuilder;
/**
* Quote identifier.
* @param quoteId
*/
quoteId(quoteId?: string): INewOrderSingleBuilder;
/**
* Security Type. Defaults to SpotFwd.
* @param securityType
*/
securityType(securityType?: SecurityType): INewOrderSingleBuilder;
/**
* Order side
* @param side
*/
side(side: Side): INewOrderSingleBuilder;
/**
* Target strategy for order execution.
*/
strategy(strategy?: string): INewOrderSingleBuilder;
/**
* Strategy parameters.
* @param parameters
*/
strategyParameters(parameters?: readonly IStrategyParameter[]): INewOrderSingleBuilder;
/**
* Instrument symbol
* @param symbol
*/
symbol(symbol: string): INewOrderSingleBuilder;
/**
* Tenor symbol.
* @param tenor
*/
tenor(tenor?: string): INewOrderSingleBuilder;
/**
* Free text field for customer use. Max 128 characters.
* @param text
*/
text(text?: string): INewOrderSingleBuilder;
/**
* @see TimeInForce
* @param timeInForce
*/
timeInForce(timeInForce: TimeInForce): INewOrderSingleBuilder;
/**
* Exchange or venue symbol.
* @param venue
*/
venue(venue: string): INewOrderSingleBuilder;
}