UNPKG

@saturnnetwork/market-maker-strategy

Version:
52 lines (51 loc) 1.42 kB
import { Saturn } from '@saturnnetwork/saturn.js'; import { Provider } from 'ethers/providers'; import { BigNumber } from 'bignumber.js'; import { ActionType } from '../actiontypes'; export interface MarketMakerConfig { saturn: Saturn; provider: Provider; blockchain: string; token: string; fundMinimum: BigNumber; tokenLimit: BigNumber; spread: BigNumber; dustCutoff: BigNumber; bandSize: BigNumber; } export declare class MarketMaker { saturn: Saturn; blockchain: string; token: string; config: MarketMakerConfig; botAddress: string; constructor(config: MarketMakerConfig, owner: string); getActions(): Promise<Array<ActionType>>; private newOrders; private newBuys; private newSells; private cleanupOrders; private pruneSells; private pruneBuys; private pluralizedOrders; private checkArbOpportunity; private ensureValidOrderBook; private printMarketHealth; private plotOrderBook; private orderBook; private fetchOrdersFor; private weightedMidMarketPrice; private bestSellOrder; private bestBuyOrder; private bestSellPrice; private bestBuyPrice; private spread; private sellDepth; private buyDepth; private availableEther; private availableTokens; private etherLockedForAddress; private tokensLockedForAddress; private tokenDecimals; private pow; }