diff --git a/src/rest.ts b/src/rest.ts index 6a947f7..fd2a59d 100644 --- a/src/rest.ts +++ b/src/rest.ts @@ -671,6 +671,29 @@ export interface IInstrumentSchedule { intervals: IIntrumentInterval[]; } +export interface IInstrumentSpecification { + /** + * Instrument leverage rate value + */ + leverage: string; + /** + * Instrument contract multiplier + */ + contractMultiplier: string; + /** + * Instrument price unit + */ + priceUnit: string; + /** + * Instrument units name + */ + units?: string | null; + /** + * Instrument lot size value + */ + lotSize: string; +} + export interface IQuoteSideV2 { /** * Quantity value @@ -1234,6 +1257,19 @@ export class RestClient { return schedule; } + /** + * Get additional parameters for requested instrument + */ + public async getSymbolSpecification({ + version = DefaultAPIVersion, + symbolId, + }: ISymbolId): Promise { + const path = `/md/${version}/symbols/${symbolId}/specification`; + const url = new URL(path, this.url); + const instrument = (await this.fetch(url)) as IInstrumentSpecification; + return instrument; + } + /** * Get the last quote */