polygon.io
Version:
Isomorphic Javascript client for Polygon.io Stocks, Forex, and Crypto APIs
35 lines (34 loc) • 3.26 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.snapshotGainersLosers = exports.snapshotSingleTicker = exports.snapshotAllTickers = exports.formatIStocksSnapshotTickerRaw = exports.formatIStocksSnapshotQuoteRaw = exports.formatIStocksSnapshotAggRaw = void 0;
const request_1 = require("../transport/request");
const v1HistoricTrades_1 = require("./v1HistoricTrades");
const formatIStocksSnapshotAggRaw = (raw) => (Object.assign(Object.assign({}, raw), { close: raw.c, high: raw.h, low: raw.l, open: raw.o, volume: raw.v }));
exports.formatIStocksSnapshotAggRaw = formatIStocksSnapshotAggRaw;
const formatIStocksSnapshotQuoteRaw = (raw) => (Object.assign(Object.assign({}, raw), { bidPrice: raw.p, bidSize: raw.s, askPrice: raw.P, askSize: raw.S, lastUpdateTimestam: raw.t }));
exports.formatIStocksSnapshotQuoteRaw = formatIStocksSnapshotQuoteRaw;
const formatIStocksSnapshotTickerRaw = (raw) => (Object.assign(Object.assign({}, raw), { day: exports.formatIStocksSnapshotAggRaw(raw.day), lastTrade: v1HistoricTrades_1.formatITradeV1Raw(raw.lastTrade), lastQuote: exports.formatIStocksSnapshotQuoteRaw(raw.lastQuote), min: exports.formatIStocksSnapshotAggRaw(raw.min), prevDay: exports.formatIStocksSnapshotAggRaw(raw.prevDay) }));
exports.formatIStocksSnapshotTickerRaw = formatIStocksSnapshotTickerRaw;
const formatISnapshotAllTickersResultRaw = (raw) => (Object.assign(Object.assign({}, raw), { tickers: raw.tickers.map(exports.formatIStocksSnapshotTickerRaw) }));
const snapshotAllTickers = (apiKey, apiBase) => __awaiter(void 0, void 0, void 0, function* () {
return formatISnapshotAllTickersResultRaw(yield request_1.get(`/v2/snapshot/locale/us/markets/stocks/tickers`, apiKey, apiBase));
});
exports.snapshotAllTickers = snapshotAllTickers;
const formatISnapshotSingleTickerResultRaw = (raw) => (Object.assign(Object.assign({}, raw), { ticker: exports.formatIStocksSnapshotTickerRaw(raw.ticker) }));
const snapshotSingleTicker = (apiKey, apiBase, ticker) => __awaiter(void 0, void 0, void 0, function* () {
return formatISnapshotSingleTickerResultRaw(yield request_1.get(`/v2/snapshot/locale/us/markets/stocks/tickers/${ticker}`, apiKey, apiBase));
});
exports.snapshotSingleTicker = snapshotSingleTicker;
const snapshotGainersLosers = (apiKey, apiBase, direction = "gainers") => __awaiter(void 0, void 0, void 0, function* () {
return formatISnapshotAllTickersResultRaw(yield request_1.get(`/v2/snapshot/locale/us/markets/stocks/${direction}`, apiKey, apiBase));
});
exports.snapshotGainersLosers = snapshotGainersLosers;