summaryrefslogtreecommitdiff
path: root/src/http/static/trading-in-the-rain/main.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/http/static/trading-in-the-rain/main.js')
-rw-r--r--src/http/static/trading-in-the-rain/main.js144
1 files changed, 0 insertions, 144 deletions
diff --git a/src/http/static/trading-in-the-rain/main.js b/src/http/static/trading-in-the-rain/main.js
deleted file mode 100644
index 09bd26e..0000000
--- a/src/http/static/trading-in-the-rain/main.js
+++ /dev/null
@@ -1,144 +0,0 @@
-const tradesToWaitFor = 5;
-
-function hexToRgb(hex) {
- var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
- return [
- parseInt(result[1], 16),
- parseInt(result[2], 16),
- parseInt(result[3], 16),
- ];
-}
-
-const colorPalette = [
- "#28D2EE",
- "#ED778E",
- "#6557DC",
- "#EEE386",
- "#B55AA0",
-];
-
-// Use https://api.cryptowat.ch/markets/<exchange>
-// or https://api.cryptowat.ch/pairs (for "all")
-const markets = {
- "kraken":[
- {
- name: "BTCUSD",
- resource: "markets:87:trades",
- },
- {
- name: "BTCEUR",
- resource: "markets:86:trades",
- },
- {
- name: "BTCEUR",
- resource: "markets:96:trades",
- },
- {
- name: "ETHEUR",
- resource: "markets:97:trades",
- },
- {
- name: "BCHUSD",
- resource: "markets:146:trades",
- },
- ],
- "bitfinex":[
- {
- name: "BTCUSD",
- resource: "markets:1:trades",
- },
- {
- name: "ETHUSD",
- resource: "markets:4:trades",
- },
- {
- name: "BSVUSD",
- resource: "markets:5558:trades",
- },
- {
- name: "BTCEUR",
- resource: "markets:415:trades",
- },
- {
- name: "XRPUSD",
- resource: "markets:25:trades",
- },
- ],
- "all": [
- {
- name: "BTCUSD",
- resource: "instruments:9:trades",
- },
- {
- name: "ETHUSD",
- resource: "instruments:125:trades",
- },
- {
- name: "LTCUSD",
- resource: "instruments:138:trades",
- },
- {
- name: "EOSUSD",
- resource: "instruments:4:trades",
- },
- {
- name: "XRPUSD",
- resource: "instruments:160:trades",
- },
- ],
-};
-
-const exchange = "all";
-
-function fillMarketP() {
- let marketsEl = document.getElementById("markets");
- for (let i in markets[exchange]) {
- let name = markets[exchange][i].name;
- let color = colorPalette[i];
- if (i > 0) marketsEl.innerHTML += "</br>";
- marketsEl.innerHTML += `<strong style="color: ${color}; font-size: 2rem;">${name}</strong>`;
- }
-}
-
-function run() {
- document.getElementById("button").style.display = "none";
-
- let progress = document.getElementById("progress");
- progress.innerHTML = "Connecting to Cryptowat.ch...";
-
- let canvas = document.getElementById("rainCanvas");
- let rainCanvas = new RainCanvas(canvas);
-
- let modalHidden = false;
- for (let i in markets[exchange]) {
- let seriesComposer = new SeriesComposer(
- markets[exchange][i].resource,
- rainCanvas,
- hexToRgb(colorPalette[i]),
- );
-
- seriesComposer.cw.onconnect = () => {
- progress.innerHTML = "Preloading a few trades before continuing.";
- };
-
- // wait for each series to rech tradesToWaitFor before letting it begin.
- // Hide the modal when the first series is enabled.
- seriesComposer.ontrades = (trades) => {
- if (!modalHidden && seriesComposer.getTotalTrades() < tradesToWaitFor) {
- progress.innerHTML += "."; // indicate that _something_ is happening
- return;
- }
- if (!modalHidden) {
- let modal = document.getElementById("tradingInRainModal");
- modal.style.display = "none";
- modalHidden = true;
- }
- seriesComposer.setEnabled(true);
- seriesComposer.ontrades = undefined;
- };
- }
-}
-
-function autorun() {
- loadMIDI();
-}