From 7d6b2e9277adb4c27e963447ad06fcdad38c87a1 Mon Sep 17 00:00:00 2001 From: MuslemRahimi Date: Mon, 6 Jan 2025 14:09:37 +0100 Subject: [PATCH] update dashboard --- src/routes/+page.svelte | 111 +++++++----------- .../highest-open-interest-change/+page.svelte | 6 +- .../list/highest-open-interest/+page.svelte | 6 +- .../list/highest-option-iv-rank/+page.svelte | 10 +- .../list/highest-option-premium/+page.svelte | 13 +- 5 files changed, 66 insertions(+), 80 deletions(-) diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index de3cffba..cb3d51ca 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -11,21 +11,12 @@ import { compareTimes, formatTime, isPWAInstalled } from "$lib/utils"; import Infobox from "$lib/components/Infobox.svelte"; import { closedPWA } from "$lib/store"; + import { options } from "marked"; export let data; - let optionsMode = "premium"; + let optionsMode = "openInterest"; - function reformatDate(dateString) { - return ( - dateString.substring(5, 7) + - "/" + - dateString.substring(8) + - "/" + - dateString.substring(2, 4) - ); - } - - let optionsTable = data?.getDashboard?.optionsFlow?.premium || []; + let optionsTable = data?.getDashboard?.optionsData?.openInterest || []; let gainersList = data?.getDashboard?.marketMovers?.gainers || []; let losersList = data?.getDashboard?.marketMovers?.losers || []; let marketStatus = data?.getDashboard?.marketStatus ?? 0; @@ -34,11 +25,11 @@ function changeTable(state) { optionsMode = state; if (optionsMode === "premium") { - optionsTable = data?.getDashboard?.optionsFlow?.premium || []; - } else if (optionsMode === "volume") { - optionsTable = data?.getDashboard?.optionsFlow?.volume || []; - } else { - optionsTable = data?.getDashboard?.optionsFlow?.openInterest || []; + optionsTable = data?.getDashboard?.optionsData?.premium || []; + } else if (optionsMode === "ivRank") { + optionsTable = data?.getDashboard?.optionsData?.ivRank || []; + } else if (optionsMode === "openInterest") { + optionsTable = data?.getDashboard?.optionsData?.openInterest || []; } } let Feedback; @@ -434,10 +425,14 @@
Hottest Options ContractHottest Options Activity View All @@ -449,25 +444,22 @@ Recent unusual options with the highest ... - + + changeTable("openInterest")} + value="openInterest" + class="text-sm">OI Change changeTable("premium")} value="premium" class="text-sm">Premium changeTable("volume")} - value="volume" - class="text-sm">Volume - changeTable("openInterest")} - value="openInterest" - class="text-sm" - >{$screenWidth < 640 - ? "OI" - : "Open Interest"} changeTable("ivRank")} + value="ivRank" + class="text-sm">IV Rank @@ -481,21 +473,17 @@ >Symbol PremTotal OI + + Change OI StrikeTotal Prem {optionsMode === "openInterest" - ? "OI" - : "Vol"} - C/P - ExpiryIV Rank @@ -503,45 +491,36 @@ {#each optionsTable as item} - + - {abbreviateNumber(item?.cost_basis, true)} + {abbreviateNumber(item?.totalOI)} - ${item?.strike_price} + {#if item?.changeOI >= 0} + +{item?.changeOI?.toLocaleString("en-US")} + {:else if item?.changeOI < 0} + {item?.changeOI?.toLocaleString("en-US")} + {/if} - {abbreviateNumber( - optionsMode === "openInterest" - ? item?.open_interest - : item?.volume, - )} + {abbreviateNumber(item?.totalPrem)} - {item?.put_call} + {abbreviateNumber(item?.ivRank)} - - {reformatDate(item?.date_expiration)} {/each} diff --git a/src/routes/list/highest-open-interest-change/+page.svelte b/src/routes/list/highest-open-interest-change/+page.svelte index b3f1d27c..090893be 100644 --- a/src/routes/list/highest-open-interest-change/+page.svelte +++ b/src/routes/list/highest-open-interest-change/+page.svelte @@ -9,7 +9,8 @@ { name: "Change OI", rule: "changeOI" }, { name: "Price", rule: "price" }, { name: "% Change", rule: "changesPercentage" }, - { name: "Market Cap", rule: "marketCap" }, + { name: "IV Rank", rule: "ivRank" }, + { name: "Total Prem", rule: "totalPrem" }, ]; const excludedRules = new Set([ @@ -18,9 +19,10 @@ "changesPercentage", "revenue", "eps", - "marketCap", "changeOI", "totalOI", + "totalPrem", + "ivRank", ]); diff --git a/src/routes/list/highest-open-interest/+page.svelte b/src/routes/list/highest-open-interest/+page.svelte index 3571e09c..91269c9c 100644 --- a/src/routes/list/highest-open-interest/+page.svelte +++ b/src/routes/list/highest-open-interest/+page.svelte @@ -9,7 +9,8 @@ { name: "Change OI", rule: "changeOI" }, { name: "Price", rule: "price" }, { name: "% Change", rule: "changesPercentage" }, - { name: "Market Cap", rule: "marketCap" }, + { name: "IV Rank", rule: "ivRank" }, + { name: "Total Prem", rule: "totalPrem" }, ]; const excludedRules = new Set([ @@ -18,9 +19,10 @@ "changesPercentage", "revenue", "eps", - "marketCap", "changeOI", "totalOI", + "totalPrem", + "ivRank", ]); diff --git a/src/routes/list/highest-option-iv-rank/+page.svelte b/src/routes/list/highest-option-iv-rank/+page.svelte index 70d3bd34..ee7dea5e 100644 --- a/src/routes/list/highest-option-iv-rank/+page.svelte +++ b/src/routes/list/highest-option-iv-rank/+page.svelte @@ -5,11 +5,12 @@ export let data; const defaultList = [ - { name: "IV Rank", rule: "ivRank" }, { name: "Total OI", rule: "totalOI" }, + { name: "Change OI", rule: "changeOI" }, { name: "Price", rule: "price" }, { name: "% Change", rule: "changesPercentage" }, - { name: "Market Cap", rule: "marketCap" }, + { name: "IV Rank", rule: "ivRank" }, + { name: "Total Prem", rule: "totalPrem" }, ]; const excludedRules = new Set([ @@ -18,9 +19,10 @@ "changesPercentage", "revenue", "eps", - "marketCap", - "ivRank", + "changeOI", "totalOI", + "totalPrem", + "ivRank", ]); diff --git a/src/routes/list/highest-option-premium/+page.svelte b/src/routes/list/highest-option-premium/+page.svelte index 828a6981..d8a36c84 100644 --- a/src/routes/list/highest-option-premium/+page.svelte +++ b/src/routes/list/highest-option-premium/+page.svelte @@ -5,12 +5,12 @@ export let data; const defaultList = [ - { name: "Total Prem", rule: "totalPrem" }, - - { name: "IV Rank", rule: "ivRank" }, + { name: "Total OI", rule: "totalOI" }, + { name: "Change OI", rule: "changeOI" }, { name: "Price", rule: "price" }, { name: "% Change", rule: "changesPercentage" }, - { name: "Market Cap", rule: "marketCap" }, + { name: "IV Rank", rule: "ivRank" }, + { name: "Total Prem", rule: "totalPrem" }, ]; const excludedRules = new Set([ @@ -19,9 +19,10 @@ "changesPercentage", "revenue", "eps", - "marketCap", - "ivRank", + "changeOI", + "totalOI", "totalPrem", + "ivRank", ]);