@@ -360,6 +362,7 @@ footer{margin-top:34px;padding-top:22px;border-top:1px solid var(--border);color
Personal research mode. This copy is for your own analysis, paper tracking, and manual trade research only. It does not pool money, onboard investors, custody funds, bypass eligibility rules, or place orders without your manual approval.
+
Build v18 active: agents rank the live Polymarket universe, analyze the top 5,000 by activity/liquidity/gap, and use a selective BUY fallback so core agents do not sit entirely in cash.
@@ -740,7 +743,7 @@ footer{margin-top:34px;padding-top:22px;border-top:1px solid var(--border);color
@@ -767,7 +770,7 @@ const EXIT_STALE_DAYS = 10;
const EXIT_RESOLUTION_DAYS = 2;
const AGENTS_KEY = "pma_agents_v2";
const SUG_KEY = "pma_suggestions_v5";
-const SUGGESTION_ENGINE_VERSION = 17;
+const SUGGESTION_ENGINE_VERSION = 18;
const FOCUS_KEY = "pma_focus_v1";
const VIEW_KEY = "pma_view_v1";
const PF_SORT_KEY = "pma_portfolio_sort_v1";
@@ -992,6 +995,7 @@ const MIN_SCOUT_VOLUME=1500;
const MIN_SCOUT_LIQUIDITY=150;
const MIN_SCOUT_EDGE=0.006;
const MIN_ENTRY_EDGE=0.032;
+const MIN_SELECTIVE_ENTRY_EDGE=0.020;
const MIN_ENTRY_DAYS=3.0;
const EDGE_SCALE=0.13;
const MAX_STRATEGY_POSITIONS=16;
@@ -1077,6 +1081,12 @@ function selectMarketsForAnalysis(markets,limit=MARKET_ANALYSIS_LIMIT){
.slice(0,limit);
}
function timingSignal(d){if(d==null)return 0.4;if(d<1)return 0.1;if(d<=3)return 0.5;if(d<=90)return 1.0-(d-3)/87.0*0.4;return 0.35;}
+function effectiveEntryEdge(s){
+ const net=Math.abs(Number(s&&s.net_edge));
+ const raw=Math.abs(Number(s&&s.edge));
+ if(Number.isFinite(net)&&net>0)return Math.max(net,raw*0.72);
+ return Number.isFinite(raw)?raw:0;
+}
function analyzeMarket(m,realWorldSignals={}){
if(m.volume