Open Positions
-
-
Chat With This Agent
ask about performance, risk, trades, or plans
-
-
@@ -1777,6 +1777,7 @@ function renderLeaderboard(){
drawCombo("chart2","comboLegend2");
}
const CHART_RANGES=[
+ {id:"1d",label:"1D",days:1},
{id:"1w",label:"1W",days:7},
{id:"1m",label:"1M",days:30},
{id:"3m",label:"3M",days:90},
@@ -1786,12 +1787,21 @@ const CHART_RANGES=[
{id:"all",label:"ALL",days:null},
];
function chartRange(){const r=localStorage.getItem(CHART_RANGE_KEY)||"1w";return CHART_RANGES.some(x=>x.id===r)?r:"1w";}
+function zoomChartRange(direction){
+ const idx=CHART_RANGES.findIndex(r=>r.id===chartRange());
+ const next=clamp(idx+direction,0,CHART_RANGES.length-1);
+ localStorage.setItem(CHART_RANGE_KEY,CHART_RANGES[next].id);
+ renderAll();
+}
function renderChartRanges(){
const active=chartRange();
document.querySelectorAll("[data-chart-ranges]").forEach(root=>{
- root.innerHTML=CHART_RANGES.map(r=>`
`).join("");
+ root.innerHTML=`
`+
+ CHART_RANGES.map(r=>`
`).join("")+
+ `
`;
});
document.querySelectorAll(".rangebtn").forEach(btn=>btn.onclick=()=>{localStorage.setItem(CHART_RANGE_KEY,btn.dataset.range);renderAll();});
+ document.querySelectorAll("[data-chart-zoom]").forEach(btn=>btn.onclick=()=>zoomChartRange(Number(btn.dataset.chartZoom||0)));
}
const snapTime=(s)=>new Date(s.timestamp||`${s.date}T12:00:00Z`).getTime();
function chartDateLabel(t,compact=false){