UNPKG

bybit-api

Version:

Complete & robust Node.js SDK for Bybit's REST APIs and WebSockets, with TypeScript & strong end to end tests.

171 lines (170 loc) 4.43 kB
import { LinearPositionIdx, linearPositionModeEnum, positionTpSlModeEnum } from '../../constants/enum'; import { OrderSide } from '../shared'; export interface LinearGetOrdersRequest { order_id?: string; order_link_id?: string; symbol: string; order?: string; page?: number; limit?: number; order_status?: string; } export interface LinearCancelOrderRequest { symbol: string; order_id?: string; order_link_id?: string; } export interface LinearReplaceOrderRequest { order_id?: string; order_link_id?: string; symbol: string; p_r_qty?: number; p_r_price?: number; take_profit?: number; stop_loss?: number; tp_trigger_by?: string; sl_trigger_by?: string; } export interface LinearGetOrderRequest { order_id?: string; order_link_id?: string; symbol: string; } export type LinearOrderType = 'Limit' | 'Market'; export type LinearTimeInForce = 'GoodTillCancel' | 'ImmediateOrCancel' | 'FillOrKill' | 'PostOnly'; export interface NewLinearOrder { side: OrderSide; symbol: string; order_type: LinearOrderType; qty: number; price?: number; time_in_force: LinearTimeInForce; take_profit?: number; stop_loss?: number; tp_trigger_by?: string; sl_trigger_by?: string; reduce_only: boolean; close_on_trigger: boolean; order_link_id?: string; position_idx?: LinearPositionIdx; } export interface LinearConditionalOrderRequest { side: string; symbol: string; order_type: string; qty: number; price?: number; base_price: number; stop_px: number; time_in_force: string; trigger_by?: string; close_on_trigger?: boolean; order_link_id?: string; reduce_only: boolean; take_profit?: number; stop_loss?: number; tp_trigger_by?: string; sl_trigger_by?: string; } export interface LinearGetConditionalOrderRequest { stop_order_id?: string; order_link_id?: string; symbol: string; stop_order_status?: string; order?: string; page?: number; limit?: number; } export interface LinearCancelConditionalOrderRequest { symbol: string; stop_order_id?: string; order_link_id?: string; } export interface LinearReplaceConditionalOrderRequest { stop_order_id?: string; order_link_id?: string; symbol: string; p_r_qty?: number; p_r_price?: number; p_r_trigger_price?: number; take_profit?: number; stop_loss?: number; tp_trigger_by?: string; sl_trigger_by?: string; } export interface LinearQueryConditionalOrderRequest { symbol: string; stop_order_id?: string; order_link_id?: string; } export interface LinearSetAutoAddMarginRequest { symbol: string; side: string; auto_add_margin: boolean; } export interface LinearSetMarginSwitchRequest { symbol: string; is_isolated: boolean; buy_leverage: number; sell_leverage: number; } export interface LinearSetPositionModeRequest { symbol: string; mode: (typeof linearPositionModeEnum)[keyof typeof linearPositionModeEnum]; } export interface LinearSetPositionTpSlModeRequest { symbol: string; tp_sl_mode: (typeof positionTpSlModeEnum)[keyof typeof positionTpSlModeEnum]; } export interface LinearSetAddReduceMarginRequest { symbol: string; side: string; margin: number; } export interface LinearSetUserLeverageRequest { symbol: string; buy_leverage: number; sell_leverage: number; } export interface LinearSetTradingStopRequest { symbol: string; side: string; take_profit?: number; stop_loss?: number; trailing_stop?: number; tp_trigger_by?: string; sl_trigger_by?: string; sl_size?: number; tp_size?: number; position_idx?: 0 | 1 | 2; } export interface LinearGetTradeRecordsRequest { symbol: string; start_time?: number; end_time?: number; exec_type?: string; page?: number; limit?: number; } export interface LinearGetHistoryTradeRecordsRequest { symbol: string; start_time?: number; end_time?: number; exec_type?: string; page?: number; limit?: number; page_token?: string; } export interface LinearGetClosedPnlRequest { symbol: string; start_time?: number; end_time?: number; exec_type?: string; page?: number; limit?: number; } export interface LinearSetRiskLimitRequest { symbol: string; side: string; risk_id: number; }