diff --git a/src/routes/market-flow/+page.svelte b/src/routes/market-flow/+page.svelte
index 32639385..a9773104 100644
--- a/src/routes/market-flow/+page.svelte
+++ b/src/routes/market-flow/+page.svelte
@@ -3,7 +3,11 @@
import HoverStockChart from "$lib/components/HoverStockChart.svelte";
import TableHeader from "$lib/components/Table/TableHeader.svelte";
- import { abbreviateNumberWithColor, sectorNavigation } from "$lib/utils";
+ import {
+ abbreviateNumber,
+ abbreviateNumberWithColor,
+ sectorNavigation,
+ } from "$lib/utils";
import InfoModal from "$lib/components/InfoModal.svelte";
import UpgradeToPro from "$lib/components/UpgradeToPro.svelte";
@@ -42,6 +46,35 @@
let originalTopTickers = [...topSectorTickers[selectedSector]];
let displayTopTickers = topSectorTickers[selectedSector];
+ function formatDate(dateStr) {
+ // Parse the input date string
+ var date = new Date(dateStr);
+
+ // Get month, day, and year
+ var month = date.getMonth() + 1; // Month starts from 0
+ var day = date.getDate();
+ var year = date.getFullYear();
+
+ // Get hours and minutes
+ var hours = date.getHours();
+ var minutes = date.getMinutes();
+
+ // Determine AM/PM and adjust hours
+ var ampm = hours >= 12 ? "PM" : "AM";
+ hours = hours % 12;
+ hours = hours === 0 ? 12 : hours; // Convert 0 hours to 12 for AM/PM
+
+ // Add leading zeros if necessary
+ month = (month < 10 ? "0" : "") + month;
+ day = (day < 10 ? "0" : "") + day;
+ minutes = (minutes < 10 ? "0" : "") + minutes;
+
+ // Format the date as MM/DD/YYYY HH:MM AM/PM
+ var formattedDate = `${month}/${day}/${year} ${hours}:${minutes} ${ampm}`;
+
+ return formattedDate;
+ }
+
$: columns = [
{ key: "ticker", label: "Symbol", align: "left" },
{ key: "name", label: "Name", align: "left" },
@@ -526,6 +559,68 @@
id={"marketTideInfo"}
/>
+
+
+
+
Date
+
+ {formatDate(marketTideData?.at(-1)?.timestamp)}
+
+
+
+
+
+
+
Volume
+
+ {@html abbreviateNumberWithColor(
+ marketTideData?.at(-1)?.net_volume,
+ false,
+ true,
+ )}
+
+
+
+
+
+
+ Net Call Premium
+
+
+ {@html abbreviateNumberWithColor(
+ marketTideData?.at(-1)?.net_call_premium,
+ false,
+ true,
+ )}
+
+
+
+
+
+
+ Net Put Premium
+
+
+ {@html abbreviateNumberWithColor(
+ marketTideData?.at(-1)?.net_put_premium,
+ false,
+ true,
+ )}
+
+
+
+
+
diff --git a/src/routes/market-flow/sector-flow/+page.svelte b/src/routes/market-flow/sector-flow/+page.svelte
index 09e8847f..e12cb854 100644
--- a/src/routes/market-flow/sector-flow/+page.svelte
+++ b/src/routes/market-flow/sector-flow/+page.svelte
@@ -3,11 +3,7 @@
import HoverStockChart from "$lib/components/HoverStockChart.svelte";
import TableHeader from "$lib/components/Table/TableHeader.svelte";
- import {
- abbreviateNumberWithColor,
- sectorList,
- sectorNavigation,
- } from "$lib/utils";
+ import { abbreviateNumberWithColor, sectorList } from "$lib/utils";
import InfoModal from "$lib/components/InfoModal.svelte";
import UpgradeToPro from "$lib/components/UpgradeToPro.svelte";
@@ -63,17 +59,34 @@
let originalTopTickers = [...topSectorTickers[selectedSector]];
let displayTopTickers = topSectorTickers[selectedSector];
- $: columns = [
- { key: "ticker", label: "Symbol", align: "left" },
- { key: "name", label: "Name", align: "left" },
- { key: "price", label: "Price", align: "right" },
- { key: "changesPercentage", label: "% Change", align: "right" },
- { key: "call_volume", label: "Call Vol", align: "right" },
- { key: "avg30_call_volume", label: "Avg Call Vol", align: "right" },
- { key: "put_volume", label: "Put Vol", align: "right" },
- { key: "avg30_put_volume", label: "Avg Put Vol", align: "right" },
- { key: "premium_ratio", label: "🐻/🐂 Prem", align: "right" },
- ];
+ function formatDate(dateStr) {
+ // Parse the input date string
+ var date = new Date(dateStr);
+
+ // Get month, day, and year
+ var month = date.getMonth() + 1; // Month starts from 0
+ var day = date.getDate();
+ var year = date.getFullYear();
+
+ // Get hours and minutes
+ var hours = date.getHours();
+ var minutes = date.getMinutes();
+
+ // Determine AM/PM and adjust hours
+ var ampm = hours >= 12 ? "PM" : "AM";
+ hours = hours % 12;
+ hours = hours === 0 ? 12 : hours; // Convert 0 hours to 12 for AM/PM
+
+ // Add leading zeros if necessary
+ month = (month < 10 ? "0" : "") + month;
+ day = (day < 10 ? "0" : "") + day;
+ minutes = (minutes < 10 ? "0" : "") + minutes;
+
+ // Format the date as MM/DD/YYYY HH:MM AM/PM
+ var formattedDate = `${month}/${day}/${year} ${hours}:${minutes} ${ampm}`;
+
+ return formattedDate;
+ }
$: sortOrders = {
rank: { order: "none", type: "number" },
@@ -604,7 +617,67 @@
+
+
+
+
Date
+
+ {formatDate(marketTideData?.at(-1)?.timestamp)}
+
+
+
+
+
+
Volume
+
+ {@html abbreviateNumberWithColor(
+ marketTideData?.at(-1)?.net_volume,
+ false,
+ true,
+ )}
+
+
+
+
+
+
+ Net Call Premium
+
+
+ {@html abbreviateNumberWithColor(
+ marketTideData?.at(-1)?.net_call_premium,
+ false,
+ true,
+ )}
+
+
+
+
+
+
+ Net Put Premium
+
+
+ {@html abbreviateNumberWithColor(
+ marketTideData?.at(-1)?.net_put_premium,
+ false,
+ true,
+ )}
+
+
+
+