diff --git a/src/chains/defaults/messages/getSwapMessage.ts b/src/chains/defaults/messages/getSwapMessage.ts index fecea9b..8807ced 100644 --- a/src/chains/defaults/messages/getSwapMessage.ts +++ b/src/chains/defaults/messages/getSwapMessage.ts @@ -4,7 +4,6 @@ import { MsgExecuteContract } from "cosmjs-types/cosmwasm/wasm/v1/tx"; import { Asset, isNativeAsset } from "../../../core/types/base/asset"; import { Pool } from "../../../core/types/base/pool"; -import { DefaultSwapMessage } from "../../../core/types/messages/swapmessages"; /** * @@ -14,13 +13,13 @@ export function getSwapMessage( offerAsset: Asset, walletAddress: string, beliefPrice: string, - maxSpread = 0.05, + maxSpread = 0.005, ) { - const msg: DefaultSwapMessage = { + const msg = { swap: { max_spread: String(maxSpread), offer_asset: offerAsset, - belief_price: beliefPrice, + // belief_price: beliefPrice, }, }; const encodedMsgObject: EncodeObject = { diff --git a/src/chains/inj/messages/getOrderbookArbMessage.ts b/src/chains/inj/messages/getOrderbookArbMessage.ts index 0ac3947..449f50e 100644 --- a/src/chains/inj/messages/getOrderbookArbMessage.ts +++ b/src/chains/inj/messages/getOrderbookArbMessage.ts @@ -1,5 +1,4 @@ import { EncodeObject } from "@cosmjs/proto-signing"; -import { BigNumberInBase } from "@injectivelabs/utils/dist/cjs/classes"; import { OptimalOrderbookTrade } from "../../../core/arbitrage/optimizers/orderbookOptimizer"; import { toChainAsset, toChainPrice } from "../../../core/types/base/asset"; @@ -38,21 +37,23 @@ export function getOrderbookArbMessages( }; const msg0 = getMarketSpotOrderMessage(arbTrade, publicAddress, offerAsset1, 1); - const decimals = arbTrade.path.orderbook.baseAssetDecimals - arbTrade.path.orderbook.quoteAssetDecimals; - - let orderSize = +new BigNumberInBase(arbTrade.outGivenIn).toWei(decimals).toFixed(); - - const belief_price = String( - Math.round((orderSize / arbTrade.outGivenIn) * 100000 * (10 ^ decimals)) / 100000 / (10 ^ decimals), + const [outGivenIn1, outInfo1] = outGivenIn(arbTrade.path.pool, { + amount: String(arbTrade.outGivenIn), + info: offerAsset1.info, + }); + + const belief_price = toChainPrice( + { + amount: String(arbTrade.outGivenIn), + info: offerAsset1.info, + }, + { amount: String(outGivenIn1), info: outInfo1 }, ); - orderSize = - Math.floor(orderSize / arbTrade.path.orderbook.minQuantityIncrement) * - arbTrade.path.orderbook.minQuantityIncrement; - - const offerAsset = { - amount: String(orderSize), + const offerAsset = toChainAsset({ + amount: String(arbTrade.outGivenIn), info: offerAsset1.info, - }; + }); + const msg1 = getSwapMessage(arbTrade.path.pool, offerAsset, publicAddress, belief_price); return [[msg0, msg1], 2];