UNPKG

@bcswaper/apis

Version:

bcswaper apis

1 lines 1.41 kB
import{OrderSide}from"../swapContext";import{dydxClient}from"../lib/dydx/dydxClient";import{SubTypes}from"../lib/clientContext";export class DyDxEngine{constructor(e){this.client=new dydxClient(e)}getPrice(){return this.client.getPrice()}getOrderbook(){return this.client.getOrderbook()}getCandles(e){throw new Error("Method not implemented.")}getPosition(){return this.client.getPosition()}getBalance(){throw new Error("Method not implemented.")}async start(){console.log("dydx client starting ..."),await this.client.initialize(),console.log("dydx client started !")}subTick(e){this.client.subscribe(SubTypes.Tick,e)}subCandle(e,t){this.client.subscribeCandle(e,t)}subOrderbook(){this.client.subscribe(SubTypes.Orderbook,(()=>{}))}subAccount(e){this.client.subscribe(SubTypes.Account,e)}subPosition(e){this.client.subscribe(SubTypes.Position,e)}subOrder(e){this.client.subscribe(SubTypes.Order,e)}subDeal(e){this.client.subscribe(SubTypes.Deal,e)}placeMarketOrder(e,t,i){this.client.marketOrder(e,t,i)}buy(e,t){this.client.marketOrder(OrderSide.BUY,e,t)}sell(e,t){this.client.marketOrder(OrderSide.SELL,e,t)}placeLimitOrder(e,t,i,r){this.client.limitOrder(e,t,i,r)}buyLimit(e,t){this.client.limitOrder(OrderSide.BUY,e,t,300)}sellLimit(e,t){this.client.limitOrder(OrderSide.SELL,e,t,300)}cancelOrder(e,t){this.client.cancelOrderLongTerm(e,t)}stop(){console.log("dydx client stop ..."),this.client.destroy()}}