diff --git a/src/platforms/kalshi-fetch.js b/src/platforms/kalshi-fetch.js deleted file mode 100644 index 47281ad..0000000 --- a/src/platforms/kalshi-fetch.js +++ /dev/null @@ -1,79 +0,0 @@ -/* Imports */ -import fs from 'fs' -import axios from "axios" -import { calculateStars } from "../utils/stars.js" -import {upsert} from "../utils/mongo-wrapper.js" - -/* Definitions */ -let jsonEndpoint = "https://trading-api.kalshi.com/v1/cached/markets/"//"https://subgraph-matic.poly.market/subgraphs/name/TokenUnion/polymarket"//"https://subgraph-backup.poly.market/subgraphs/name/TokenUnion/polymarket"//'https://subgraph-matic.poly.market/subgraphs/name/TokenUnion/polymarket3' - -/* Support functions -async function fetchAllContractInfo(){ // for info which the polymarket graphql API - let data = fs.readFileSync("./data/polymarket-contract-list.json") - let response = JSON.parse(data) - return response -} - */ -async function fetchAllMarkets() { // for info which the polymarket graphql API - let response = await axios.get(jsonEndpoint).then(response => response.data.markets) - // console.log(response) - return response -} - - -async function processMarkets(markets) { - let dateNow = new Date().toISOString() - // console.log(markets) - markets = markets.filter(market => market.close_date > dateNow) - let results = await markets.map(market => { - let probability = market.last_price/100 - let options = [ - { - "name": "Yes", - "probability": probability, - "type": "PROBABILITY" - }, - { - "name": "No", - "probability": 1 - probability, - "type": "PROBABILITY" - } - ] - let result = ({ - "title": market.title, - "url": `https://kalshi.com`, - "platform": "Kalshi", - "description": `${market.settle_details}. The resolution source is: ${market.ranged_group_name} (${market.settle_source_url})`, - "options": options, - "timestamp": new Date().toISOString(), - "qualityindicators": { - "stars": calculateStars("Kalshi", ({volume: market.volume, interest: market.open_interest})), - "yes_bid": market.yes_bid, - "yes_ask": market.yes_ask, - "spread": Math.abs(market.yes_bid-market.yes_ask), - "volume": market.volume, - "open_interest": market.open_interest - } - }) - return result - }) - //console.log(results.length) - // console.log(results.map(result => result.title)) - // console.log(results.map(result => result.title).length) - console.log([...new Set(results.map(result => result.title))]) - console.log("Number of unique questions: ", [...new Set(results.map(result => result.title))].length) - // console.log([...new Set(results.map(result => result.title))].length) - return results //resultsProcessed -} - -/* Body */ -export async function kalshi() { - let markets = await fetchAllMarkets() - let results = await processMarkets(markets) // somehow needed - // console.log(results) - // let string = JSON.stringify(results, null, 2) - // fs.writeFileSync('polymarket-questions.json', string); - await upsert(results, "kalshi-questions") - console.log("Done") -} -// kalshi() diff --git a/src/utils/doEverything.js b/src/utils/doEverything.js index 8f4b464..7f16a86 100644 --- a/src/utils/doEverything.js +++ b/src/utils/doEverything.js @@ -24,12 +24,16 @@ import {rebuildAlgoliaDatabase} from "./algolia.js" import {rebuildNetlifySiteWithNewData} from "./rebuildNetliftySiteWithNewData.js" /* Do everything */ +function sleep(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); +} export async function tryCatchTryAgain (fun) { try{ console.log("Initial try") await fun() }catch (error) { + sleep(10000) console.log("Second try") console.log(error) try{