Skip to content

Commit

Permalink
feat:Adapter, Limitless-Exchange (prediction markets) (#11744)
Browse files Browse the repository at this point in the history
Co-authored-by: g1nt0ki <[email protected]>
  • Loading branch information
0xpeluche and g1nt0ki authored Sep 25, 2024
1 parent 8a73d7c commit 67c3b7d
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions projects/limitless-exchange/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
const { getLogs2 } = require('../helper/cache/getLogs')
const eventAbi = "event FixedProductMarketMakerCreation(address indexed creator, address fixedProductMarketMaker, address indexed conditionalTokens, address indexed collateralToken, bytes32[] conditionIds, uint256 fee)";
const config = [
{ factory: "0x8E50578ACa3C5E2Ef5ed2aA4bd66429B5e44C16E", resolver: "0x15A61459d65D89A25a9e91e0dc9FC69598791505", fromBlock: 13547870 },
{ factory: "0xc397D5d70cb3B56B26dd5C2824d49a96c4dabF50", resolver: "0xc9c98965297bc527861c898329ee280632b76e18", fromBlock: 13547845 },
];

const getMarkets = async ({ factory, resolver, fromBlock }, api) => {
const logs = await getLogs2({ api, target: factory, eventAbi, fromBlock });
const tokens = logs.map(i => i.collateralToken)
return api.sumTokens({ owner: resolver, tokens });
};

const tvl = async (api) => {
for (const marketConfig of config) {
await getMarkets(marketConfig, api);
}
};

module.exports = {
methodology: "The TVL represents the total amount of tokens deposited in the prediction markets",
base: { tvl }
};

0 comments on commit 67c3b7d

Please sign in to comment.