CREATE TABLE IF NOT EXISTS "strategy_comments" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "strategyId" TEXT NOT NULL,
    "userId" TEXT NOT NULL,
    "content" TEXT NOT NULL,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "updatedAt" DATETIME NOT NULL,
    CONSTRAINT "strategy_comments_strategyId_fkey" FOREIGN KEY ("strategyId") REFERENCES "strategies" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
    CONSTRAINT "strategy_comments_userId_fkey" FOREIGN KEY ("userId") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "strategy_ratings" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "strategyId" TEXT NOT NULL,
    "userId" TEXT NOT NULL,
    "rating" INTEGER NOT NULL,
    "review" TEXT,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "strategy_ratings_strategyId_fkey" FOREIGN KEY ("strategyId") REFERENCES "strategies" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
    CONSTRAINT "strategy_ratings_userId_fkey" FOREIGN KEY ("userId") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "strategy_shares" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "strategyId" TEXT NOT NULL,
    "userId" TEXT NOT NULL,
    "shareType" TEXT NOT NULL,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "strategy_shares_strategyId_fkey" FOREIGN KEY ("strategyId") REFERENCES "strategies" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
    CONSTRAINT "strategy_shares_userId_fkey" FOREIGN KEY ("userId") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "user_analytics" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "userId" TEXT NOT NULL,
    "eventType" TEXT NOT NULL,
    "eventData" TEXT NOT NULL,
    "metadata" TEXT NOT NULL,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "user_analytics_userId_fkey" FOREIGN KEY ("userId") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
INSERT INTO user_analytics VALUES('cmjxe7wru0001djh6fht7tvgw','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767389741976_mredee"}','{}',1767389741994);
INSERT INTO user_analytics VALUES('cmjxeewm10001m4p0po1kwalx','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767390068354_75hcb9"}','{}',1767390068377);
INSERT INTO user_analytics VALUES('cmjxfzuks0003m4p0ga2nysr5','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767392725125_kxf4n6"}','{}',1767392725132);
INSERT INTO user_analytics VALUES('cmjxg1g2t000130szs0scjwc2','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767392799634_66w88k"}','{}',1767392799653);
INSERT INTO user_analytics VALUES('cmjxg4bzg0005m4p03wy51dau','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767392934312_j4devh"}','{}',1767392934316);
INSERT INTO user_analytics VALUES('cmjxg5dp40007m4p0xxi9ljiq','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767392983186_l6gei5"}','{}',1767392983192);
INSERT INTO user_analytics VALUES('cmjxgbjzo0009m4p0bl6j4oqj','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767393271279_8u2coa"}','{}',1767393271284);
INSERT INTO user_analytics VALUES('cmjxgezui0001kcty5arrry76','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767393431402_5566eg"}','{}',1767393431802);
INSERT INTO user_analytics VALUES('cmjxgiiqb0001yjk9xr9mgtq8','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767393595858_46cd0y"}','{}',1767393596243);
INSERT INTO user_analytics VALUES('cmjxh04ry0001pntzc85gttm7','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767394417507_pf5b1d"}','{}',1767394417966);
INSERT INTO user_analytics VALUES('cmjxh6e2r0005pntz5m9t3mx3','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767394709416_3k7vss"}','{}',1767394709956);
INSERT INTO user_analytics VALUES('cmjxhbbjj0008pntz25uet4jd','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767394939406_uz8lhi"}','{}',1767394939951);
INSERT INTO user_analytics VALUES('cmjxhd1ms000fpntz9wsmuhff','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxhci0k000bpntziosaeihc","messageLength":99,"hasRagInsight":true,"hasBacktest":false}','{}',1767395020421);
INSERT INTO user_analytics VALUES('cmjxhd1nj000jpntzgltmez0v','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxhci0k000bpntziosaeihc","messageLength":99,"hasStrategyCode":false}','{}',1767395020448);
INSERT INTO user_analytics VALUES('cmjxi17xx000qpntzr2qxf905','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxi0r2c000mpntzmmwcm3jw","messageLength":261,"hasRagInsight":true,"hasBacktest":false}','{}',1767396148342);
INSERT INTO user_analytics VALUES('cmjxi17yo000upntzi1m892do','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxi0r2c000mpntzmmwcm3jw","messageLength":261,"hasStrategyCode":false}','{}',1767396148369);
INSERT INTO user_analytics VALUES('cmjxi3heo000zpntzrwydfeh8','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxi0r2c000mpntzmmwcm3jw","messageLength":145,"hasRagInsight":true,"hasBacktest":false}','{}',1767396253921);
INSERT INTO user_analytics VALUES('cmjxi3hfb0013pntzy9zhgcll','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxi0r2c000mpntzmmwcm3jw","messageLength":145,"hasStrategyCode":false}','{}',1767396253944);
INSERT INTO user_analytics VALUES('cmjxi9s5z0018pntzzv3ccdff','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxi0r2c000mpntzmmwcm3jw","messageLength":103,"hasRagInsight":true,"hasBacktest":false}','{}',1767396547799);
INSERT INTO user_analytics VALUES('cmjxi9s6m001cpntz0h9wn2tq','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxi0r2c000mpntzmmwcm3jw","messageLength":103,"hasStrategyCode":true}','{}',1767396547822);
INSERT INTO user_analytics VALUES('cmjxicscj001jpntzxrs0mziu','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxic5w3001fpntzuw16oa0g","messageLength":116,"hasRagInsight":true,"hasBacktest":false}','{}',1767396688003);
INSERT INTO user_analytics VALUES('cmjxicsdb001npntz3eh7qhe2','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxic5w3001fpntzuw16oa0g","messageLength":116,"hasStrategyCode":false}','{}',1767396688031);
INSERT INTO user_analytics VALUES('cmjxigo59001upntzijl08tov','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxifd55001qpntzptutxn2t","messageLength":98,"hasRagInsight":true,"hasBacktest":false}','{}',1767396869182);
INSERT INTO user_analytics VALUES('cmjxigo5v001ypntz0s8dseie','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxifd55001qpntzptutxn2t","messageLength":98,"hasStrategyCode":true}','{}',1767396869203);
INSERT INTO user_analytics VALUES('cmjxinb4o0025pntz4ilwykq4','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxik4pi0021pntzelnj4c8g","messageLength":137,"hasRagInsight":true,"hasBacktest":false}','{}',1767397178905);
INSERT INTO user_analytics VALUES('cmjxinb590029pntzx6u9cy6w','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxik4pi0021pntzelnj4c8g","messageLength":137,"hasStrategyCode":true}','{}',1767397178925);
INSERT INTO user_analytics VALUES('cmjxouyif002cpntz92qls88i','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767407612964_h0l6s9"}','{}',1767407613495);
INSERT INTO user_analytics VALUES('cmjxpphsu002jpntzt2ihb4zm','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxpp0eo002fpntz7x13epyg","messageLength":175,"hasRagInsight":true,"hasBacktest":false}','{}',1767409038174);
INSERT INTO user_analytics VALUES('cmjxpphtl002npntzw5ekd6du','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxpp0eo002fpntz7x13epyg","messageLength":175,"hasStrategyCode":false}','{}',1767409038202);
INSERT INTO user_analytics VALUES('cmjxpui6f002upntz4xnevk97','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxpsw6d002qpntz0pt865i1","messageLength":185,"hasRagInsight":true,"hasBacktest":false}','{}',1767409271944);
INSERT INTO user_analytics VALUES('cmjxpui71002ypntzx56l5a26','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxpsw6d002qpntz0pt865i1","messageLength":185,"hasStrategyCode":true}','{}',1767409271966);
INSERT INTO user_analytics VALUES('cmjxq29f20035pntzc8cuosl4','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxpzeog0031pntz1p76ux2z","messageLength":203,"hasRagInsight":true,"hasBacktest":false}','{}',1767409633838);
INSERT INTO user_analytics VALUES('cmjxq29fo0039pntzklxenjcz','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxpzeog0031pntz1p76ux2z","messageLength":203,"hasStrategyCode":true}','{}',1767409633860);
INSERT INTO user_analytics VALUES('cmjxqc0g7003gpntztiq8zy3v','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxq8z4p003cpntz7h4hsd8r","messageLength":186,"hasRagInsight":true,"hasBacktest":false}','{}',1767410088775);
INSERT INTO user_analytics VALUES('cmjxqc0gt003kpntzf7cqfrjy','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxq8z4p003cpntz7h4hsd8r","messageLength":186,"hasStrategyCode":true}','{}',1767410088798);
INSERT INTO user_analytics VALUES('cmjxsymu3003rpntzz04nn378','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxsvjf6003npntz9cicmq05","messageLength":182,"hasRagInsight":true,"hasBacktest":false}','{}',1767414503451);
INSERT INTO user_analytics VALUES('cmjxsymun003vpntz1ajcct8r','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxsvjf6003npntz9cicmq05","messageLength":182,"hasStrategyCode":true}','{}',1767414503472);
INSERT INTO user_analytics VALUES('cmjxtubbq003zpntz5bxfy0rx','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767415980993_gqkccm"}','{}',1767415981526);
INSERT INTO user_analytics VALUES('cmjxtvi5t0046pntzyutok1n4','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxtv7ey0041pntz8vt5qr0f","messageLength":112,"hasRagInsight":true,"hasBacktest":false}','{}',1767416037042);
INSERT INTO user_analytics VALUES('cmjxtvi6l004apntzyx6n42a8','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxtv7ey0041pntz8vt5qr0f","messageLength":112,"hasStrategyCode":false}','{}',1767416037070);
INSERT INTO user_analytics VALUES('cmjxu2dsd004dpntzvfgfxu9z','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767416357435_qhd3hx"}','{}',1767416357966);
INSERT INTO user_analytics VALUES('cmjxu3t17004kpntz4st29yr0','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxu3fnm004gpntz2xyb75ut","messageLength":82,"hasRagInsight":true,"hasBacktest":false}','{}',1767416424379);
INSERT INTO user_analytics VALUES('cmjxu3t1y004opntzcdbme51m','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxu3fnm004gpntz2xyb75ut","messageLength":82,"hasStrategyCode":false}','{}',1767416424407);
INSERT INTO user_analytics VALUES('cmjxuy70o004rpntzb52galac','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767417841656_oqsa5y"}','{}',1767417842184);
INSERT INTO user_analytics VALUES('cmjxuz8pk004xpntzwa5on4y6','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxuz16l004tpntz9knoh7wf","messageLength":55,"hasRagInsight":true,"hasBacktest":false}','{}',1767417891032);
INSERT INTO user_analytics VALUES('cmjxuz8qa0051pntz5y9w8p77','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxuz16l004tpntz9knoh7wf","messageLength":55,"hasStrategyCode":false}','{}',1767417891059);
INSERT INTO user_analytics VALUES('cmjxv10vi0057pntzd1h3m79c','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxuz16l004tpntz9knoh7wf","messageLength":66,"hasRagInsight":true,"hasBacktest":false}','{}',1767417974191);
INSERT INTO user_analytics VALUES('cmjxv10w9005bpntzz7ip7809','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxuz16l004tpntz9knoh7wf","messageLength":66,"hasStrategyCode":false}','{}',1767417974217);
INSERT INTO user_analytics VALUES('cmjxv2t2z005gpntzcqom89d1','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxuz16l004tpntz9knoh7wf","messageLength":56,"hasRagInsight":true,"hasBacktest":false}','{}',1767418057403);
INSERT INTO user_analytics VALUES('cmjxv2t3p005kpntzcx11e4an','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxuz16l004tpntz9knoh7wf","messageLength":56,"hasStrategyCode":false}','{}',1767418057430);
INSERT INTO user_analytics VALUES('cmjxv7kve005npntz1getb7lm','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767418279513_nw3uzl"}','{}',1767418280042);
INSERT INTO user_analytics VALUES('cmjxv8lsc005upntz111gqwe9','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxv8eih005qpntztdcf77li","messageLength":53,"hasRagInsight":true,"hasBacktest":false}','{}',1767418327884);
INSERT INTO user_analytics VALUES('cmjxv8lt3005ypntzt9v99zi9','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxv8eih005qpntztdcf77li","messageLength":53,"hasStrategyCode":false}','{}',1767418327911);
INSERT INTO user_analytics VALUES('cmjxvgq1a0062pntz3xgrq3v7','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767418706107_xtesil"}','{}',1767418706638);
INSERT INTO user_analytics VALUES('cmjxvhq2y0069pntzlfls8beu','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxvhgkj0065pntzwhnps3tx","messageLength":35,"hasRagInsight":true,"hasBacktest":false}','{}',1767418753355);
INSERT INTO user_analytics VALUES('cmjxvhq3q006dpntz6pv82vfj','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxvhgkj0065pntzwhnps3tx","messageLength":35,"hasStrategyCode":false}','{}',1767418753382);
INSERT INTO user_analytics VALUES('cmjxvw8wp006gpntzsp1f78hh','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767419430401_kod6ti"}','{}',1767419430937);
INSERT INTO user_analytics VALUES('cmjxvx812006npntzjkxkkc5l','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxvwyeb006jpntzpe96g5kl","messageLength":50,"hasRagInsight":true,"hasBacktest":false}','{}',1767419476454);
INSERT INTO user_analytics VALUES('cmjxvx81u006rpntzt33glcwe','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxvwyeb006jpntzpe96g5kl","messageLength":50,"hasStrategyCode":false}','{}',1767419476482);
INSERT INTO user_analytics VALUES('cmjxwwk2x006upntz1f1bzu1m','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767421124501_ro2f3z"}','{}',1767421125033);
INSERT INTO user_analytics VALUES('cmjxwxu6b0071pntz9lg4v3ha','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxwxm3d006xpntzujdoiktd","messageLength":39,"hasRagInsight":true,"hasBacktest":false}','{}',1767421184771);
INSERT INTO user_analytics VALUES('cmjxwxu6v0075pntzfucrvzvw','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxwxm3d006xpntzujdoiktd","messageLength":39,"hasStrategyCode":false}','{}',1767421184792);
INSERT INTO user_analytics VALUES('cmjxwzx2f007cpntzb7ztuw20','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxwzk160078pntzkzhij5r5","messageLength":51,"hasRagInsight":true,"hasBacktest":false}','{}',1767421281832);
INSERT INTO user_analytics VALUES('cmjxwzx36007gpntzubcsg4fl','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxwzk160078pntzkzhij5r5","messageLength":51,"hasStrategyCode":false}','{}',1767421281859);
INSERT INTO user_analytics VALUES('cmjxx2egu007lpntzodatjx6a','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxwzk160078pntzkzhij5r5","messageLength":88,"hasRagInsight":true,"hasBacktest":false}','{}',1767421397694);
INSERT INTO user_analytics VALUES('cmjxx2ehl007ppntzpbsbd0yg','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxwzk160078pntzkzhij5r5","messageLength":88,"hasStrategyCode":false}','{}',1767421397721);
INSERT INTO user_analytics VALUES('cmjxx9i1x007spntzm9yqdq8m','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767421728401_vzda4o"}','{}',1767421728933);
INSERT INTO user_analytics VALUES('cmjxxb6in007zpntz0rzm94ip','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxxav0x007vpntzsrrsmldl","messageLength":57,"hasRagInsight":true,"hasBacktest":false}','{}',1767421807295);
INSERT INTO user_analytics VALUES('cmjxxb6je0083pntzkh2kh276','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxxav0x007vpntzsrrsmldl","messageLength":57,"hasStrategyCode":false}','{}',1767421807323);
INSERT INTO user_analytics VALUES('cmjxxczy5008apntzvusdfj8l','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxxcqlp0086pntz2f3kxr5s","messageLength":57,"hasRagInsight":true,"hasBacktest":false}','{}',1767421892093);
INSERT INTO user_analytics VALUES('cmjxxczyx008epntznnn62ib7','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxxcqlp0086pntz2f3kxr5s","messageLength":57,"hasStrategyCode":false}','{}',1767421892121);
INSERT INTO user_analytics VALUES('cmjxxpv69008hpntzt0dsrwvi','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767422491894_gz8zjz"}','{}',1767422492433);
INSERT INTO user_analytics VALUES('cmjxxqz42008opntzx0lk1wem','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxxqmdg008kpntz9qkahnii","messageLength":26,"hasRagInsight":true,"hasBacktest":false}','{}',1767422544194);
INSERT INTO user_analytics VALUES('cmjxxqz50008spntzxqz0club','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxxqmdg008kpntz9qkahnii","messageLength":26,"hasStrategyCode":false}','{}',1767422544228);
INSERT INTO user_analytics VALUES('cmjxxxcqh008vpntzr20e1sfy','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767422841286_unkkkn"}','{}',1767422841785);
INSERT INTO user_analytics VALUES('cmjxxyf1j0092pntzhwwr41ub','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjxxy152008xpntz4awd9lfy","messageLength":16,"hasRagInsight":true,"hasBacktest":false}','{}',1767422891431);
INSERT INTO user_analytics VALUES('cmjxxyf250096pntzjj2e6z07','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjxxy152008xpntz4awd9lfy","messageLength":16,"hasStrategyCode":false}','{}',1767422891453);
INSERT INTO user_analytics VALUES('cmjy0bkgz0099pntz25lhyefd','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.2 Mobile/23C55 Safari/604.1","requestId":"login_1767426863700_8s8a60"}','{}',1767426864227);
INSERT INTO user_analytics VALUES('cmjy0cqmh009cpntz3i205snp','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (iPhone; CPU iPhone OS 26_2_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/143.0.7499.151 Mobile/15E148 Safari/604.1","requestId":"login_1767426918328_4jav9b"}','{}',1767426918857);
INSERT INTO user_analytics VALUES('cmjy0icdr009fpntzxg8njp5y','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (iPhone; CPU iPhone OS 26_2_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/143.0.7499.151 Mobile/15E148 Safari/604.1","requestId":"login_1767427179805_xuw7vo"}','{}',1767427180335);
INSERT INTO user_analytics VALUES('cmjy0ivy8009ipntzlk1xf9c7','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (iPhone; CPU iPhone OS 26_2_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/143.0.7499.151 Mobile/15E148 Safari/604.1","requestId":"login_1767427205166_s3ul9m"}','{}',1767427205697);
INSERT INTO user_analytics VALUES('cmjy0mto6009ppntzwdz9xrpx','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjy0mh8g009lpntzxt5loyku","messageLength":67,"hasRagInsight":true,"hasBacktest":false}','{}',1767427389367);
INSERT INTO user_analytics VALUES('cmjy0mtos009tpntz0hwztpz4','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjy0mh8g009lpntzxt5loyku","messageLength":67,"hasStrategyCode":false}','{}',1767427389388);
INSERT INTO user_analytics VALUES('cmjy0qxt5009ypntzmxlga9fm','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjy0mh8g009lpntzxt5loyku","messageLength":51,"hasRagInsight":true,"hasBacktest":false}','{}',1767427581354);
INSERT INTO user_analytics VALUES('cmjy0qxtr00a2pntz3h2mia6h','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjy0mh8g009lpntzxt5loyku","messageLength":51,"hasStrategyCode":false}','{}',1767427581376);
INSERT INTO user_analytics VALUES('cmjyh3rb100a7pntzp3jyc5xj','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767455052791_5i5v2m"}','{}',1767455053309);
INSERT INTO user_analytics VALUES('cmjyh4pro00adpntzao0jmd8n','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyh4gaa00a9pntzm0mdpsen","messageLength":36,"hasRagInsight":true,"hasBacktest":false}','{}',1767455097972);
INSERT INTO user_analytics VALUES('cmjyh4ps900ahpntz7wexow7s','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyh4gaa00a9pntzm0mdpsen","messageLength":36,"hasStrategyCode":false}','{}',1767455097993);
INSERT INTO user_analytics VALUES('cmjyh5zk900anpntz6cixxadb','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyh4gaa00a9pntzm0mdpsen","messageLength":47,"hasRagInsight":true,"hasBacktest":false}','{}',1767455157321);
INSERT INTO user_analytics VALUES('cmjyh5zkw00arpntzwzcy3hek','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyh4gaa00a9pntzm0mdpsen","messageLength":47,"hasStrategyCode":false}','{}',1767455157344);
INSERT INTO user_analytics VALUES('cmjyhdcmx00aupntzcg7m4kux','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767455500322_bzzezg"}','{}',1767455500858);
INSERT INTO user_analytics VALUES('cmjyheugu00b1pntzp84i08xo','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyhebj400axpntz5mq27w1y","messageLength":16,"hasRagInsight":true,"hasBacktest":false}','{}',1767455570623);
INSERT INTO user_analytics VALUES('cmjyheuhh00b5pntzr57au4nx','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyhebj400axpntz5mq27w1y","messageLength":16,"hasStrategyCode":false}','{}',1767455570645);
INSERT INTO user_analytics VALUES('cmjyhhsbz00b8pntzclwzb0ef','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767455707281_111lfu"}','{}',1767455707823);
INSERT INTO user_analytics VALUES('cmjyhj4dy00bfpntzdp86m5db','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyhinpd00bbpntz783oh4bo","messageLength":13,"hasRagInsight":true,"hasBacktest":false}','{}',1767455770103);
INSERT INTO user_analytics VALUES('cmjyhj4ek00bjpntz8fdg1fkt','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyhinpd00bbpntz783oh4bo","messageLength":13,"hasStrategyCode":false}','{}',1767455770124);
INSERT INTO user_analytics VALUES('cmjyhm47t00bmpntzf7f6lop9','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767455909318_kxja0p"}','{}',1767455909850);
INSERT INTO user_analytics VALUES('cmjyhnf7c00btpntzccix1gx3','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyhmvom00bopntzr68j8sz4","messageLength":24,"hasRagInsight":true,"hasBacktest":false}','{}',1767455970745);
INSERT INTO user_analytics VALUES('cmjyhnf7z00bxpntz5ffkkq7z','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyhmvom00bopntzr68j8sz4","messageLength":24,"hasStrategyCode":false}','{}',1767455970767);
INSERT INTO user_analytics VALUES('cmjyhuef700c0pntzfo0o7q7q','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767456295801_jmdkjs"}','{}',1767456296323);
INSERT INTO user_analytics VALUES('cmjyhvmnp00c7pntz2mwlk2bz','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyhv6kn00c3pntzr5mcnjqt","messageLength":24,"hasRagInsight":true,"hasBacktest":false}','{}',1767456353653);
INSERT INTO user_analytics VALUES('cmjyhvmok00cbpntzp3rqwig5','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyhv6kn00c3pntzr5mcnjqt","messageLength":24,"hasStrategyCode":false}','{}',1767456353684);
INSERT INTO user_analytics VALUES('cmjyip5yv0001kgca5h6ak9rg','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767457731128_4ayggg"}','{}',1767457731703);
INSERT INTO user_analytics VALUES('cmjyipw6t0008kgcakk0oj8p7','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyipra20004kgcawge3kecx","messageLength":16,"hasRagInsight":false,"hasBacktest":false}','{}',1767457765686);
INSERT INTO user_analytics VALUES('cmjyipw7e000ckgcazs89pmwg','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyipra20004kgcawge3kecx","messageLength":16,"hasStrategyCode":false}','{}',1767457765706);
INSERT INTO user_analytics VALUES('cmjyirr6i000hkgca5ykrcajb','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyipra20004kgcawge3kecx","messageLength":30,"hasRagInsight":false,"hasBacktest":false}','{}',1767457852506);
INSERT INTO user_analytics VALUES('cmjyirr74000lkgcax6rr6s89','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyipra20004kgcawge3kecx","messageLength":30,"hasStrategyCode":false}','{}',1767457852528);
INSERT INTO user_analytics VALUES('cmjyiswg1000qkgca5wljm374','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyipra20004kgcawge3kecx","messageLength":24,"hasRagInsight":false,"hasBacktest":false}','{}',1767457905986);
INSERT INTO user_analytics VALUES('cmjyiswgn000ukgcaz8uanxw1','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyipra20004kgcawge3kecx","messageLength":24,"hasStrategyCode":false}','{}',1767457906008);
INSERT INTO user_analytics VALUES('cmjyiy6yj000113k8gbvcoboq','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767458152320_01ftnc"}','{}',1767458152891);
INSERT INTO user_analytics VALUES('cmjyiz4bs000813k8nwcmfdcv','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyiyzhl000413k8gmf0unxe","messageLength":16,"hasRagInsight":false,"hasBacktest":false}','{}',1767458196136);
INSERT INTO user_analytics VALUES('cmjyiz4ce000c13k8hh8rzrlx','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyiyzhl000413k8gmf0unxe","messageLength":16,"hasStrategyCode":false}','{}',1767458196159);
INSERT INTO user_analytics VALUES('cmjyj4un10001takoz8b4v035','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767458463055_hfx8yl"}','{}',1767458463518);
INSERT INTO user_analytics VALUES('cmjyj5muy0008takox1mpqa6z','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyj5h0e0004takob3sz7x3e","messageLength":16,"hasRagInsight":false,"hasBacktest":false}','{}',1767458500090);
INSERT INTO user_analytics VALUES('cmjyj5mvk000ctako2s9siptm','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyj5h0e0004takob3sz7x3e","messageLength":16,"hasStrategyCode":false}','{}',1767458500113);
INSERT INTO user_analytics VALUES('cmjyj71lb000jtakok320huzl','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyj6w6m000ftakozv4p4yar","messageLength":16,"hasRagInsight":false,"hasBacktest":false}','{}',1767458565839);
INSERT INTO user_analytics VALUES('cmjyj71lx000ntakoxg7mezvb','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyj6w6m000ftakozv4p4yar","messageLength":16,"hasStrategyCode":false}','{}',1767458565861);
INSERT INTO user_analytics VALUES('cmjyj87ek000stako8waef06w','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyj6w6m000ftakozv4p4yar","messageLength":28,"hasRagInsight":false,"hasBacktest":false}','{}',1767458620028);
INSERT INTO user_analytics VALUES('cmjyj87f6000wtakoqknwndvd','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyj6w6m000ftakozv4p4yar","messageLength":28,"hasStrategyCode":false}','{}',1767458620050);
INSERT INTO user_analytics VALUES('cmjyjcoz90001cfnj77mqscs7','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767458828862_c8b421"}','{}',1767458829429);
INSERT INTO user_analytics VALUES('cmjyjdnax0008cfnjtr5kzx3p','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyjdipq0004cfnjwypplc3w","messageLength":16,"hasRagInsight":false,"hasBacktest":false}','{}',1767458873913);
INSERT INTO user_analytics VALUES('cmjyjdnbj000ccfnjjs73pj9e','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyjdipq0004cfnjwypplc3w","messageLength":16,"hasStrategyCode":false}','{}',1767458873936);
INSERT INTO user_analytics VALUES('cmjyjhjpz0001z1kttqv7jq34','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767459055325_mkytip"}','{}',1767459055895);
INSERT INTO user_analytics VALUES('cmjyjiaey0008z1ktg9jefrk6','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyji9s90004z1kt9jqzm5ul","messageLength":16,"hasRagInsight":false,"hasBacktest":false}','{}',1767459090490);
INSERT INTO user_analytics VALUES('cmjyjiafj000cz1kt3lnhpz6t','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyji9s90004z1kt9jqzm5ul","messageLength":16,"hasStrategyCode":false}','{}',1767459090511);
INSERT INTO user_analytics VALUES('cmjyjkpje000fz1ktrnr1x8hd','test123','LOGIN_FAILED','{"reason":"invalid_password","requestId":"login_1767459202877_vjmzw5"}','{}',1767459203403);
INSERT INTO user_analytics VALUES('cmjyjlsl1000iz1ktrnri5jqw','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.7.2 Mobile/22H124 Safari/604.1","requestId":"login_1767459253463_5qnrjh"}','{}',1767459254005);
INSERT INTO user_analytics VALUES('cmjyjnfbh000lz1kty8b9vnzj','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (iPhone; CPU iPhone OS 18_7 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.7.2 Mobile/22H124 Safari/604.1","requestId":"login_1767459329594_zyknza"}','{}',1767459330125);
INSERT INTO user_analytics VALUES('cmjyjqodp000pz1ktmtdam246','test123','BACKTEST_RUN','{"backtestId":"cmjyjqode000nz1ktmfsa1j33","market":"nba","strategyName":"Bet on teams that lost their last 2 games if their point dif…","totalTrades":110,"winRate":44,"totalProfit":-11.8498}','{}',1767459481837);
INSERT INTO user_analytics VALUES('cmjyjsczj0002ghe03inaaf6b','test123','BACKTEST_RUN','{"backtestId":"cmjyjscz90000ghe0f08tflqp","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767459560383);
INSERT INTO user_analytics VALUES('cmjyjsmhx0005ghe0bwxt0szc','test123','BACKTEST_RUN','{"backtestId":"cmjyjsmho0003ghe0bjmhhr4r","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767459572709);
INSERT INTO user_analytics VALUES('cmjyjt4z60007ghe0y8jxiggm','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767459596118_2o6h0r"}','{}',1767459596658);
INSERT INTO user_analytics VALUES('cmjyjtyoy000fghe0n00gyqz5','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyjtwxd000bghe0w86gfx2g","messageLength":17,"hasRagInsight":false,"hasBacktest":false}','{}',1767459635170);
INSERT INTO user_analytics VALUES('cmjyjtypk000jghe0vi108q81','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyjtwxd000bghe0w86gfx2g","messageLength":17,"hasStrategyCode":false}','{}',1767459635192);
INSERT INTO user_analytics VALUES('cmjyjv4ww000oghe006cu9bck','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyjtwxd000bghe0w86gfx2g","messageLength":18,"hasRagInsight":false,"hasBacktest":false}','{}',1767459689888);
INSERT INTO user_analytics VALUES('cmjyjv4xh000sghe0jy1e85x9','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyjtwxd000bghe0w86gfx2g","messageLength":18,"hasStrategyCode":false}','{}',1767459689909);
INSERT INTO user_analytics VALUES('cmjyjw57m000zghe00e7ib5r3','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyjv6lm000ughe0lv9b8h0w","messageLength":53,"hasRagInsight":true,"hasBacktest":false}','{}',1767459736930);
INSERT INTO user_analytics VALUES('cmjyjw5890013ghe0lhts9mxs','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyjv6lm000ughe0lv9b8h0w","messageLength":53,"hasStrategyCode":false}','{}',1767459736954);
INSERT INTO user_analytics VALUES('cmjyjzccp001aghe06xo1mj2c','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyjy4xs0016ghe0ijtwp7vv","messageLength":64,"hasRagInsight":true,"hasBacktest":false}','{}',1767459886153);
INSERT INTO user_analytics VALUES('cmjyjzcdc001eghe04banae1r','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyjy4xs0016ghe0ijtwp7vv","messageLength":64,"hasStrategyCode":true}','{}',1767459886176);
INSERT INTO user_analytics VALUES('cmjykb030001hghe0yc34ambg','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767460429591_cjw275"}','{}',1767460430124);
INSERT INTO user_analytics VALUES('cmjykd410001mghe0rrfwxmfu','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyjtwxd000bghe0w86gfx2g","messageLength":164,"hasRagInsight":false,"hasBacktest":false}','{}',1767460528549);
INSERT INTO user_analytics VALUES('cmjykd41n001qghe0w5vmiena','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyjtwxd000bghe0w86gfx2g","messageLength":164,"hasStrategyCode":false}','{}',1767460528571);
INSERT INTO user_analytics VALUES('cmjylicl6001vghe0oh9z5zlq','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyjtwxd000bghe0w86gfx2g","messageLength":364,"hasRagInsight":true,"hasBacktest":false}','{}',1767462452538);
INSERT INTO user_analytics VALUES('cmjyliclu001zghe03twoexkl','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyjtwxd000bghe0w86gfx2g","messageLength":364,"hasStrategyCode":true}','{}',1767462452562);
INSERT INTO user_analytics VALUES('cmjylpvt70026ghe0ms16sgms','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjylnwyv0022ghe0lmxqahq3","messageLength":156,"hasRagInsight":true,"hasBacktest":false}','{}',1767462804043);
INSERT INTO user_analytics VALUES('cmjylpvtv002aghe0886mezjp','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjylnwyv0022ghe0lmxqahq3","messageLength":156,"hasStrategyCode":true}','{}',1767462804067);
INSERT INTO user_analytics VALUES('cmjylw2vt002dghe0y9z8e8js','test123','LOGIN_SUCCESS','{"userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36","requestId":"login_1767463092610_0k5mx4"}','{}',1767463093145);
INSERT INTO user_analytics VALUES('cmjylz4n6002oghe0mq3sed2i','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjylwwgr002fghe0ywn65l13","messageLength":338,"hasRagInsight":true,"hasBacktest":false}','{}',1767463235395);
INSERT INTO user_analytics VALUES('cmjylz4ns002sghe0mvmjrd7y','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjylwwgr002fghe0ywn65l13","messageLength":338,"hasStrategyCode":true}','{}',1767463235416);
INSERT INTO user_analytics VALUES('cmjylzx0y002vghe0wap67zy4','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjylxmys002kghe0xeg46txt","messageLength":317,"hasRagInsight":true,"hasBacktest":false}','{}',1767463272178);
INSERT INTO user_analytics VALUES('cmjylzx1k002zghe0x1dymz9y','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjylxmys002kghe0xeg46txt","messageLength":317,"hasStrategyCode":true}','{}',1767463272200);
INSERT INTO user_analytics VALUES('cmjymcfy10036ghe011x95951','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjymbg5i0032ghe08twqt244","messageLength":119,"hasRagInsight":true,"hasBacktest":false}','{}',1767463856569);
INSERT INTO user_analytics VALUES('cmjymcfyn003aghe067zaqwns','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjymbg5i0032ghe08twqt244","messageLength":119,"hasStrategyCode":true}','{}',1767463856592);
INSERT INTO user_analytics VALUES('cmjymkv9s0005x34k3wjqbu5v','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjymklhl0001x34kkm305b5t","messageLength":60,"hasRagInsight":false,"hasBacktest":false}','{}',1767464249680);
INSERT INTO user_analytics VALUES('cmjymkvaf0009x34kqmrhfa41','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjymklhl0001x34kkm305b5t","messageLength":60,"hasStrategyCode":false}','{}',1767464249703);
INSERT INTO user_analytics VALUES('cmjymnuak000gx34k1zjs8egj','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjymmii4000cx34kjswplay3","messageLength":138,"hasRagInsight":true,"hasBacktest":false}','{}',1767464388380);
INSERT INTO user_analytics VALUES('cmjymnub6000kx34k7pshm1lh','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjymmii4000cx34kjswplay3","messageLength":138,"hasStrategyCode":true}','{}',1767464388403);
INSERT INTO user_analytics VALUES('cmjymy92e0005wmjzuufah2kh','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjymvwrz0001wmjzar56rsam","messageLength":50,"hasRagInsight":true,"hasBacktest":false}','{}',1767464874086);
INSERT INTO user_analytics VALUES('cmjymy92z0009wmjzdy002p6d','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjymvwrz0001wmjzar56rsam","messageLength":50,"hasStrategyCode":true}','{}',1767464874108);
INSERT INTO user_analytics VALUES('cmjyn7c6b0005g52xq0d1nvk9','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyn761q0001g52x0dmnav5s","messageLength":106,"hasRagInsight":false,"hasBacktest":false}','{}',1767465298019);
INSERT INTO user_analytics VALUES('cmjyn7c6w0009g52x5rxr9at6','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyn761q0001g52x0dmnav5s","messageLength":106,"hasStrategyCode":false}','{}',1767465298040);
INSERT INTO user_analytics VALUES('cmjynccyf000gg52x6diepkss','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyncao6000cg52xiiopxu9l","messageLength":275,"hasRagInsight":false,"hasBacktest":false}','{}',1767465532312);
INSERT INTO user_analytics VALUES('cmjynccz2000kg52xv3kspbvn','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyncao6000cg52xiiopxu9l","messageLength":275,"hasStrategyCode":false}','{}',1767465532334);
INSERT INTO user_analytics VALUES('cmjynghad000rg52x50lokg0r','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyngg7u000ng52xmil144mc","messageLength":275,"hasRagInsight":false,"hasBacktest":false}','{}',1767465724549);
INSERT INTO user_analytics VALUES('cmjynghaz000vg52x52clcie2','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyngg7u000ng52xmil144mc","messageLength":275,"hasStrategyCode":false}','{}',1767465724571);
INSERT INTO user_analytics VALUES('cmjynko6u0012g52xkl9uao7o','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjynixm6000yg52x9bz3inv1","messageLength":292,"hasRagInsight":true,"hasBacktest":false}','{}',1767465920118);
INSERT INTO user_analytics VALUES('cmjynko7g0016g52xm2b4j93z','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjynixm6000yg52x9bz3inv1","messageLength":292,"hasStrategyCode":true}','{}',1767465920140);
INSERT INTO user_analytics VALUES('cmjynmknp001dg52x5vgd83c7','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjynmiu70019g52xiw9uqx9k","messageLength":245,"hasRagInsight":false,"hasBacktest":false}','{}',1767466008853);
INSERT INTO user_analytics VALUES('cmjynmkoa001hg52x8eb6mjut','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjynmiu70019g52xiw9uqx9k","messageLength":245,"hasStrategyCode":false}','{}',1767466008875);
INSERT INTO user_analytics VALUES('cmjynqpgn001og52xjvuzz734','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjynop8s001kg52x30e7yy71","messageLength":280,"hasRagInsight":true,"hasBacktest":false}','{}',1767466201703);
INSERT INTO user_analytics VALUES('cmjynqph9001sg52x6yz8pcz8','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjynop8s001kg52x30e7yy71","messageLength":280,"hasStrategyCode":true}','{}',1767466201726);
INSERT INTO user_analytics VALUES('cmjynuqfz001zg52xghl5t00m','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjynss0c001vg52xi4pfozx9","messageLength":299,"hasRagInsight":true,"hasBacktest":false}','{}',1767466389600);
INSERT INTO user_analytics VALUES('cmjynuqgl0023g52xbymydgng','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjynss0c001vg52xi4pfozx9","messageLength":299,"hasStrategyCode":true}','{}',1767466389621);
INSERT INTO user_analytics VALUES('cmjyoffk0002ag52x9sk4btb7','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyofdlu0026g52xzlvw1sfr","messageLength":200,"hasRagInsight":false,"hasBacktest":false}','{}',1767467355264);
INSERT INTO user_analytics VALUES('cmjyoffkl002eg52x57bit9jr','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyofdlu0026g52xzlvw1sfr","messageLength":200,"hasStrategyCode":false}','{}',1767467355286);
INSERT INTO user_analytics VALUES('cmjypxypg002lg52x4seck158','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjypxx84002hg52xltfoyosd","messageLength":275,"hasRagInsight":false,"hasBacktest":false}','{}',1767469899508);
INSERT INTO user_analytics VALUES('cmjypxyq1002pg52x5wrzv74p','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjypxx84002hg52xltfoyosd","messageLength":275,"hasStrategyCode":false}','{}',1767469899529);
INSERT INTO user_analytics VALUES('cmjyq2f22002wg52xx3eu8gaa','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjypzxg6002sg52xhtojf66n","messageLength":292,"hasRagInsight":true,"hasBacktest":false}','{}',1767470107322);
INSERT INTO user_analytics VALUES('cmjyq2f2o0030g52xgr81385m','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjypzxg6002sg52xhtojf66n","messageLength":292,"hasStrategyCode":true}','{}',1767470107344);
INSERT INTO user_analytics VALUES('cmjyq6hgf0037g52xsfwkpzsg','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyq6gbr0033g52xe11hgrh1","messageLength":245,"hasRagInsight":false,"hasBacktest":false}','{}',1767470297055);
INSERT INTO user_analytics VALUES('cmjyq6hh1003bg52xdl2tnxu8','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyq6gbr0033g52xe11hgrh1","messageLength":245,"hasStrategyCode":false}','{}',1767470297077);
INSERT INTO user_analytics VALUES('cmjyqaclw003ig52x39s8brfs','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyq8nml003eg52x9blzvixn","messageLength":280,"hasRagInsight":true,"hasBacktest":false}','{}',1767470477396);
INSERT INTO user_analytics VALUES('cmjyqacmi003mg52x1ipa6n1l','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyq8nml003eg52x9blzvixn","messageLength":280,"hasStrategyCode":true}','{}',1767470477419);
INSERT INTO user_analytics VALUES('cmjyqiz40003ug52xsuzxxtse','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyqg1mr003qg52xevbyb863","messageLength":250,"hasRagInsight":true,"hasBacktest":false}','{}',1767470879809);
INSERT INTO user_analytics VALUES('cmjyqiz4l003yg52x40m71jvj','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyqg1mr003qg52xevbyb863","messageLength":250,"hasStrategyCode":true}','{}',1767470879829);
INSERT INTO user_analytics VALUES('cmjyqwjst0045g52xi7c1fwov','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyqv2po0041g52xdgd0di4d","messageLength":202,"hasRagInsight":true,"hasBacktest":false}','{}',1767471513149);
INSERT INTO user_analytics VALUES('cmjyqwjte0049g52xvq8uct6r','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyqv2po0041g52xdgd0di4d","messageLength":202,"hasStrategyCode":true}','{}',1767471513170);
INSERT INTO user_analytics VALUES('cmjyr38o8004gg52xsba0lpyy','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyr255e004cg52xmzyunylg","messageLength":203,"hasRagInsight":false,"hasBacktest":false}','{}',1767471825320);
INSERT INTO user_analytics VALUES('cmjyr38ov004kg52xvqnloiy9','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyr255e004cg52xmzyunylg","messageLength":203,"hasStrategyCode":false}','{}',1767471825343);
INSERT INTO user_analytics VALUES('cmjyr7f0k004rg52xy2rnbenz','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyr54y6004ng52xv512ds1m","messageLength":364,"hasRagInsight":true,"hasBacktest":false}','{}',1767472020164);
INSERT INTO user_analytics VALUES('cmjyr7f17004vg52xo2hef2d5','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyr54y6004ng52xv512ds1m","messageLength":364,"hasStrategyCode":true}','{}',1767472020187);
INSERT INTO user_analytics VALUES('cmjysby1p0052g52x2sdeu29v','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjysa9zi004yg52xkbghte77","messageLength":350,"hasRagInsight":true,"hasBacktest":false}','{}',1767473911070);
INSERT INTO user_analytics VALUES('cmjysby2b0056g52x41wkl7rg','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjysa9zi004yg52xkbghte77","messageLength":350,"hasStrategyCode":true}','{}',1767473911091);
INSERT INTO user_analytics VALUES('cmjysjsjy005dg52xvxf5oqq3','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjysgspz0059g52xa11qvgxc","messageLength":292,"hasRagInsight":true,"hasBacktest":false}','{}',1767474277199);
INSERT INTO user_analytics VALUES('cmjysjskl005hg52xbsn8sih8','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjysgspz0059g52xa11qvgxc","messageLength":292,"hasStrategyCode":true}','{}',1767474277222);
INSERT INTO user_analytics VALUES('cmjytahwg005og52xf2wfz9hj','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyt92tv005kg52xsfwaxp7i","messageLength":304,"hasRagInsight":true,"hasBacktest":false}','{}',1767475523104);
INSERT INTO user_analytics VALUES('cmjytahx2005sg52xtg83h2rr','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyt92tv005kg52xsfwaxp7i","messageLength":304,"hasStrategyCode":true}','{}',1767475523126);
INSERT INTO user_analytics VALUES('cmjyte451005zg52xd49tf79c','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjytcqu0005vg52xxbnhzpjo","messageLength":185,"hasRagInsight":true,"hasBacktest":false}','{}',1767475691893);
INSERT INTO user_analytics VALUES('cmjyte45p0063g52x7sclq13h','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjytcqu0005vg52xxbnhzpjo","messageLength":185,"hasStrategyCode":true}','{}',1767475691918);
INSERT INTO user_analytics VALUES('cmjyu5oka0067g52xw9pxv2ch','test123','BACKTEST_RUN','{"backtestId":"cmjyu5ok00065g52x1al0snjk","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767476978074);
INSERT INTO user_analytics VALUES('cmjyu8fe9006bg52xz10c2a0m','test123','BACKTEST_RUN','{"backtestId":"cmjyu8fdx0069g52xv0ohx5pf","market":"nba","strategyName":"Bet on teams that lost their last 2 games if their point dif…","totalTrades":110,"winRate":44,"totalProfit":-11.8498}','{}',1767477106161);
INSERT INTO user_analytics VALUES('cmjyuh0g4006jg52x8lis0v9f','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjyufx0g006fg52xn0zkjhu7","messageLength":49,"hasRagInsight":true,"hasBacktest":false}','{}',1767477506692);
INSERT INTO user_analytics VALUES('cmjyuh0gp006ng52xpum9qj0e','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjyufx0g006fg52xn0zkjhu7","messageLength":49,"hasStrategyCode":false}','{}',1767477506714);
INSERT INTO user_analytics VALUES('cmjz4pvqt006ug52xtxh08uyx','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjz4pp5b006qg52xzx6tji35","messageLength":54,"hasRagInsight":false,"hasBacktest":false}','{}',1767494716661);
INSERT INTO user_analytics VALUES('cmjz4pvrh006yg52x49pxtdpf','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjz4pp5b006qg52xzx6tji35","messageLength":54,"hasStrategyCode":false}','{}',1767494716685);
INSERT INTO user_analytics VALUES('cmjz79ai60075g52xzlz1jro3','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjz799520071g52x8fs868vj","messageLength":192,"hasRagInsight":false,"hasBacktest":false}','{}',1767498981486);
INSERT INTO user_analytics VALUES('cmjz79ais0079g52x5gdgfzzq','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjz799520071g52x8fs868vj","messageLength":192,"hasStrategyCode":false}','{}',1767498981509);
INSERT INTO user_analytics VALUES('cmjz7ioig007gg52x2739klz4','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjz7gki4007cg52x06ffi33k","messageLength":190,"hasRagInsight":true,"hasBacktest":false}','{}',1767499419544);
INSERT INTO user_analytics VALUES('cmjz7ioj2007kg52xz57afqbw','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjz7gki4007cg52x06ffi33k","messageLength":190,"hasStrategyCode":true}','{}',1767499419567);
INSERT INTO user_analytics VALUES('cmjz7sr0e007rg52x7qfchd9j','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjz7rba7007ng52x2d0p3y1h","messageLength":136,"hasRagInsight":true,"hasBacktest":false}','{}',1767499889342);
INSERT INTO user_analytics VALUES('cmjz7sr12007vg52xrwb5xu35','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjz7rba7007ng52x2d0p3y1h","messageLength":136,"hasStrategyCode":true}','{}',1767499889366);
INSERT INTO user_analytics VALUES('cmjz7vejn0082g52x2p7xbsxt','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjz7vdy7007yg52xc32h3cqm","messageLength":176,"hasRagInsight":false,"hasBacktest":false}','{}',1767500013156);
INSERT INTO user_analytics VALUES('cmjz7vek90086g52xt58xexnn','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjz7vdy7007yg52xc32h3cqm","messageLength":176,"hasStrategyCode":false}','{}',1767500013178);
INSERT INTO user_analytics VALUES('cmjz89yd0008dg52xifyhsjqt','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjz87qit0089g52xmtlmme89","messageLength":236,"hasRagInsight":true,"hasBacktest":false}','{}',1767500692020);
INSERT INTO user_analytics VALUES('cmjz89ydo008hg52xwvf6zklv','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjz87qit0089g52xmtlmme89","messageLength":236,"hasStrategyCode":true}','{}',1767500692044);
INSERT INTO user_analytics VALUES('cmjz8pkvs008og52xlvv5ydrg','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjz8pkus008kg52xswri5epi","messageLength":109,"hasRagInsight":false,"hasBacktest":false}','{}',1767501421049);
INSERT INTO user_analytics VALUES('cmjz8pkwe008sg52xdcxpqkl3','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjz8pkus008kg52xswri5epi","messageLength":109,"hasStrategyCode":false}','{}',1767501421070);
INSERT INTO user_analytics VALUES('cmjz9ye4l008zg52x32f3sp0h','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjz9wkqz008vg52xoaaeszi4","messageLength":176,"hasRagInsight":true,"hasBacktest":false}','{}',1767503511813);
INSERT INTO user_analytics VALUES('cmjz9ye570093g52xwxq7ly1n','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjz9wkqz008vg52xoaaeszi4","messageLength":176,"hasStrategyCode":true}','{}',1767503511836);
INSERT INTO user_analytics VALUES('cmjzyihor009ag52xifl09r00','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjzygf5s0096g52xommzfe22","messageLength":176,"hasRagInsight":true,"hasBacktest":false}','{}',1767544760331);
INSERT INTO user_analytics VALUES('cmjzyihpe009eg52x6z1zya4j','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjzygf5s0096g52xommzfe22","messageLength":176,"hasStrategyCode":true}','{}',1767544760355);
INSERT INTO user_analytics VALUES('cmjzyrbgx009lg52xi7x64pgm','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjzypcab009hg52xnzqlcyoc","messageLength":176,"hasRagInsight":true,"hasBacktest":false}','{}',1767545172177);
INSERT INTO user_analytics VALUES('cmjzyrbhj009pg52xazbpjhhs','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjzypcab009hg52xnzqlcyoc","messageLength":176,"hasStrategyCode":true}','{}',1767545172200);
INSERT INTO user_analytics VALUES('cmjzz2ivg009ug52xwnuajlcm','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjzypcab009hg52xnzqlcyoc","messageLength":56,"hasRagInsight":true,"hasBacktest":false}','{}',1767545694988);
INSERT INTO user_analytics VALUES('cmjzz2iw3009yg52xns6fb9or','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjzypcab009hg52xnzqlcyoc","messageLength":56,"hasStrategyCode":true}','{}',1767545695011);
INSERT INTO user_analytics VALUES('cmjzzb13e0005fj3o0wjdan44','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmjzz88ga0001fj3o7mzdz9pi","messageLength":66,"hasRagInsight":true,"hasBacktest":false}','{}',1767546091850);
INSERT INTO user_analytics VALUES('cmjzzb1400009fj3opkbcx1l3','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmjzz88ga0001fj3o7mzdz9pi","messageLength":66,"hasStrategyCode":true}','{}',1767546091872);
INSERT INTO user_analytics VALUES('cmk00htpa0005d8406qklng9s','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmk00eb5w0001d840clchztjb","messageLength":87,"hasRagInsight":true,"hasBacktest":true}','{}',1767548088479);
INSERT INTO user_analytics VALUES('cmk00htpw0009d8402xsozbfp','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmk00eb5w0001d840clchztjb","messageLength":87,"hasStrategyCode":true}','{}',1767548088501);
INSERT INTO user_analytics VALUES('cmk00htqd000cd840oxuwwxma','test123','BACKTEST_RUN','{"backtestId":"cmk00htq5000ad840fxtwdtxq","market":"nba","strategyName":"Strategy Overview","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767548088518);
INSERT INTO user_analytics VALUES('cmk00zkg2000jd8406wzmuqav','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmk00zixi000fd840jplf0sms","messageLength":68,"hasRagInsight":false,"hasBacktest":false}','{}',1767548916290);
INSERT INTO user_analytics VALUES('cmk00zkgo000nd840hqisw0ad','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmk00zixi000fd840jplf0sms","messageLength":68,"hasStrategyCode":false}','{}',1767548916312);
INSERT INTO user_analytics VALUES('cmk012hmo000ud840ozmt6mgd','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmk012dh3000qd8406ueafg9y","messageLength":64,"hasRagInsight":false,"hasBacktest":false}','{}',1767549052609);
INSERT INTO user_analytics VALUES('cmk012hnb000yd8404l3fnk72','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmk012dh3000qd8406ueafg9y","messageLength":64,"hasStrategyCode":false}','{}',1767549052631);
INSERT INTO user_analytics VALUES('cmk017l280015d840sxzyx2pm','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmk01639j0011d840ssxb8ee2","messageLength":65,"hasRagInsight":true,"hasBacktest":false}','{}',1767549290336);
INSERT INTO user_analytics VALUES('cmk017l2u0019d840r5oiht0x','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmk01639j0011d840ssxb8ee2","messageLength":65,"hasStrategyCode":true}','{}',1767549290358);
INSERT INTO user_analytics VALUES('cmk01b5k3001gd840hafmwd2w','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmk01aowy001cd840rev96osw","messageLength":67,"hasRagInsight":true,"hasBacktest":false}','{}',1767549456867);
INSERT INTO user_analytics VALUES('cmk01b5kp001kd8402p30kbof','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmk01aowy001cd840rev96osw","messageLength":67,"hasStrategyCode":false}','{}',1767549456890);
INSERT INTO user_analytics VALUES('cmk01oc70001od840rfwlp8o9','test123','BACKTEST_RUN','{"backtestId":"cmk01oc6s001md8406nkukk9v","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767550071997);
INSERT INTO user_analytics VALUES('cmk01qnoa001sd840zdb5d9op','test123','BACKTEST_RUN','{"backtestId":"cmk01qno1001qd8405jyt6696","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767550180186);
INSERT INTO user_analytics VALUES('cmk01sonb001wd840xt4t5zyb','test123','BACKTEST_RUN','{"backtestId":"cmk01son1001ud8403dk0lab1","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767550274759);
INSERT INTO user_analytics VALUES('cmk01ui190020d840z6dbed53','test123','BACKTEST_RUN','{"backtestId":"cmk01ui0y001yd840p0rlhqt4","market":"nba","strategyName":"Bet on teams that lost their last 2 games if their point dif…","totalTrades":110,"winRate":44,"totalProfit":-10.9929}','{}',1767550359501);
INSERT INTO user_analytics VALUES('cmk022arm0024d84009l5h94v','test123','BACKTEST_RUN','{"backtestId":"cmk022are0022d840lzgoo2a3","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767550723331);
INSERT INTO user_analytics VALUES('cmk02etwy0028d840xe7qnenf','test123','BACKTEST_RUN','{"backtestId":"cmk02etwi0026d8401bgv6vwp","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767551308019);
INSERT INTO user_analytics VALUES('cmk032f7g002cd840gc4ptxv8','test123','BACKTEST_RUN','{"backtestId":"cmk032f78002ad840wn7i3ueo","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767552408700);
INSERT INTO user_analytics VALUES('cmk036l8i002gd8404clj0qrf','test123','BACKTEST_RUN','{"backtestId":"cmk036l89002ed8402455pk02","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767552603138);
INSERT INTO user_analytics VALUES('cmk039y30002kd840f3ks570w','test123','BACKTEST_RUN','{"backtestId":"cmk039y2s002id840dgd3oq0z","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767552759756);
INSERT INTO user_analytics VALUES('cmk03d12i002od840ohoczsdv','test123','BACKTEST_RUN','{"backtestId":"cmk03d12a002md840ti3mys27","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767552903594);
INSERT INTO user_analytics VALUES('cmk03hlv3002sd8404got71ml','test123','BACKTEST_RUN','{"backtestId":"cmk03hluv002qd840vzwu6y8k","market":"nba","strategyName":"Bet on home favorites with a spread of 5 or more points in t…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767553117168);
INSERT INTO user_analytics VALUES('cmk05hvk20003r1ew1m50gmrx','test123','AI_GENERATION','{"domain":"sports","conversationId":"cmk01aowy001cd840rev96osw","messageLength":41,"hasRagInsight":true,"hasBacktest":false}','{}',1767556488963);
INSERT INTO user_analytics VALUES('cmk05hvkp0007r1ewbwyv1rif','test123','CHAT_MESSAGE_SENT','{"domain":"sports","conversationId":"cmk01aowy001cd840rev96osw","messageLength":41,"hasStrategyCode":false}','{}',1767556488985);
INSERT INTO user_analytics VALUES('cmk05lhj8000br1ew11tf85zs','test123','BACKTEST_RUN','{"backtestId":"cmk05lhiw0009r1ewgmb6bb70","market":"nba","strategyName":"Bet on home underdogs when the spread is greater than 5 poin…","totalTrades":0,"winRate":0,"totalProfit":0}','{}',1767556657413);
CREATE TABLE IF NOT EXISTS "strategy_analytics" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "strategyId" TEXT NOT NULL,
    "eventType" TEXT NOT NULL,
    "eventData" TEXT NOT NULL,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "strategy_analytics_strategyId_fkey" FOREIGN KEY ("strategyId") REFERENCES "strategies" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "system_analytics" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "eventType" TEXT NOT NULL,
    "eventData" TEXT NOT NULL,
    "metadata" TEXT NOT NULL,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO system_analytics VALUES('cmjxh0bd80002pntz5bvbz1e2','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":473,"totalTime":473,"errors":0,"errorRate":0}','{}',1767394426509);
INSERT INTO system_analytics VALUES('cmjxh5gjy0003pntz2crgczs3','PERFORMANCE_METRIC','{"operation":"health_check","count":1,"avgTime":4,"totalTime":4,"errors":0,"errorRate":0}','{}',1767394666510);
INSERT INTO system_analytics VALUES('cmjxh6qul0006pntz5nhhe4yg','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":552,"totalTime":552,"errors":0,"errorRate":0}','{}',1767394726509);
INSERT INTO system_analytics VALUES('cmjxhbw280009pntzf69nl0rn','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":555,"totalTime":555,"errors":0,"errorRate":0}','{}',1767394966544);
INSERT INTO system_analytics VALUES('cmjxhd6cv000kpntz170t89dj','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":25484,"totalTime":25484,"errors":0,"errorRate":0}','{}',1767395026544);
INSERT INTO system_analytics VALUES('cmjxi1m01000vpntznzqe6380','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":21933,"totalTime":21933,"errors":0,"errorRate":0}','{}',1767396166562);
INSERT INTO system_analytics VALUES('cmjxi46lf0014pntzgtot81tu','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":13785,"totalTime":13785,"errors":0,"errorRate":0}','{}',1767396286563);
INSERT INTO system_analytics VALUES('cmjxiam2w001dpntz7fpvyrv0','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":55843,"totalTime":55843,"errors":0,"errorRate":0}','{}',1767396586568);
INSERT INTO system_analytics VALUES('cmjxid6o8001opntzr4e5ttdk','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":29168,"totalTime":29168,"errors":0,"errorRate":0}','{}',1767396706568);
INSERT INTO system_analytics VALUES('cmjxih1ka001zpntzfyl7kv2s','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":60971,"totalTime":60971,"errors":0,"errorRate":0}','{}',1767396886570);
INSERT INTO system_analytics VALUES('cmjxinh1o002apntz66022pey','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":148341,"totalTime":148341,"errors":0,"errorRate":0}','{}',1767397186573);
INSERT INTO system_analytics VALUES('cmjxovb1y002dpntze263yqx8','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":539,"totalTime":539,"errors":0,"errorRate":0}','{}',1767407629750);
INSERT INTO system_analytics VALUES('cmjxpq6lh002opntzuwdg62zd','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":22601,"totalTime":22601,"errors":0,"errorRate":0}','{}',1767409070309);
INSERT INTO system_analytics VALUES('cmjxpvbu2002zpntzwqiczmk3','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":75226,"totalTime":75226,"errors":0,"errorRate":0}','{}',1767409310378);
INSERT INTO system_analytics VALUES('cmjxq31ns003apntz3l0n4xr9','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":133205,"totalTime":133205,"errors":0,"errorRate":0}','{}',1767409670441);
INSERT INTO system_analytics VALUES('cmjxqc1tv003lpntzvntgchlh','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":141732,"totalTime":141732,"errors":0,"errorRate":0}','{}',1767410090564);
INSERT INTO system_analytics VALUES('cmjxsz8xi003wpntzjx38uu2q','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":144446,"totalTime":144446,"errors":0,"errorRate":0}','{}',1767414532086);
INSERT INTO system_analytics VALUES('cmjxtu4h7003xpntzoxd1fe4e','PERFORMANCE_METRIC','{"operation":"health_check","count":1,"avgTime":4,"totalTime":4,"errors":0,"errorRate":0}','{}',1767415972652);
INSERT INTO system_analytics VALUES('cmjxtverw0044pntzsf2p7zr7','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":542,"totalTime":542,"errors":0,"errorRate":0}','{}',1767416032652);
INSERT INTO system_analytics VALUES('cmjxtwp3f004bpntz6kyuvsmj','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":13986,"totalTime":13986,"errors":0,"errorRate":0}','{}',1767416092683);
INSERT INTO system_analytics VALUES('cmjxu34nd004epntzxl1nrpn5','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":538,"totalTime":538,"errors":0,"errorRate":0}','{}',1767416392777);
INSERT INTO system_analytics VALUES('cmjxu4eyn004ppntzp8fmu5at','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":17395,"totalTime":17395,"errors":0,"errorRate":0}','{}',1767416452800);
INSERT INTO system_analytics VALUES('cmjxuzah50052pntzzo0u9mq7','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":536,"totalTime":536,"errors":0,"errorRate":0}','{}',1767417893321);
INSERT INTO system_analytics VALUES('cmjxuzahh0053pntzqj0gr0cv','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":9812,"totalTime":9812,"errors":0,"errorRate":0}','{}',1767417893334);
INSERT INTO system_analytics VALUES('cmjxv1v3m005cpntzypecolm0','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":10102,"totalTime":10102,"errors":0,"errorRate":0}','{}',1767418013362);
INSERT INTO system_analytics VALUES('cmjxv35ef005lpntzkgbwln9f','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":10058,"totalTime":10058,"errors":0,"errorRate":0}','{}',1767418073368);
INSERT INTO system_analytics VALUES('cmjxv8anj005opntzvgmyozj9','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":537,"totalTime":537,"errors":0,"errorRate":0}','{}',1767418313455);
INSERT INTO system_analytics VALUES('cmjxv9kyc005zpntz2bu94g57','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":9483,"totalTime":9483,"errors":0,"errorRate":0}','{}',1767418373460);
INSERT INTO system_analytics VALUES('cmjxvg0iv0060pntzbxvd5o4s','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":0,"totalTime":0,"errors":0,"errorRate":0}','{}',1767418673575);
INSERT INTO system_analytics VALUES('cmjxvhau30063pntz3q7nntat','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":539,"totalTime":539,"errors":0,"errorRate":0}','{}',1767418733595);
INSERT INTO system_analytics VALUES('cmjxvil5k006epntz2sgrpecx','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":12385,"totalTime":12385,"errors":0,"errorRate":0}','{}',1767418793625);
INSERT INTO system_analytics VALUES('cmjxvwqln006hpntz1l112qhp','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":544,"totalTime":544,"errors":0,"errorRate":0}','{}',1767419453868);
INSERT INTO system_analytics VALUES('cmjxvy0x6006spntz7bxy2uq1','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":12545,"totalTime":12545,"errors":0,"errorRate":0}','{}',1767419513898);
INSERT INTO system_analytics VALUES('cmjxwwrdz006vpntz6kzfe6gl','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":540,"totalTime":540,"errors":0,"errorRate":0}','{}',1767421134504);
INSERT INTO system_analytics VALUES('cmjxwy1os0076pntzfloe939z','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":10524,"totalTime":10524,"errors":0,"errorRate":0}','{}',1767421194508);
INSERT INTO system_analytics VALUES('cmjxx0mb3007hpntzh4g61vaw','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":16950,"totalTime":16950,"errors":0,"errorRate":0}','{}',1767421314544);
INSERT INTO system_analytics VALUES('cmjxx36xf007qpntzek9g77zj','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":11014,"totalTime":11014,"errors":0,"errorRate":0}','{}',1767421434580);
INSERT INTO system_analytics VALUES('cmjxx9mhi007tpntze9hxqcko','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":540,"totalTime":540,"errors":0,"errorRate":0}','{}',1767421734679);
INSERT INTO system_analytics VALUES('cmjxxc73p0084pntza2hql2z5','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":14952,"totalTime":14952,"errors":0,"errorRate":0}','{}',1767421854709);
INSERT INTO system_analytics VALUES('cmjxxdhet008fpntzol6azmwn','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":12171,"totalTime":12171,"errors":0,"errorRate":0}','{}',1767421914726);
INSERT INTO system_analytics VALUES('cmjxxqcjw008ipntzk1tx04rt','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":548,"totalTime":548,"errors":0,"errorRate":0}','{}',1767422514957);
INSERT INTO system_analytics VALUES('cmjxxrmuq008tpntz6g16bofh','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":16575,"totalTime":16575,"errors":0,"errorRate":0}','{}',1767422574963);
INSERT INTO system_analytics VALUES('cmjxxy2f30090pntzhypoli1u','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":507,"totalTime":507,"errors":0,"errorRate":0}','{}',1767422875071);
INSERT INTO system_analytics VALUES('cmjxxzcqk0097pntzs3go9b0j','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":18069,"totalTime":18069,"errors":0,"errorRate":0}','{}',1767422935101);
INSERT INTO system_analytics VALUES('cmjy0c9hu009apntz7312udtt','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":535,"totalTime":535,"errors":0,"errorRate":0}','{}',1767426896658);
INSERT INTO system_analytics VALUES('cmjy0djsk009dpntzyczklf3y','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":537,"totalTime":537,"errors":0,"errorRate":0}','{}',1767426956660);
INSERT INTO system_analytics VALUES('cmjy0ip0k009gpntzgy8tz0x8','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":538,"totalTime":538,"errors":0,"errorRate":0}','{}',1767427196708);
INSERT INTO system_analytics VALUES('cmjy0jzbr009jpntzzdj2wwk7','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":538,"totalTime":538,"errors":0,"errorRate":0}','{}',1767427256727);
INSERT INTO system_analytics VALUES('cmjy0nu9f009upntzh6224ywr','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":16171,"totalTime":16171,"errors":0,"errorRate":0}','{}',1767427436788);
INSERT INTO system_analytics VALUES('cmjy0rp7m00a3pntzqr83ba03','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":15548,"totalTime":15548,"errors":0,"errorRate":0}','{}',1767427616866);
INSERT INTO system_analytics VALUES('cmjygzs2000a4pntzspbi395v','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":1,"totalTime":1,"errors":0,"errorRate":0}','{}',1767454867657);
INSERT INTO system_analytics VALUES('cmjyh12d700a5pntzvt7oh521','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":1,"totalTime":1,"errors":0,"errorRate":0}','{}',1767454927676);
INSERT INTO system_analytics VALUES('cmjyh4xa900aipntzfe4bc9x6','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":527,"totalTime":527,"errors":0,"errorRate":0}','{}',1767455107713);
INSERT INTO system_analytics VALUES('cmjyh4xah00ajpntzi0p0iwdh','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":12342,"totalTime":12342,"errors":0,"errorRate":0}','{}',1767455107721);
INSERT INTO system_analytics VALUES('cmjyh67l100aspntzt1ce1r5r','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":11290,"totalTime":11290,"errors":0,"errorRate":0}','{}',1767455167717);
INSERT INTO system_analytics VALUES('cmjyhdxh300avpntzyzg5aet2','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":544,"totalTime":544,"errors":0,"errorRate":0}','{}',1767455527864);
INSERT INTO system_analytics VALUES('cmjyhf7s200b6pntzmfwycu1i','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":24595,"totalTime":24595,"errors":0,"errorRate":0}','{}',1767455587875);
INSERT INTO system_analytics VALUES('cmjyhhse800b9pntzkxiflpug','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":550,"totalTime":550,"errors":0,"errorRate":0}','{}',1767455707905);
INSERT INTO system_analytics VALUES('cmjyhkd0e00bkpntzh2n424pu','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":21672,"totalTime":21672,"errors":0,"errorRate":0}','{}',1767455827935);
INSERT INTO system_analytics VALUES('cmjyhmxlr00brpntzq3ragn6s','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":540,"totalTime":540,"errors":0,"errorRate":0}','{}',1767455947936);
INSERT INTO system_analytics VALUES('cmjyho7x900bypntzgdburr8c','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":25352,"totalTime":25352,"errors":0,"errorRate":0}','{}',1767456007966);
INSERT INTO system_analytics VALUES('cmjyhunhe00c1pntzy5bh6ay8','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":530,"totalTime":530,"errors":0,"errorRate":0}','{}',1767456308066);
INSERT INTO system_analytics VALUES('cmjyhvxs900ccpntzmyx0oi88','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":20907,"totalTime":20907,"errors":0,"errorRate":0}','{}',1767456368074);
INSERT INTO system_analytics VALUES('cmjyipgs30002kgcah68wctpd','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":590,"totalTime":590,"errors":0,"errorRate":0}','{}',1767457745716);
INSERT INTO system_analytics VALUES('cmjyiqr2r000dkgcal04svigw','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":6420,"totalTime":6420,"errors":0,"errorRate":0}','{}',1767457805715);
INSERT INTO system_analytics VALUES('cmjyis1df000mkgcalwwme4s2','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":735,"totalTime":735,"errors":0,"errorRate":0}','{}',1767457865716);
INSERT INTO system_analytics VALUES('cmjyitbo4000vkgca9pwda0mg','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":5464,"totalTime":5464,"errors":0,"errorRate":0}','{}',1767457925716);
INSERT INTO system_analytics VALUES('cmjyiygbx000213k8xnd6nvno','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":586,"totalTime":586,"errors":0,"errorRate":0}','{}',1767458165038);
INSERT INTO system_analytics VALUES('cmjyizqml000d13k8orc0a1f4','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":6329,"totalTime":6329,"errors":0,"errorRate":0}','{}',1767458225037);
INSERT INTO system_analytics VALUES('cmjyj4zqj0002tako8mo14qlr','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":476,"totalTime":476,"errors":0,"errorRate":0}','{}',1767458470124);
INSERT INTO system_analytics VALUES('cmjyj6a18000dtakohnrwtw0w','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":7641,"totalTime":7641,"errors":0,"errorRate":0}','{}',1767458530124);
INSERT INTO system_analytics VALUES('cmjyj7kbv000otakowi062jzx','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":7061,"totalTime":7061,"errors":0,"errorRate":0}','{}',1767458590124);
INSERT INTO system_analytics VALUES('cmjyj8umk000xtakofkrlouj1','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":7054,"totalTime":7054,"errors":0,"errorRate":0}','{}',1767458650124);
INSERT INTO system_analytics VALUES('cmjyjcyt90002cfnjy5k6yq7i','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":581,"totalTime":581,"errors":0,"errorRate":0}','{}',1767458842174);
INSERT INTO system_analytics VALUES('cmjyje93x000dcfnjyxm4tv9x','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":6006,"totalTime":6006,"errors":0,"errorRate":0}','{}',1767458902173);
INSERT INTO system_analytics VALUES('cmjyjhuth0002z1ktns24tmvk','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":585,"totalTime":585,"errors":0,"errorRate":0}','{}',1767459070278);
INSERT INTO system_analytics VALUES('cmjyjj546000dz1ktino4q1f9','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":874,"totalTime":874,"errors":0,"errorRate":0}','{}',1767459130278);
INSERT INTO system_analytics VALUES('cmjyjlppj000gz1ktqwvwe2st','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":534,"totalTime":534,"errors":0,"errorRate":0}','{}',1767459250279);
INSERT INTO system_analytics VALUES('cmjyjn007000jz1ktjl3ws55n','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":551,"totalTime":551,"errors":0,"errorRate":0}','{}',1767459310279);
INSERT INTO system_analytics VALUES('cmjyjoaau000mz1kte81oq920','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":541,"totalTime":541,"errors":0,"errorRate":0}','{}',1767459370279);
INSERT INTO system_analytics VALUES('cmjyjquw7000qz1kt3qq6eqk3','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":19498,"totalTime":19498,"errors":0,"errorRate":0}','{}',1767459490280);
INSERT INTO system_analytics VALUES('cmjyjtdh10008ghe0igpzvqp0','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":2,"avgTime":127,"totalTime":254,"errors":0,"errorRate":0}','{}',1767459607669);
INSERT INTO system_analytics VALUES('cmjyjtdh80009ghe0i38gmd7r','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":550,"totalTime":550,"errors":0,"errorRate":0}','{}',1767459607677);
INSERT INTO system_analytics VALUES('cmjyjunrp000kghe0q6dybseq','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":2346,"totalTime":2346,"errors":0,"errorRate":0}','{}',1767459667669);
INSERT INTO system_analytics VALUES('cmjyjvy2d000xghe0v348yx3p','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":7469,"totalTime":7469,"errors":0,"errorRate":0}','{}',1767459727670);
INSERT INTO system_analytics VALUES('cmjyjx8d70014ghe0ixj9wrct','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":44910,"totalTime":44910,"errors":0,"errorRate":0}','{}',1767459787675);
INSERT INTO system_analytics VALUES('cmjyjzsyf001fghe0x0eagj2x','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":56322,"totalTime":56322,"errors":0,"errorRate":0}','{}',1767459907672);
INSERT INTO system_analytics VALUES('cmjykbdmi001ighe0itga019o','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":541,"totalTime":541,"errors":0,"errorRate":0}','{}',1767460447675);
INSERT INTO system_analytics VALUES('cmjykdy7u001rghe0w2pskclj','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":8957,"totalTime":8957,"errors":0,"errorRate":0}','{}',1767460567674);
INSERT INTO system_analytics VALUES('cmjylj3qf0020ghe0lj1r2mhc','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":40711,"totalTime":40711,"errors":0,"errorRate":0}','{}',1767462487720);
INSERT INTO system_analytics VALUES('cmjylqtio002bghe0siad5eqi','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":91868,"totalTime":91868,"errors":0,"errorRate":0}','{}',1767462847728);
INSERT INTO system_analytics VALUES('cmjylx90e002ighe0lats5vo9','PERFORMANCE_METRIC','{"operation":"login_api","count":1,"avgTime":544,"totalTime":544,"errors":0,"errorRate":0}','{}',1767463147742);
INSERT INTO system_analytics VALUES('cmjylztlq002tghe00zwzgc0a','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":103964,"totalTime":103964,"errors":0,"errorRate":0}','{}',1767463267743);
INSERT INTO system_analytics VALUES('cmjym13wi0030ghe05isrjmaz','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":106404,"totalTime":106404,"errors":0,"errorRate":0}','{}',1767463327746);
INSERT INTO system_analytics VALUES('cmjymcol8003bghe0x4livuhz','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":46441,"totalTime":46441,"errors":0,"errorRate":0}','{}',1767463867773);
INSERT INTO system_analytics VALUES('cmjymlte7000ax34ki14atmps','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":12748,"totalTime":12748,"errors":0,"errorRate":0}','{}',1767464293903);
INSERT INTO system_analytics VALUES('cmjymodzl000lx34k8dfytvae','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":62008,"totalTime":62008,"errors":0,"errorRate":0}','{}',1767464413905);
INSERT INTO system_analytics VALUES('cmjymyq40000awmjzguvxr2l3','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":109304,"totalTime":109304,"errors":0,"errorRate":0}','{}',1767464896176);
INSERT INTO system_analytics VALUES('cmjyn88l1000ag52xlwsbyl5c','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":8002,"totalTime":8002,"errors":0,"errorRate":0}','{}',1767465340022);
INSERT INTO system_analytics VALUES('cmjynddsa000lg52xztinxmlv','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":3022,"totalTime":3022,"errors":0,"errorRate":0}','{}',1767465580043);
INSERT INTO system_analytics VALUES('cmjynh8pe000wg52xjzd8me4g','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":1442,"totalTime":1442,"errors":0,"errorRate":0}','{}',1767465760082);
INSERT INTO system_analytics VALUES('cmjynl3mc0017g52x2h6evdc9','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":81164,"totalTime":81164,"errors":0,"errorRate":0}','{}',1767465940116);
INSERT INTO system_analytics VALUES('cmjynno87001ig52xfay6bcgu','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":2413,"totalTime":2413,"errors":0,"errorRate":0}','{}',1767466060136);
INSERT INTO system_analytics VALUES('cmjynrj4g001tg52xu2pklq6o','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":93651,"totalTime":93651,"errors":0,"errorRate":0}','{}',1767466240145);
INSERT INTO system_analytics VALUES('cmjynve0h0024g52xn58zc09e','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":91338,"totalTime":91338,"errors":0,"errorRate":0}','{}',1767466420145);
INSERT INTO system_analytics VALUES('cmjyofyy5002fg52xzm1guiqd','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":2580,"totalTime":2580,"errors":0,"errorRate":0}','{}',1767467380397);
INSERT INTO system_analytics VALUES('cmjypxzuj002qg52x9ophoelk','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":1971,"totalTime":1971,"errors":0,"errorRate":0}','{}',1767469900987);
INSERT INTO system_analytics VALUES('cmjyq351x0031g52xu4qsect9','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":116188,"totalTime":116188,"errors":0,"errorRate":0}','{}',1767470141014);
INSERT INTO system_analytics VALUES('cmjyq6zyt003cg52xhoxajoqu','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":1520,"totalTime":1520,"errors":0,"errorRate":0}','{}',1767470321045);
INSERT INTO system_analytics VALUES('cmjyqauvf003ng52x2meqhoo9','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":79087,"totalTime":79087,"errors":0,"errorRate":0}','{}',1767470501068);
INSERT INTO system_analytics VALUES('cmjyqdfhb003og52xi5zl62qh','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":13,"totalTime":13,"errors":0,"errorRate":0}','{}',1767470621088);
INSERT INTO system_analytics VALUES('cmjyqjv07003zg52xqi70fs5o','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":136756,"totalTime":136756,"errors":0,"errorRate":0}','{}',1767470921143);
INSERT INTO system_analytics VALUES('cmjyqwq2d004ag52xvxug5924','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":68855,"totalTime":68855,"errors":0,"errorRate":0}','{}',1767471521269);
INSERT INTO system_analytics VALUES('cmjyr4fw9004lg52xdspwbt6w','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":51278,"totalTime":51278,"errors":0,"errorRate":0}','{}',1767471881337);
INSERT INTO system_analytics VALUES('cmjyr8asl004wg52xr41p1vw5','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":106416,"totalTime":106416,"errors":0,"errorRate":0}','{}',1767472061349);
INSERT INTO system_analytics VALUES('cmjysc6c60057g52xpr8j3o4h','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":77895,"totalTime":77895,"errors":0,"errorRate":0}','{}',1767473921815);
INSERT INTO system_analytics VALUES('cmjysjw4v005ig52xpa96wo2j','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":139808,"totalTime":139808,"errors":0,"errorRate":0}','{}',1767474281840);
INSERT INTO system_analytics VALUES('cmjytawlt005tg52xae9hrs5j','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":66246,"totalTime":66246,"errors":0,"errorRate":0}','{}',1767475542161);
INSERT INTO system_analytics VALUES('cmjyterhx0064g52xkuyjn1yy','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":63961,"totalTime":63961,"errors":0,"errorRate":0}','{}',1767475722165);
INSERT INTO system_analytics VALUES('cmjyu5rz50068g52xngcnexim','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":167,"totalTime":167,"errors":0,"errorRate":0}','{}',1767476982497);
INSERT INTO system_analytics VALUES('cmjyu9mwb006cg52xebby4vfn','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":17920,"totalTime":17920,"errors":0,"errorRate":0}','{}',1767477162540);
INSERT INTO system_analytics VALUES('cmjyues4o006dg52xe3piaqvx','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":11,"totalTime":11,"errors":0,"errorRate":0}','{}',1767477402600);
INSERT INTO system_analytics VALUES('cmjyuhcq9006og52x1l4keql4','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":51163,"totalTime":51163,"errors":0,"errorRate":0}','{}',1767477522609);
INSERT INTO system_analytics VALUES('cmjz4qjgl006zg52x6inpgx6n','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":8607,"totalTime":8607,"errors":0,"errorRate":0}','{}',1767494747398);
INSERT INTO system_analytics VALUES('cmjz79vj5007ag52xtz1q0wm6','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":1823,"totalTime":1823,"errors":0,"errorRate":0}','{}',1767499008737);
INSERT INTO system_analytics VALUES('cmjz7ivoj007lg52xv98bj5vm','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":98562,"totalTime":98562,"errors":0,"errorRate":0}','{}',1767499428835);
INSERT INTO system_analytics VALUES('cmjz7t65o007wg52x3ztro7qq','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":67097,"totalTime":67097,"errors":0,"errorRate":0}','{}',1767499908972);
INSERT INTO system_analytics VALUES('cmjz7vqrx0087g52xnb5fj9bg','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":831,"totalTime":831,"errors":0,"errorRate":0}','{}',1767500029005);
INSERT INTO system_analytics VALUES('cmjz8b6hs008ig52xdvyfo0dr','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":103527,"totalTime":103527,"errors":0,"errorRate":0}','{}',1767500749216);
INSERT INTO system_analytics VALUES('cmjz8qm8i008tg52xf6qcf0i8','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":90,"totalTime":90,"errors":0,"errorRate":0}','{}',1767501469458);
INSERT INTO system_analytics VALUES('cmjz9zn440094g52xq71m3s6i','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":84782,"totalTime":84782,"errors":0,"errorRate":0}','{}',1767503570116);
INSERT INTO system_analytics VALUES('cmjzyj8eh009fg52x5vqhk5li','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":96644,"totalTime":96644,"errors":0,"errorRate":0}','{}',1767544794954);
INSERT INTO system_analytics VALUES('cmjzys8hi009qg52xb2c8zmyh','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":92309,"totalTime":92309,"errors":0,"errorRate":0}','{}',1767545214966);
INSERT INTO system_analytics VALUES('cmjzz3t67009zg52x4hylmpx8','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":51081,"totalTime":51081,"errors":0,"errorRate":0}','{}',1767545754992);
INSERT INTO system_analytics VALUES('cmjzzbyzo000afj3on09qd732','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":130499,"totalTime":130499,"errors":0,"errorRate":0}','{}',1767546135781);
INSERT INTO system_analytics VALUES('cmk00hzln000dd840hn5otl16','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":164075,"totalTime":164075,"errors":0,"errorRate":0}','{}',1767548096124);
INSERT INTO system_analytics VALUES('cmk00zzwx000od840t68ab4rf','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":2019,"totalTime":2019,"errors":0,"errorRate":0}','{}',1767548936338);
INSERT INTO system_analytics VALUES('cmk012kiz000zd840mpit83yh','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":5444,"totalTime":5444,"errors":0,"errorRate":0}','{}',1767549056363);
INSERT INTO system_analytics VALUES('cmk017ppp001ad840tmrn855z','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":69778,"totalTime":69778,"errors":0,"errorRate":0}','{}',1767549296365);
INSERT INTO system_analytics VALUES('cmk01bkmp001ld840n8kjb5ve','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":21623,"totalTime":21623,"errors":0,"errorRate":0}','{}',1767549476401);
INSERT INTO system_analytics VALUES('cmk01ofoo001pd840y0qimzaa','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":182,"totalTime":182,"errors":0,"errorRate":0}','{}',1767550076521);
INSERT INTO system_analytics VALUES('cmk01r0aw001td8407nce0uwi','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":156,"totalTime":156,"errors":0,"errorRate":0}','{}',1767550196552);
INSERT INTO system_analytics VALUES('cmk01tkwu001xd840yc72avn0','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":180,"totalTime":180,"errors":0,"errorRate":0}','{}',1767550316575);
INSERT INTO system_analytics VALUES('cmk01uv7n0021d8406g1ik0pv','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":20921,"totalTime":20921,"errors":0,"errorRate":0}','{}',1767550376579);
INSERT INTO system_analytics VALUES('cmk022l160025d8408gvexgsx','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":178,"totalTime":178,"errors":0,"errorRate":0}','{}',1767550736634);
INSERT INTO system_analytics VALUES('cmk02fg4i0029d840ecnzpehl','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":182,"totalTime":182,"errors":0,"errorRate":0}','{}',1767551336802);
INSERT INTO system_analytics VALUES('cmk032lo8002dd840o6ya8ugj','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":166,"totalTime":166,"errors":0,"errorRate":0}','{}',1767552417080);
INSERT INTO system_analytics VALUES('cmk037qxc002hd840zdbqzbzt','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":168,"totalTime":168,"errors":0,"errorRate":0}','{}',1767552657169);
INSERT INTO system_analytics VALUES('cmk03abiz002ld840zwgbn0pv','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":164,"totalTime":164,"errors":0,"errorRate":0}','{}',1767552777180);
INSERT INTO system_analytics VALUES('cmk03e6gv002pd840ucbklyb3','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":184,"totalTime":184,"errors":0,"errorRate":0}','{}',1767552957247);
INSERT INTO system_analytics VALUES('cmk03i1du002td840l2bkizsb','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":175,"totalTime":175,"errors":0,"errorRate":0}','{}',1767553137283);
INSERT INTO system_analytics VALUES('cmk0430tb002ud840d53hnus4','UNHANDLED_ERROR','{"message":"NBA service failed: Traceback (most recent call last):\n  File \"/var/www/html/eventheodds/nba_data_service.py\", line 14, in <module>\n    import pandas as pd\n  File \"/var/www/html/eventheodds/nba_api_env/lib/python3.13/site-packages/pandas/__init__.py\", line 19, in <module>\n    raise ImportError(\nImportError: Unable to import required dependencies:\nnumpy: Error importing numpy: you should not try to import numpy from\n        its source directory; please exit the numpy source tree, and relaunch\n        your python interpreter from there.\n","stack":"Error: NBA service failed: Traceback (most recent call last):\n  File \"/var/www/html/eventheodds/nba_data_service.py\", line 14, in <module>\n    import pandas as pd\n  File \"/var/www/html/eventheodds/nba_api_env/lib/python3.13/site-packages/pandas/__init__.py\", line 19, in <module>\n    raise ImportError(\nImportError: Unable to import required dependencies:\nnumpy: Error importing numpy: you should not try to import numpy from\n        its source directory; please exit the numpy source tree, and relaunch\n        your python interpreter from there.\n\n    at ChildProcess.<anonymous> (/var/www/html/eventheodds/.next/server/chunks/[root-of-the-server]__5b0fe38b._.js:1:2733)\n    at ChildProcess.emit (node:events:524:28)\n    at maybeClose (node:internal/child_process:1104:16)\n    at ChildProcess._handle.onexit (node:internal/child_process:304:5)\n    at Process.callbackTrampoline (node:internal/async_hooks:130:17)","context":{"requestId":"req_1767554116317_80yc3l1m8y8","timestamp":"2026-01-04T19:15:16.317Z","stackTrace":"Error: NBA service failed: Traceback (most recent call last):\n  File \"/var/www/html/eventheodds/nba_data_service.py\", line 14, in <module>\n    import pandas as pd\n  File \"/var/www/html/eventheodds/nba_api_env/lib/python3.13/site-packages/pandas/__init__.py\", line 19, in <module>\n    raise ImportError(\nImportError: Unable to import required dependencies:\nnumpy: Error importing numpy: you should not try to import numpy from\n        its source directory; please exit the numpy source tree, and relaunch\n        your python interpreter from there.\n\n    at ChildProcess.<anonymous> (/var/www/html/eventheodds/.next/server/chunks/[root-of-the-server]__5b0fe38b._.js:1:2733)\n    at ChildProcess.emit (node:events:524:28)\n    at maybeClose (node:internal/child_process:1104:16)\n    at ChildProcess._handle.onexit (node:internal/child_process:304:5)\n    at Process.callbackTrampoline (node:internal/async_hooks:130:17)","url":"http://localhost:3000/api/nba/games?limit=1","method":"GET","userAgent":"axios/1.13.2"}}','{}',1767554116319);
INSERT INTO system_analytics VALUES('cmk043wn7002vd840ljsc9ugv','PERFORMANCE_METRIC','{"operation":"health_check","count":1,"avgTime":4,"totalTime":4,"errors":0,"errorRate":0}','{}',1767554157571);
INSERT INTO system_analytics VALUES('cmk04akwd002wd8402va4zt55','UNHANDLED_ERROR','{"message":"NBA service failed: Traceback (most recent call last):\n  File \"/var/www/html/eventheodds/nba_data_service.py\", line 14, in <module>\n    import pandas as pd\n  File \"/var/www/html/eventheodds/nba_api_env/lib/python3.13/site-packages/pandas/__init__.py\", line 19, in <module>\n    raise ImportError(\nImportError: Unable to import required dependencies:\nnumpy: Error importing numpy: you should not try to import numpy from\n        its source directory; please exit the numpy source tree, and relaunch\n        your python interpreter from there.\n","stack":"Error: NBA service failed: Traceback (most recent call last):\n  File \"/var/www/html/eventheodds/nba_data_service.py\", line 14, in <module>\n    import pandas as pd\n  File \"/var/www/html/eventheodds/nba_api_env/lib/python3.13/site-packages/pandas/__init__.py\", line 19, in <module>\n    raise ImportError(\nImportError: Unable to import required dependencies:\nnumpy: Error importing numpy: you should not try to import numpy from\n        its source directory; please exit the numpy source tree, and relaunch\n        your python interpreter from there.\n\n    at ChildProcess.<anonymous> (/var/www/html/eventheodds/.next/server/chunks/[root-of-the-server]__5b0fe38b._.js:1:2733)\n    at ChildProcess.emit (node:events:524:28)\n    at maybeClose (node:internal/child_process:1104:16)\n    at ChildProcess._handle.onexit (node:internal/child_process:304:5)\n    at Process.callbackTrampoline (node:internal/async_hooks:130:17)","context":{"requestId":"req_1767554468939_47eatykvv72","timestamp":"2026-01-04T19:21:08.939Z","stackTrace":"Error: NBA service failed: Traceback (most recent call last):\n  File \"/var/www/html/eventheodds/nba_data_service.py\", line 14, in <module>\n    import pandas as pd\n  File \"/var/www/html/eventheodds/nba_api_env/lib/python3.13/site-packages/pandas/__init__.py\", line 19, in <module>\n    raise ImportError(\nImportError: Unable to import required dependencies:\nnumpy: Error importing numpy: you should not try to import numpy from\n        its source directory; please exit the numpy source tree, and relaunch\n        your python interpreter from there.\n\n    at ChildProcess.<anonymous> (/var/www/html/eventheodds/.next/server/chunks/[root-of-the-server]__5b0fe38b._.js:1:2733)\n    at ChildProcess.emit (node:events:524:28)\n    at maybeClose (node:internal/child_process:1104:16)\n    at ChildProcess._handle.onexit (node:internal/child_process:304:5)\n    at Process.callbackTrampoline (node:internal/async_hooks:130:17)","url":"http://localhost:3000/api/nba/games?limit=1","method":"GET","userAgent":"curl/8.5.0"}}','{}',1767554468941);
INSERT INTO system_analytics VALUES('cmk05ivgb0008r1ewjf5n55lt','PERFORMANCE_METRIC','{"operation":"POST /api/chat","count":1,"avgTime":24132,"totalTime":24132,"errors":0,"errorRate":0}','{}',1767556535483);
INSERT INTO system_analytics VALUES('cmk05mqcu000cr1ewh816m6hx','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":178,"totalTime":178,"errors":0,"errorRate":0}','{}',1767556715502);
INSERT INTO system_analytics VALUES('cmk06kk8j0000kyjab8om3uy0','PERFORMANCE_METRIC','{"operation":"health_check","count":1,"avgTime":4,"totalTime":4,"errors":0,"errorRate":0}','{}',1767558293875);
INSERT INTO system_analytics VALUES('cmk06luk10001kyjag12d7gfc','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":30161,"totalTime":30161,"errors":0,"errorRate":0}','{}',1767558353905);
INSERT INTO system_analytics VALUES('cmk06nybg0000145n7hlznkwy','PERFORMANCE_METRIC','{"operation":"POST /api/strategies","count":1,"avgTime":26503,"totalTime":26503,"errors":0,"errorRate":0}','{}',1767558452092);
INSERT INTO system_analytics VALUES('cmk07iew00000rwpkgpco136o','PERFORMANCE_METRIC','{"operation":"health_check","count":1,"avgTime":10,"totalTime":10,"errors":0,"errorRate":0}','{}',1767559873248);
INSERT INTO system_analytics VALUES('cmk07tv5v0000plr4xuz6oo60','PERFORMANCE_METRIC','{"operation":"health_check","count":1,"avgTime":10,"totalTime":10,"errors":0,"errorRate":0}','{}',1767560407556);
INSERT INTO system_analytics VALUES('cmk081jui0000118w9cnxoo1q','PERFORMANCE_METRIC','{"operation":"health_check","count":1,"avgTime":11,"totalTime":11,"errors":0,"errorRate":0}','{}',1767560766139);
CREATE TABLE IF NOT EXISTS "feedback" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "userId" TEXT NOT NULL,
    "feedbackType" TEXT NOT NULL,
    "subject" TEXT NOT NULL,
    "message" TEXT NOT NULL,
    "priority" TEXT NOT NULL DEFAULT 'MEDIUM',
    "status" TEXT NOT NULL DEFAULT 'OPEN',
    "response" TEXT,
    "respondedAt" DATETIME,
    "respondedBy" TEXT,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "updatedAt" DATETIME NOT NULL,
    CONSTRAINT "feedback_userId_fkey" FOREIGN KEY ("userId") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "notifications" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "userId" TEXT NOT NULL,
    "type" TEXT NOT NULL,
    "title" TEXT NOT NULL,
    "message" TEXT NOT NULL,
    "data" TEXT,
    "read" BOOLEAN NOT NULL DEFAULT false,
    "readAt" DATETIME,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "notifications_userId_fkey" FOREIGN KEY ("userId") REFERENCES "users" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "nba_players" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "fullName" TEXT NOT NULL,
    "firstName" TEXT NOT NULL,
    "lastName" TEXT NOT NULL,
    "isActive" BOOLEAN NOT NULL DEFAULT true,
    "lastUpdated" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE IF NOT EXISTS "nba_teams" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "fullName" TEXT NOT NULL,
    "abbreviation" TEXT NOT NULL,
    "nickname" TEXT NOT NULL,
    "city" TEXT NOT NULL,
    "state" TEXT,
    "yearFounded" INTEGER,
    "lastUpdated" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE IF NOT EXISTS "nba_games" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "gameDate" DATETIME NOT NULL,
    "homeTeamId" TEXT NOT NULL,
    "homeScore" INTEGER,
    "awayTeamId" TEXT NOT NULL,
    "awayScore" INTEGER,
    "season" TEXT NOT NULL,
    "seasonType" TEXT NOT NULL,
    "status" TEXT NOT NULL DEFAULT 'scheduled',
    "gameClock" TEXT,
    "period" INTEGER NOT NULL DEFAULT 0,
    "lastUpdated" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "nba_games_homeTeamId_fkey" FOREIGN KEY ("homeTeamId") REFERENCES "nba_teams" ("id") ON DELETE RESTRICT ON UPDATE CASCADE,
    CONSTRAINT "nba_games_awayTeamId_fkey" FOREIGN KEY ("awayTeamId") REFERENCES "nba_teams" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "nba_player_stats" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "playerId" TEXT NOT NULL,
    "gameId" TEXT,
    "season" TEXT NOT NULL,
    "team" TEXT NOT NULL,
    "gamesPlayed" INTEGER NOT NULL DEFAULT 0,
    "points" REAL NOT NULL DEFAULT 0,
    "rebounds" REAL NOT NULL DEFAULT 0,
    "assists" REAL NOT NULL DEFAULT 0,
    "steals" REAL NOT NULL DEFAULT 0,
    "blocks" REAL NOT NULL DEFAULT 0,
    "turnovers" REAL NOT NULL DEFAULT 0,
    "minutes" REAL NOT NULL DEFAULT 0,
    "fgMade" REAL NOT NULL DEFAULT 0,
    "fgAttempted" REAL NOT NULL DEFAULT 0,
    "fgPercent" REAL,
    "threeMade" REAL NOT NULL DEFAULT 0,
    "threeAttempted" REAL NOT NULL DEFAULT 0,
    "threePercent" REAL,
    "ftMade" REAL NOT NULL DEFAULT 0,
    "ftAttempted" REAL NOT NULL DEFAULT 0,
    "ftPercent" REAL,
    "lastUpdated" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "nba_player_stats_playerId_fkey" FOREIGN KEY ("playerId") REFERENCES "nba_players" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
    CONSTRAINT "nba_player_stats_gameId_fkey" FOREIGN KEY ("gameId") REFERENCES "nba_games" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "nba_team_stats" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "teamId" TEXT NOT NULL,
    "season" TEXT NOT NULL,
    "gamesPlayed" INTEGER NOT NULL DEFAULT 0,
    "wins" INTEGER NOT NULL DEFAULT 0,
    "losses" INTEGER NOT NULL DEFAULT 0,
    "pointsFor" REAL NOT NULL DEFAULT 0,
    "pointsAgainst" REAL NOT NULL DEFAULT 0,
    "lastUpdated" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    CONSTRAINT "nba_team_stats_teamId_fkey" FOREIGN KEY ("teamId") REFERENCES "nba_teams" ("id") ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE IF NOT EXISTS "nba_cache_entries" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "cacheKey" TEXT NOT NULL,
    "endpoint" TEXT NOT NULL,
    "params" TEXT NOT NULL DEFAULT '{}',
    "data" TEXT NOT NULL,
    "lastFetched" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "expiresAt" DATETIME,
    "size" INTEGER NOT NULL DEFAULT 0,
    "hitCount" INTEGER NOT NULL DEFAULT 0
);
CREATE TABLE IF NOT EXISTS "backtest_results" (
    "id" TEXT NOT NULL PRIMARY KEY,
    "jobId" TEXT,
    "userId" TEXT,
    "market" TEXT NOT NULL,
    "strategyName" TEXT NOT NULL,
    "strategyCode" TEXT,
    "parameters" TEXT NOT NULL,
    "timeframe" TEXT,
    "timePeriod" TEXT,
    "results" TEXT NOT NULL,
    "trades" TEXT NOT NULL,
    "performance" TEXT NOT NULL,
    "riskMetrics" TEXT NOT NULL,
    "chartData" TEXT,
    "status" TEXT NOT NULL DEFAULT 'COMPLETED',
    "executionTime" INTEGER,
    "errorMessage" TEXT,
    "createdAt" DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
    "startedAt" DATETIME,
    "completedAt" DATETIME,
    "isPublic" BOOLEAN NOT NULL DEFAULT false
);
INSERT INTO backtest_results VALUES('cmjyjqode000nz1ktmfsa1j33',NULL,'test123','nba','Bet on teams that lost their last 2 games if their point dif…',NULL,'{"prompt":"Bet on teams that lost their last 2 games if their point differential was under -5 in the 2024 NBA season.","domain":"sports","sportFilter":"nba","rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5}}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on teams that lost their last 2 games if their point dif…","total_trades":110,"wins":48,"win_rate":44,"total_profit":-11.8498,"results":{"total_trades":110,"wins":48,"win_rate":44,"total_profit":-11.8498,"avg_return":-0.1077,"roi_percent":-10.77,"profit_factor":0.81,"sharpe_ratio":-0.1,"max_drawdown":19.99,"max_drawdown_pct":636.09,"ats_record":null},"all_trades":[{"id":"sports-trade-0","label":"Dallas Mavericks vs Toronto Raptors","date":"2025-10-26","outcome":"win","profit":1,"context":{"spread":0,"margin":10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-1","label":"Indiana Pacers vs Golden State Warriors","date":"2025-11-01","outcome":"win","profit":1,"context":{"spread":0,"margin":5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":109,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-2","label":"Washington Wizards vs Orlando Magic","date":"2025-11-01","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-31,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-3","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":105,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-4","label":"Charlotte Hornets vs Utah Jazz","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":23,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-5","label":"Toronto Raptors vs Memphis Grizzlies","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":117,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-6","label":"Brooklyn Nets vs Minnesota Timberwolves","date":"2025-11-03","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-7","label":"Atlanta Hawks vs Orlando Magic","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-8","label":"New Orleans Pelicans vs Charlotte Hornets","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":4,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":116,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-9","label":"Boston Celtics vs Washington Wizards","date":"2025-11-05","outcome":"win","profit":0.1431,"context":{"spread":-12.5,"margin":29,"odds":"-699","homeOdds":"-699","awayOdds":"+500","homeScore":136,"awayScore":107,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-10","label":"Memphis Grizzlies vs Houston Rockets","date":"2025-11-05","outcome":"loss","profit":-1,"context":{"spread":8,"margin":-15,"odds":"+260","homeOdds":"+260","awayOdds":"-334","homeScore":109,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-11","label":"Orlando Magic vs Boston Celtics","date":"2025-11-07","outcome":"win","profit":0.6289,"context":{"spread":-4.5,"margin":13,"odds":"-159","homeOdds":"-159","awayOdds":"+135","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-12","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":13.5,"margin":-33,"odds":"+550","homeOdds":"+550","awayOdds":"-769","homeScore":115,"awayScore":148,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-13","label":"Brooklyn Nets vs Detroit Pistons","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-18,"odds":"+370","homeOdds":"+370","awayOdds":"-476","homeScore":107,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-14","label":"Memphis Grizzlies vs Dallas Mavericks","date":"2025-11-07","outcome":"win","profit":0.5587,"context":{"spread":-4.5,"margin":14,"odds":"-179","homeOdds":"-179","awayOdds":"+150","homeScore":118,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-15","label":"Minnesota Timberwolves vs Utah Jazz","date":"2025-11-07","outcome":"win","profit":0.1479,"context":{"spread":-12.5,"margin":40,"odds":"-676","homeOdds":"-676","awayOdds":"+490","homeScore":137,"awayScore":97,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-16","label":"Washington Wizards vs Dallas Mavericks","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-6,"odds":"+152","homeOdds":"+152","awayOdds":"-180","homeScore":105,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-17","label":"LA Clippers vs Phoenix Suns","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-185","homeOdds":"-185","awayOdds":"+155","homeScore":103,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-18","label":"LA Clippers vs Atlanta Hawks","date":"2025-11-10","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-3,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":102,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-19","label":"Brooklyn Nets vs Toronto Raptors","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-10,"odds":"+350","homeOdds":"+350","awayOdds":"-474","homeScore":109,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-20","label":"Utah Jazz vs Indiana Pacers","date":"2025-11-11","outcome":"win","profit":1.18,"context":{"spread":2.5,"margin":24,"odds":"+118","homeOdds":"+118","awayOdds":"-139","homeScore":152,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-21","label":"Sacramento Kings vs Denver Nuggets","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-14,"odds":"+280","homeOdds":"+280","awayOdds":"-370","homeScore":108,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-22","label":"Dallas Mavericks vs Phoenix Suns","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":2,"margin":-9,"odds":"+110","homeOdds":"+110","awayOdds":"-130","homeScore":114,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-23","label":"Sacramento Kings vs Atlanta Hawks","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-33,"odds":"+148","homeOdds":"+148","awayOdds":"-175","homeScore":100,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-24","label":"LA Clippers vs Denver Nuggets","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-14,"odds":"+156","homeOdds":"+156","awayOdds":"-186","homeScore":116,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-25","label":"Dallas Mavericks vs LA Clippers","date":"2025-11-14","outcome":"loss","profit":-1,"context":{"spread":3,"margin":-6,"odds":"+130","homeOdds":"+130","awayOdds":"-154","homeScore":127,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-26","label":"Indiana Pacers vs Toronto Raptors","date":"2025-11-15","outcome":"loss","profit":-1,"context":{"spread":5.5,"margin":-18,"odds":"+190","homeOdds":"+190","awayOdds":"-238","homeScore":111,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-27","label":"San Antonio Spurs vs Sacramento Kings","date":"2025-11-16","outcome":"win","profit":0.4202,"context":{"spread":-6.5,"margin":13,"odds":"-238","homeOdds":"-238","awayOdds":"+195","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-28","label":"Washington Wizards vs Brooklyn Nets","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-137","homeOdds":"-137","awayOdds":"+117","homeScore":106,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-29","label":"New Orleans Pelicans vs Golden State Warriors","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":11,"margin":-18,"odds":"+400","homeOdds":"+400","awayOdds":"-521","homeScore":106,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-30","label":"Dallas Mavericks vs Portland Trail Blazers","date":"2025-11-16","outcome":"win","profit":1.34,"context":{"spread":3,"margin":5,"odds":"+134","homeOdds":"+134","awayOdds":"-158","homeScore":138,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-31","label":"New Orleans Pelicans vs Oklahoma City Thunder","date":"2025-11-17","outcome":"loss","profit":-1,"context":{"spread":18.5,"margin":-17,"odds":"+900","homeOdds":"+900","awayOdds":"-1667","homeScore":109,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-32","label":"Brooklyn Nets vs Boston Celtics","date":"2025-11-18","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-14,"odds":"+425","homeOdds":"+425","awayOdds":"-575","homeScore":99,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-33","label":"Indiana Pacers vs Charlotte Hornets","date":"2025-11-19","outcome":"win","profit":1.15,"context":{"spread":2,"margin":9,"odds":"+115","homeOdds":"+115","awayOdds":"-137","homeScore":127,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-34","label":"New Orleans Pelicans vs Denver Nuggets","date":"2025-11-19","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-7,"odds":"+400","homeOdds":"+400","awayOdds":"-526","homeScore":118,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-35","label":"New Orleans Pelicans vs Atlanta Hawks","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":9.5,"margin":-17,"odds":"+350","homeOdds":"+350","awayOdds":"-450","homeScore":98,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-36","label":"Chicago Bulls vs Washington Wizards","date":"2025-11-22","outcome":"win","profit":0.1541,"context":{"spread":-12.5,"margin":1,"odds":"-649","homeOdds":"-649","awayOdds":"+480","homeScore":121,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-37","label":"Milwaukee Bucks vs Detroit Pistons","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-13,"odds":"+280","homeOdds":"+280","awayOdds":"-345","homeScore":116,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-38","label":"Brooklyn Nets vs New York Knicks","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":12.5,"margin":-13,"odds":"+500","homeOdds":"+500","awayOdds":"-769","homeScore":100,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-39","label":"Milwaukee Bucks vs Portland Trail Blazers","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":-1,"margin":-12,"odds":"-112","homeOdds":"-112","awayOdds":"-104","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-40","label":"New Orleans Pelicans vs Chicago Bulls","date":"2025-11-24","outcome":"win","profit":1.65,"context":{"spread":4.5,"margin":13,"odds":"+165","homeOdds":"+165","awayOdds":"-200","homeScore":143,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-41","label":"Sacramento Kings vs Minnesota Timberwolves","date":"2025-11-24","outcome":"win","profit":3.75,"context":{"spread":10.5,"margin":5,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":117,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-42","label":"Washington Wizards vs Atlanta Hawks","date":"2025-11-25","outcome":"win","profit":3.6,"context":{"spread":10.5,"margin":19,"odds":"+360","homeOdds":"+360","awayOdds":"-500","homeScore":132,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-43","label":"Philadelphia 76ers vs Orlando Magic","date":"2025-11-25","outcome":"loss","profit":-1,"context":{"spread":4,"margin":-41,"odds":"+160","homeOdds":"+160","awayOdds":"-192","homeScore":103,"awayScore":144,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-44","label":"Charlotte Hornets vs New York Knicks","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-28,"odds":"+222","homeOdds":"+222","awayOdds":"-278","homeScore":101,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-45","label":"Portland Trail Blazers vs San Antonio Spurs","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":-1.5,"margin":-13,"odds":"-115","homeOdds":"-115","awayOdds":"-105","homeScore":102,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-46","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":7.5,"margin":-12,"odds":"+215","homeOdds":"+215","awayOdds":"-267","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-47","label":"Charlotte Hornets vs Chicago Bulls","date":"2025-11-28","outcome":"win","profit":1.18,"context":{"spread":3,"margin":7,"odds":"+118","homeOdds":"+118","awayOdds":"-138","homeScore":123,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-48","label":"Denver Nuggets vs San Antonio Spurs","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-7,"margin":-3,"odds":"-286","homeOdds":"-286","awayOdds":"+230","homeScore":136,"awayScore":139,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-49","label":"Utah Jazz vs Sacramento Kings","date":"2025-11-28","outcome":"win","profit":0.7042,"context":{"spread":-2.5,"margin":9,"odds":"-142","homeOdds":"-142","awayOdds":"+120","homeScore":128,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-50","label":"LA Clippers vs Memphis Grizzlies","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-6.5,"margin":-5,"odds":"-270","homeOdds":"-270","awayOdds":"+220","homeScore":107,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-51","label":"Milwaukee Bucks vs Brooklyn Nets","date":"2025-11-29","outcome":"win","profit":0.1669,"context":{"spread":-11.5,"margin":17,"odds":"-599","homeOdds":"-599","awayOdds":"+425","homeScore":116,"awayScore":99,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-52","label":"LA Clippers vs Dallas Mavericks","date":"2025-11-29","outcome":"loss","profit":-1,"context":{"spread":-9.5,"margin":-4,"odds":"-385","homeOdds":"-385","awayOdds":"+300","homeScore":110,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-53","label":"Philadelphia 76ers vs Atlanta Hawks","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-8,"odds":"-144","homeOdds":"-144","awayOdds":"+122","homeScore":134,"awayScore":142,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-54","label":"Portland Trail Blazers vs Oklahoma City Thunder","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-8,"odds":"+450","homeOdds":"+450","awayOdds":"-625","homeScore":115,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-55","label":"Brooklyn Nets vs Charlotte Hornets","date":"2025-12-01","outcome":"win","profit":1.68,"context":{"spread":4.5,"margin":13,"odds":"+168","homeOdds":"+168","awayOdds":"-200","homeScore":116,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-56","label":"Denver Nuggets vs Dallas Mavericks","date":"2025-12-01","outcome":"loss","profit":-1,"context":{"spread":-11.5,"margin":-10,"odds":"-521","homeOdds":"-521","awayOdds":"+400","homeScore":121,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-57","label":"Philadelphia 76ers vs Washington Wizards","date":"2025-12-02","outcome":"win","profit":0.125,"context":{"spread":-13.5,"margin":19,"odds":"-800","homeOdds":"-800","awayOdds":"+550","homeScore":121,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-58","label":"New Orleans Pelicans vs Minnesota Timberwolves","date":"2025-12-04","outcome":"loss","profit":-1,"context":{"spread":12,"margin":-9,"odds":"+450","homeOdds":"+450","awayOdds":"-599","homeScore":116,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-59","label":"Cleveland Cavaliers vs San Antonio Spurs","date":"2025-12-05","outcome":"win","profit":0.5,"context":{"spread":-5,"margin":13,"odds":"-200","homeOdds":"-200","awayOdds":"+165","homeScore":130,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-60","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":3.5,"margin":-8,"odds":"+130","homeOdds":"+130","awayOdds":"-155","homeScore":113,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-61","label":"Chicago Bulls vs Golden State Warriors","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-32,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":91,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-62","label":"Indiana Pacers vs Sacramento Kings","date":"2025-12-08","outcome":"win","profit":0.5882,"context":{"spread":-3.5,"margin":11,"odds":"-170","homeOdds":"-170","awayOdds":"+140","homeScore":116,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-63","label":"New Orleans Pelicans vs San Antonio Spurs","date":"2025-12-08","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-3,"odds":"+300","homeOdds":"+300","awayOdds":"-400","homeScore":132,"awayScore":135,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-64","label":"Toronto Raptors vs New York Knicks","date":"2025-12-09","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-16,"odds":"+200","homeOdds":"+200","awayOdds":"-250","homeScore":101,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-65","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2025-12-11","outcome":"win","profit":1.43,"context":{"spread":4,"margin":23,"odds":"+143","homeOdds":"+143","awayOdds":"-170","homeScore":143,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-66","label":"Sacramento Kings vs Denver Nuggets","date":"2025-12-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-31,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":105,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-67","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-12-12","outcome":"loss","profit":-1,"context":{"spread":16,"margin":-4,"odds":"+700","homeOdds":"+700","awayOdds":"-1111","homeScore":126,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-68","label":"Atlanta Hawks vs Philadelphia 76ers","date":"2025-12-14","outcome":"win","profit":0.5556,"context":{"spread":-4.5,"margin":3,"odds":"-180","homeOdds":"-180","awayOdds":"+145","homeScore":120,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-69","label":"Portland Trail Blazers vs Golden State Warriors","date":"2025-12-14","outcome":"win","profit":1.7,"context":{"spread":5.5,"margin":5,"odds":"+170","homeOdds":"+170","awayOdds":"-210","homeScore":136,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-70","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-10,"odds":"-190","homeOdds":"-190","awayOdds":"+154","homeScore":104,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-71","label":"Phoenix Suns vs Los Angeles Lakers","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-72","label":"Denver Nuggets vs Houston Rockets","date":"2025-12-15","outcome":"win","profit":0.9174,"context":{"spread":-1,"margin":3,"odds":"-109","homeOdds":"-109","awayOdds":"-108","homeScore":128,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-73","label":"LA Clippers vs Memphis Grizzlies","date":"2025-12-15","outcome":"loss","profit":-1,"context":{"spread":-5.5,"margin":-18,"odds":"-220","homeOdds":"-220","awayOdds":"+180","homeScore":103,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-74","label":"Chicago Bulls vs Cleveland Cavaliers","date":"2025-12-17","outcome":"win","profit":1.88,"context":{"spread":5.5,"margin":16,"odds":"+188","homeOdds":"+188","awayOdds":"-220","homeScore":127,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-75","label":"Charlotte Hornets vs Atlanta Hawks","date":"2025-12-18","outcome":"win","profit":1.5,"context":{"spread":4.5,"margin":7,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":133,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-76","label":"Phoenix Suns vs Golden State Warriors","date":"2025-12-18","outcome":"win","profit":1.1,"context":{"spread":1.5,"margin":1,"odds":"+110","homeOdds":"+110","awayOdds":"-135","homeScore":99,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-77","label":"Cleveland Cavaliers vs Chicago Bulls","date":"2025-12-19","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-169","homeOdds":"-169","awayOdds":"+140","homeScore":125,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-78","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"-123","homeScore":96,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-79","label":"Golden State Warriors vs Phoenix Suns","date":"2025-12-20","outcome":"win","profit":0.4,"context":{"spread":-6.5,"margin":3,"odds":"-250","homeOdds":"-250","awayOdds":"+200","homeScore":119,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-80","label":"Sacramento Kings vs Portland Trail Blazers","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-5,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":93,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-81","label":"LA Clippers vs Los Angeles Lakers","date":"2025-12-20","outcome":"win","profit":1,"context":{"spread":1.5,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":103,"awayScore":88,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-82","label":"Washington Wizards vs San Antonio Spurs","date":"2025-12-21","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-11,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-83","label":"Sacramento Kings vs Houston Rockets","date":"2025-12-21","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-84","label":"Cleveland Cavaliers vs Charlotte Hornets","date":"2025-12-22","outcome":"win","profit":1,"context":{"spread":0,"margin":7,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-85","label":"Atlanta Hawks vs Chicago Bulls","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":123,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-86","label":"Indiana Pacers vs Milwaukee Bucks","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-17,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-87","label":"Miami Heat vs Toronto Raptors","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-21,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":91,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-88","label":"Utah Jazz vs Memphis Grizzlies","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-9,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":128,"awayScore":137,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-89","label":"Los Angeles Lakers vs Houston Rockets","date":"2025-12-25","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-135","homeOdds":"-135","awayOdds":"+115","homeScore":96,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-90","label":"Atlanta Hawks vs Miami Heat","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":111,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-91","label":"Washington Wizards vs Toronto Raptors","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":138,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-92","label":"Indiana Pacers vs Boston Celtics","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-18,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":140,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-93","label":"Memphis Grizzlies vs Milwaukee Bucks","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-94","label":"Utah Jazz vs Detroit Pistons","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":131,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-95","label":"Portland Trail Blazers vs LA Clippers","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":103,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-96","label":"Orlando Magic vs Denver Nuggets","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-97","label":"Atlanta Hawks vs New York Knicks","date":"2025-12-27","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-98","label":"Miami Heat vs Indiana Pacers","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":26,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":142,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-99","label":"Toronto Raptors vs Golden State Warriors","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":14,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":141,"awayScore":127,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-100","label":"Portland Trail Blazers vs Boston Celtics","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":6,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":108,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-101","label":"Los Angeles Lakers vs Sacramento Kings","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":101,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-102","label":"New Orleans Pelicans vs New York Knicks","date":"2025-12-29","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-103","label":"Atlanta Hawks vs Minnesota Timberwolves","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-104","label":"Indiana Pacers vs Orlando Magic","date":"2025-12-31","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":110,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-105","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-106","label":"San Antonio Spurs vs New York Knicks","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-107","label":"Indiana Pacers vs San Antonio Spurs","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-108","label":"Milwaukee Bucks vs Charlotte Hornets","date":"2026-01-02","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-109","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}}],"detailed_statistics":{"notes":["Evaluated 512 games from BallDontLie API","Bounce after 2+ losses: 110 games","ATS Record: 0-74 (0.0% cover rate)"],"rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5},"datasetSize":512,"sportFilter":"nba"}}','[{"id":"sports-trade-0","label":"Dallas Mavericks vs Toronto Raptors","date":"2025-10-26","outcome":"win","profit":1,"context":{"spread":0,"margin":10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-1","label":"Indiana Pacers vs Golden State Warriors","date":"2025-11-01","outcome":"win","profit":1,"context":{"spread":0,"margin":5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":109,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-2","label":"Washington Wizards vs Orlando Magic","date":"2025-11-01","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-31,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-3","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":105,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-4","label":"Charlotte Hornets vs Utah Jazz","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":23,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-5","label":"Toronto Raptors vs Memphis Grizzlies","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":117,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-6","label":"Brooklyn Nets vs Minnesota Timberwolves","date":"2025-11-03","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-7","label":"Atlanta Hawks vs Orlando Magic","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-8","label":"New Orleans Pelicans vs Charlotte Hornets","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":4,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":116,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-9","label":"Boston Celtics vs Washington Wizards","date":"2025-11-05","outcome":"win","profit":0.1431,"context":{"spread":-12.5,"margin":29,"odds":"-699","homeOdds":"-699","awayOdds":"+500","homeScore":136,"awayScore":107,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-10","label":"Memphis Grizzlies vs Houston Rockets","date":"2025-11-05","outcome":"loss","profit":-1,"context":{"spread":8,"margin":-15,"odds":"+260","homeOdds":"+260","awayOdds":"-334","homeScore":109,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-11","label":"Orlando Magic vs Boston Celtics","date":"2025-11-07","outcome":"win","profit":0.6289,"context":{"spread":-4.5,"margin":13,"odds":"-159","homeOdds":"-159","awayOdds":"+135","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-12","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":13.5,"margin":-33,"odds":"+550","homeOdds":"+550","awayOdds":"-769","homeScore":115,"awayScore":148,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-13","label":"Brooklyn Nets vs Detroit Pistons","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-18,"odds":"+370","homeOdds":"+370","awayOdds":"-476","homeScore":107,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-14","label":"Memphis Grizzlies vs Dallas Mavericks","date":"2025-11-07","outcome":"win","profit":0.5587,"context":{"spread":-4.5,"margin":14,"odds":"-179","homeOdds":"-179","awayOdds":"+150","homeScore":118,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-15","label":"Minnesota Timberwolves vs Utah Jazz","date":"2025-11-07","outcome":"win","profit":0.1479,"context":{"spread":-12.5,"margin":40,"odds":"-676","homeOdds":"-676","awayOdds":"+490","homeScore":137,"awayScore":97,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-16","label":"Washington Wizards vs Dallas Mavericks","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-6,"odds":"+152","homeOdds":"+152","awayOdds":"-180","homeScore":105,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-17","label":"LA Clippers vs Phoenix Suns","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-185","homeOdds":"-185","awayOdds":"+155","homeScore":103,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-18","label":"LA Clippers vs Atlanta Hawks","date":"2025-11-10","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-3,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":102,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-19","label":"Brooklyn Nets vs Toronto Raptors","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-10,"odds":"+350","homeOdds":"+350","awayOdds":"-474","homeScore":109,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-20","label":"Utah Jazz vs Indiana Pacers","date":"2025-11-11","outcome":"win","profit":1.18,"context":{"spread":2.5,"margin":24,"odds":"+118","homeOdds":"+118","awayOdds":"-139","homeScore":152,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-21","label":"Sacramento Kings vs Denver Nuggets","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-14,"odds":"+280","homeOdds":"+280","awayOdds":"-370","homeScore":108,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-22","label":"Dallas Mavericks vs Phoenix Suns","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":2,"margin":-9,"odds":"+110","homeOdds":"+110","awayOdds":"-130","homeScore":114,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-23","label":"Sacramento Kings vs Atlanta Hawks","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-33,"odds":"+148","homeOdds":"+148","awayOdds":"-175","homeScore":100,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-24","label":"LA Clippers vs Denver Nuggets","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-14,"odds":"+156","homeOdds":"+156","awayOdds":"-186","homeScore":116,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-25","label":"Dallas Mavericks vs LA Clippers","date":"2025-11-14","outcome":"loss","profit":-1,"context":{"spread":3,"margin":-6,"odds":"+130","homeOdds":"+130","awayOdds":"-154","homeScore":127,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-26","label":"Indiana Pacers vs Toronto Raptors","date":"2025-11-15","outcome":"loss","profit":-1,"context":{"spread":5.5,"margin":-18,"odds":"+190","homeOdds":"+190","awayOdds":"-238","homeScore":111,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-27","label":"San Antonio Spurs vs Sacramento Kings","date":"2025-11-16","outcome":"win","profit":0.4202,"context":{"spread":-6.5,"margin":13,"odds":"-238","homeOdds":"-238","awayOdds":"+195","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-28","label":"Washington Wizards vs Brooklyn Nets","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-137","homeOdds":"-137","awayOdds":"+117","homeScore":106,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-29","label":"New Orleans Pelicans vs Golden State Warriors","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":11,"margin":-18,"odds":"+400","homeOdds":"+400","awayOdds":"-521","homeScore":106,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-30","label":"Dallas Mavericks vs Portland Trail Blazers","date":"2025-11-16","outcome":"win","profit":1.34,"context":{"spread":3,"margin":5,"odds":"+134","homeOdds":"+134","awayOdds":"-158","homeScore":138,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-31","label":"New Orleans Pelicans vs Oklahoma City Thunder","date":"2025-11-17","outcome":"loss","profit":-1,"context":{"spread":18.5,"margin":-17,"odds":"+900","homeOdds":"+900","awayOdds":"-1667","homeScore":109,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-32","label":"Brooklyn Nets vs Boston Celtics","date":"2025-11-18","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-14,"odds":"+425","homeOdds":"+425","awayOdds":"-575","homeScore":99,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-33","label":"Indiana Pacers vs Charlotte Hornets","date":"2025-11-19","outcome":"win","profit":1.15,"context":{"spread":2,"margin":9,"odds":"+115","homeOdds":"+115","awayOdds":"-137","homeScore":127,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-34","label":"New Orleans Pelicans vs Denver Nuggets","date":"2025-11-19","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-7,"odds":"+400","homeOdds":"+400","awayOdds":"-526","homeScore":118,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-35","label":"New Orleans Pelicans vs Atlanta Hawks","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":9.5,"margin":-17,"odds":"+350","homeOdds":"+350","awayOdds":"-450","homeScore":98,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-36","label":"Chicago Bulls vs Washington Wizards","date":"2025-11-22","outcome":"win","profit":0.1541,"context":{"spread":-12.5,"margin":1,"odds":"-649","homeOdds":"-649","awayOdds":"+480","homeScore":121,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-37","label":"Milwaukee Bucks vs Detroit Pistons","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-13,"odds":"+280","homeOdds":"+280","awayOdds":"-345","homeScore":116,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-38","label":"Brooklyn Nets vs New York Knicks","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":12.5,"margin":-13,"odds":"+500","homeOdds":"+500","awayOdds":"-769","homeScore":100,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-39","label":"Milwaukee Bucks vs Portland Trail Blazers","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":-1,"margin":-12,"odds":"-112","homeOdds":"-112","awayOdds":"-104","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-40","label":"New Orleans Pelicans vs Chicago Bulls","date":"2025-11-24","outcome":"win","profit":1.65,"context":{"spread":4.5,"margin":13,"odds":"+165","homeOdds":"+165","awayOdds":"-200","homeScore":143,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-41","label":"Sacramento Kings vs Minnesota Timberwolves","date":"2025-11-24","outcome":"win","profit":3.75,"context":{"spread":10.5,"margin":5,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":117,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-42","label":"Washington Wizards vs Atlanta Hawks","date":"2025-11-25","outcome":"win","profit":3.6,"context":{"spread":10.5,"margin":19,"odds":"+360","homeOdds":"+360","awayOdds":"-500","homeScore":132,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-43","label":"Philadelphia 76ers vs Orlando Magic","date":"2025-11-25","outcome":"loss","profit":-1,"context":{"spread":4,"margin":-41,"odds":"+160","homeOdds":"+160","awayOdds":"-192","homeScore":103,"awayScore":144,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-44","label":"Charlotte Hornets vs New York Knicks","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-28,"odds":"+222","homeOdds":"+222","awayOdds":"-278","homeScore":101,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-45","label":"Portland Trail Blazers vs San Antonio Spurs","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":-1.5,"margin":-13,"odds":"-115","homeOdds":"-115","awayOdds":"-105","homeScore":102,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-46","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":7.5,"margin":-12,"odds":"+215","homeOdds":"+215","awayOdds":"-267","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-47","label":"Charlotte Hornets vs Chicago Bulls","date":"2025-11-28","outcome":"win","profit":1.18,"context":{"spread":3,"margin":7,"odds":"+118","homeOdds":"+118","awayOdds":"-138","homeScore":123,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-48","label":"Denver Nuggets vs San Antonio Spurs","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-7,"margin":-3,"odds":"-286","homeOdds":"-286","awayOdds":"+230","homeScore":136,"awayScore":139,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-49","label":"Utah Jazz vs Sacramento Kings","date":"2025-11-28","outcome":"win","profit":0.7042,"context":{"spread":-2.5,"margin":9,"odds":"-142","homeOdds":"-142","awayOdds":"+120","homeScore":128,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-50","label":"LA Clippers vs Memphis Grizzlies","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-6.5,"margin":-5,"odds":"-270","homeOdds":"-270","awayOdds":"+220","homeScore":107,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-51","label":"Milwaukee Bucks vs Brooklyn Nets","date":"2025-11-29","outcome":"win","profit":0.1669,"context":{"spread":-11.5,"margin":17,"odds":"-599","homeOdds":"-599","awayOdds":"+425","homeScore":116,"awayScore":99,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-52","label":"LA Clippers vs Dallas Mavericks","date":"2025-11-29","outcome":"loss","profit":-1,"context":{"spread":-9.5,"margin":-4,"odds":"-385","homeOdds":"-385","awayOdds":"+300","homeScore":110,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-53","label":"Philadelphia 76ers vs Atlanta Hawks","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-8,"odds":"-144","homeOdds":"-144","awayOdds":"+122","homeScore":134,"awayScore":142,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-54","label":"Portland Trail Blazers vs Oklahoma City Thunder","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-8,"odds":"+450","homeOdds":"+450","awayOdds":"-625","homeScore":115,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-55","label":"Brooklyn Nets vs Charlotte Hornets","date":"2025-12-01","outcome":"win","profit":1.68,"context":{"spread":4.5,"margin":13,"odds":"+168","homeOdds":"+168","awayOdds":"-200","homeScore":116,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-56","label":"Denver Nuggets vs Dallas Mavericks","date":"2025-12-01","outcome":"loss","profit":-1,"context":{"spread":-11.5,"margin":-10,"odds":"-521","homeOdds":"-521","awayOdds":"+400","homeScore":121,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-57","label":"Philadelphia 76ers vs Washington Wizards","date":"2025-12-02","outcome":"win","profit":0.125,"context":{"spread":-13.5,"margin":19,"odds":"-800","homeOdds":"-800","awayOdds":"+550","homeScore":121,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-58","label":"New Orleans Pelicans vs Minnesota Timberwolves","date":"2025-12-04","outcome":"loss","profit":-1,"context":{"spread":12,"margin":-9,"odds":"+450","homeOdds":"+450","awayOdds":"-599","homeScore":116,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-59","label":"Cleveland Cavaliers vs San Antonio Spurs","date":"2025-12-05","outcome":"win","profit":0.5,"context":{"spread":-5,"margin":13,"odds":"-200","homeOdds":"-200","awayOdds":"+165","homeScore":130,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-60","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":3.5,"margin":-8,"odds":"+130","homeOdds":"+130","awayOdds":"-155","homeScore":113,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-61","label":"Chicago Bulls vs Golden State Warriors","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-32,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":91,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-62","label":"Indiana Pacers vs Sacramento Kings","date":"2025-12-08","outcome":"win","profit":0.5882,"context":{"spread":-3.5,"margin":11,"odds":"-170","homeOdds":"-170","awayOdds":"+140","homeScore":116,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-63","label":"New Orleans Pelicans vs San Antonio Spurs","date":"2025-12-08","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-3,"odds":"+300","homeOdds":"+300","awayOdds":"-400","homeScore":132,"awayScore":135,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-64","label":"Toronto Raptors vs New York Knicks","date":"2025-12-09","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-16,"odds":"+200","homeOdds":"+200","awayOdds":"-250","homeScore":101,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-65","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2025-12-11","outcome":"win","profit":1.43,"context":{"spread":4,"margin":23,"odds":"+143","homeOdds":"+143","awayOdds":"-170","homeScore":143,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-66","label":"Sacramento Kings vs Denver Nuggets","date":"2025-12-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-31,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":105,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-67","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-12-12","outcome":"loss","profit":-1,"context":{"spread":16,"margin":-4,"odds":"+700","homeOdds":"+700","awayOdds":"-1111","homeScore":126,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-68","label":"Atlanta Hawks vs Philadelphia 76ers","date":"2025-12-14","outcome":"win","profit":0.5556,"context":{"spread":-4.5,"margin":3,"odds":"-180","homeOdds":"-180","awayOdds":"+145","homeScore":120,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-69","label":"Portland Trail Blazers vs Golden State Warriors","date":"2025-12-14","outcome":"win","profit":1.7,"context":{"spread":5.5,"margin":5,"odds":"+170","homeOdds":"+170","awayOdds":"-210","homeScore":136,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-70","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-10,"odds":"-190","homeOdds":"-190","awayOdds":"+154","homeScore":104,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-71","label":"Phoenix Suns vs Los Angeles Lakers","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-72","label":"Denver Nuggets vs Houston Rockets","date":"2025-12-15","outcome":"win","profit":0.9174,"context":{"spread":-1,"margin":3,"odds":"-109","homeOdds":"-109","awayOdds":"-108","homeScore":128,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-73","label":"LA Clippers vs Memphis Grizzlies","date":"2025-12-15","outcome":"loss","profit":-1,"context":{"spread":-5.5,"margin":-18,"odds":"-220","homeOdds":"-220","awayOdds":"+180","homeScore":103,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-74","label":"Chicago Bulls vs Cleveland Cavaliers","date":"2025-12-17","outcome":"win","profit":1.88,"context":{"spread":5.5,"margin":16,"odds":"+188","homeOdds":"+188","awayOdds":"-220","homeScore":127,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-75","label":"Charlotte Hornets vs Atlanta Hawks","date":"2025-12-18","outcome":"win","profit":1.5,"context":{"spread":4.5,"margin":7,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":133,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-76","label":"Phoenix Suns vs Golden State Warriors","date":"2025-12-18","outcome":"win","profit":1.1,"context":{"spread":1.5,"margin":1,"odds":"+110","homeOdds":"+110","awayOdds":"-135","homeScore":99,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-77","label":"Cleveland Cavaliers vs Chicago Bulls","date":"2025-12-19","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-169","homeOdds":"-169","awayOdds":"+140","homeScore":125,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-78","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"-123","homeScore":96,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-79","label":"Golden State Warriors vs Phoenix Suns","date":"2025-12-20","outcome":"win","profit":0.4,"context":{"spread":-6.5,"margin":3,"odds":"-250","homeOdds":"-250","awayOdds":"+200","homeScore":119,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-80","label":"Sacramento Kings vs Portland Trail Blazers","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-5,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":93,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-81","label":"LA Clippers vs Los Angeles Lakers","date":"2025-12-20","outcome":"win","profit":1,"context":{"spread":1.5,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":103,"awayScore":88,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-82","label":"Washington Wizards vs San Antonio Spurs","date":"2025-12-21","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-11,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-83","label":"Sacramento Kings vs Houston Rockets","date":"2025-12-21","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-84","label":"Cleveland Cavaliers vs Charlotte Hornets","date":"2025-12-22","outcome":"win","profit":1,"context":{"spread":0,"margin":7,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-85","label":"Atlanta Hawks vs Chicago Bulls","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":123,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-86","label":"Indiana Pacers vs Milwaukee Bucks","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-17,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-87","label":"Miami Heat vs Toronto Raptors","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-21,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":91,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-88","label":"Utah Jazz vs Memphis Grizzlies","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-9,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":128,"awayScore":137,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-89","label":"Los Angeles Lakers vs Houston Rockets","date":"2025-12-25","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-135","homeOdds":"-135","awayOdds":"+115","homeScore":96,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-90","label":"Atlanta Hawks vs Miami Heat","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":111,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-91","label":"Washington Wizards vs Toronto Raptors","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":138,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-92","label":"Indiana Pacers vs Boston Celtics","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-18,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":140,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-93","label":"Memphis Grizzlies vs Milwaukee Bucks","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-94","label":"Utah Jazz vs Detroit Pistons","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":131,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-95","label":"Portland Trail Blazers vs LA Clippers","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":103,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-96","label":"Orlando Magic vs Denver Nuggets","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-97","label":"Atlanta Hawks vs New York Knicks","date":"2025-12-27","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-98","label":"Miami Heat vs Indiana Pacers","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":26,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":142,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-99","label":"Toronto Raptors vs Golden State Warriors","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":14,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":141,"awayScore":127,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-100","label":"Portland Trail Blazers vs Boston Celtics","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":6,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":108,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-101","label":"Los Angeles Lakers vs Sacramento Kings","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":101,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-102","label":"New Orleans Pelicans vs New York Knicks","date":"2025-12-29","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-103","label":"Atlanta Hawks vs Minnesota Timberwolves","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-104","label":"Indiana Pacers vs Orlando Magic","date":"2025-12-31","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":110,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-105","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-106","label":"San Antonio Spurs vs New York Knicks","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-107","label":"Indiana Pacers vs San Antonio Spurs","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-108","label":"Milwaukee Bucks vs Charlotte Hornets","date":"2026-01-02","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-109","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}}]','{"total_trades":110,"wins":48,"win_rate":44,"total_profit":-11.8498,"avg_return":-0.1077,"roi_percent":-10.77,"profit_factor":0.81,"sharpe_ratio":-0.1,"max_drawdown":19.99,"max_drawdown_pct":636.09,"ats_record":null}','{"notes":["Evaluated 512 games from BallDontLie API","Bounce after 2+ losses: 110 games","ATS Record: 0-74 (0.0% cover rate)"],"rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5},"datasetSize":512,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767459481827,NULL,1767459481819,0);
INSERT INTO backtest_results VALUES('cmjyjscz90000ghe0f08tflqp',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA season","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767459560374,NULL,1767459560371,0);
INSERT INTO backtest_results VALUES('cmjyjsmho0003ghe0bjmhhr4r',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA season","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767459572701,NULL,1767459572699,0);
INSERT INTO backtest_results VALUES('cmjyu5ok00065g52x1al0snjk',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA season","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767476978064,NULL,1767476978063,0);
INSERT INTO backtest_results VALUES('cmjyu8fdx0069g52xv0ohx5pf',NULL,'test123','nba','Bet on teams that lost their last 2 games if their point dif…',NULL,'{"prompt":"Bet on teams that lost their last 2 games if their point differential was under -5 in the 2024 NBA season.","domain":"sports","sportFilter":"nba","rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5}}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on teams that lost their last 2 games if their point dif…","total_trades":110,"wins":48,"win_rate":44,"total_profit":-11.8498,"results":{"total_trades":110,"wins":48,"win_rate":44,"total_profit":-11.8498,"avg_return":-0.1077,"roi_percent":-10.77,"profit_factor":0.81,"sharpe_ratio":-0.1,"max_drawdown":19.99,"max_drawdown_pct":636.09,"ats_record":null},"all_trades":[{"id":"sports-trade-0","label":"Dallas Mavericks vs Toronto Raptors","date":"2025-10-26","outcome":"win","profit":1,"context":{"spread":0,"margin":10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-1","label":"Indiana Pacers vs Golden State Warriors","date":"2025-11-01","outcome":"win","profit":1,"context":{"spread":0,"margin":5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":109,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-2","label":"Washington Wizards vs Orlando Magic","date":"2025-11-01","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-31,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-3","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":105,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-4","label":"Charlotte Hornets vs Utah Jazz","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":23,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-5","label":"Toronto Raptors vs Memphis Grizzlies","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":117,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-6","label":"Brooklyn Nets vs Minnesota Timberwolves","date":"2025-11-03","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-7","label":"Atlanta Hawks vs Orlando Magic","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-8","label":"New Orleans Pelicans vs Charlotte Hornets","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":4,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":116,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-9","label":"Boston Celtics vs Washington Wizards","date":"2025-11-05","outcome":"win","profit":0.1431,"context":{"spread":-12.5,"margin":29,"odds":"-699","homeOdds":"-699","awayOdds":"+500","homeScore":136,"awayScore":107,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-10","label":"Memphis Grizzlies vs Houston Rockets","date":"2025-11-05","outcome":"loss","profit":-1,"context":{"spread":8,"margin":-15,"odds":"+260","homeOdds":"+260","awayOdds":"-334","homeScore":109,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-11","label":"Orlando Magic vs Boston Celtics","date":"2025-11-07","outcome":"win","profit":0.6289,"context":{"spread":-4.5,"margin":13,"odds":"-159","homeOdds":"-159","awayOdds":"+135","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-12","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":13.5,"margin":-33,"odds":"+550","homeOdds":"+550","awayOdds":"-769","homeScore":115,"awayScore":148,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-13","label":"Brooklyn Nets vs Detroit Pistons","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-18,"odds":"+370","homeOdds":"+370","awayOdds":"-476","homeScore":107,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-14","label":"Memphis Grizzlies vs Dallas Mavericks","date":"2025-11-07","outcome":"win","profit":0.5587,"context":{"spread":-4.5,"margin":14,"odds":"-179","homeOdds":"-179","awayOdds":"+150","homeScore":118,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-15","label":"Minnesota Timberwolves vs Utah Jazz","date":"2025-11-07","outcome":"win","profit":0.1479,"context":{"spread":-12.5,"margin":40,"odds":"-676","homeOdds":"-676","awayOdds":"+490","homeScore":137,"awayScore":97,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-16","label":"Washington Wizards vs Dallas Mavericks","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-6,"odds":"+152","homeOdds":"+152","awayOdds":"-180","homeScore":105,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-17","label":"LA Clippers vs Phoenix Suns","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-185","homeOdds":"-185","awayOdds":"+155","homeScore":103,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-18","label":"LA Clippers vs Atlanta Hawks","date":"2025-11-10","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-3,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":102,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-19","label":"Brooklyn Nets vs Toronto Raptors","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-10,"odds":"+350","homeOdds":"+350","awayOdds":"-474","homeScore":109,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-20","label":"Utah Jazz vs Indiana Pacers","date":"2025-11-11","outcome":"win","profit":1.18,"context":{"spread":2.5,"margin":24,"odds":"+118","homeOdds":"+118","awayOdds":"-139","homeScore":152,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-21","label":"Sacramento Kings vs Denver Nuggets","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-14,"odds":"+280","homeOdds":"+280","awayOdds":"-370","homeScore":108,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-22","label":"Dallas Mavericks vs Phoenix Suns","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":2,"margin":-9,"odds":"+110","homeOdds":"+110","awayOdds":"-130","homeScore":114,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-23","label":"Sacramento Kings vs Atlanta Hawks","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-33,"odds":"+148","homeOdds":"+148","awayOdds":"-175","homeScore":100,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-24","label":"LA Clippers vs Denver Nuggets","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-14,"odds":"+156","homeOdds":"+156","awayOdds":"-186","homeScore":116,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-25","label":"Dallas Mavericks vs LA Clippers","date":"2025-11-14","outcome":"loss","profit":-1,"context":{"spread":3,"margin":-6,"odds":"+130","homeOdds":"+130","awayOdds":"-154","homeScore":127,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-26","label":"Indiana Pacers vs Toronto Raptors","date":"2025-11-15","outcome":"loss","profit":-1,"context":{"spread":5.5,"margin":-18,"odds":"+190","homeOdds":"+190","awayOdds":"-238","homeScore":111,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-27","label":"San Antonio Spurs vs Sacramento Kings","date":"2025-11-16","outcome":"win","profit":0.4202,"context":{"spread":-6.5,"margin":13,"odds":"-238","homeOdds":"-238","awayOdds":"+195","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-28","label":"Washington Wizards vs Brooklyn Nets","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-137","homeOdds":"-137","awayOdds":"+117","homeScore":106,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-29","label":"New Orleans Pelicans vs Golden State Warriors","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":11,"margin":-18,"odds":"+400","homeOdds":"+400","awayOdds":"-521","homeScore":106,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-30","label":"Dallas Mavericks vs Portland Trail Blazers","date":"2025-11-16","outcome":"win","profit":1.34,"context":{"spread":3,"margin":5,"odds":"+134","homeOdds":"+134","awayOdds":"-158","homeScore":138,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-31","label":"New Orleans Pelicans vs Oklahoma City Thunder","date":"2025-11-17","outcome":"loss","profit":-1,"context":{"spread":18.5,"margin":-17,"odds":"+900","homeOdds":"+900","awayOdds":"-1667","homeScore":109,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-32","label":"Brooklyn Nets vs Boston Celtics","date":"2025-11-18","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-14,"odds":"+425","homeOdds":"+425","awayOdds":"-575","homeScore":99,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-33","label":"Indiana Pacers vs Charlotte Hornets","date":"2025-11-19","outcome":"win","profit":1.15,"context":{"spread":2,"margin":9,"odds":"+115","homeOdds":"+115","awayOdds":"-137","homeScore":127,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-34","label":"New Orleans Pelicans vs Denver Nuggets","date":"2025-11-19","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-7,"odds":"+400","homeOdds":"+400","awayOdds":"-526","homeScore":118,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-35","label":"New Orleans Pelicans vs Atlanta Hawks","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":9.5,"margin":-17,"odds":"+350","homeOdds":"+350","awayOdds":"-450","homeScore":98,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-36","label":"Chicago Bulls vs Washington Wizards","date":"2025-11-22","outcome":"win","profit":0.1541,"context":{"spread":-12.5,"margin":1,"odds":"-649","homeOdds":"-649","awayOdds":"+480","homeScore":121,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-37","label":"Milwaukee Bucks vs Detroit Pistons","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-13,"odds":"+280","homeOdds":"+280","awayOdds":"-345","homeScore":116,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-38","label":"Brooklyn Nets vs New York Knicks","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":12.5,"margin":-13,"odds":"+500","homeOdds":"+500","awayOdds":"-769","homeScore":100,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-39","label":"Milwaukee Bucks vs Portland Trail Blazers","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":-1,"margin":-12,"odds":"-112","homeOdds":"-112","awayOdds":"-104","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-40","label":"New Orleans Pelicans vs Chicago Bulls","date":"2025-11-24","outcome":"win","profit":1.65,"context":{"spread":4.5,"margin":13,"odds":"+165","homeOdds":"+165","awayOdds":"-200","homeScore":143,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-41","label":"Sacramento Kings vs Minnesota Timberwolves","date":"2025-11-24","outcome":"win","profit":3.75,"context":{"spread":10.5,"margin":5,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":117,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-42","label":"Washington Wizards vs Atlanta Hawks","date":"2025-11-25","outcome":"win","profit":3.6,"context":{"spread":10.5,"margin":19,"odds":"+360","homeOdds":"+360","awayOdds":"-500","homeScore":132,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-43","label":"Philadelphia 76ers vs Orlando Magic","date":"2025-11-25","outcome":"loss","profit":-1,"context":{"spread":4,"margin":-41,"odds":"+160","homeOdds":"+160","awayOdds":"-192","homeScore":103,"awayScore":144,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-44","label":"Charlotte Hornets vs New York Knicks","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-28,"odds":"+222","homeOdds":"+222","awayOdds":"-278","homeScore":101,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-45","label":"Portland Trail Blazers vs San Antonio Spurs","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":-1.5,"margin":-13,"odds":"-115","homeOdds":"-115","awayOdds":"-105","homeScore":102,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-46","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":7.5,"margin":-12,"odds":"+215","homeOdds":"+215","awayOdds":"-267","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-47","label":"Charlotte Hornets vs Chicago Bulls","date":"2025-11-28","outcome":"win","profit":1.18,"context":{"spread":3,"margin":7,"odds":"+118","homeOdds":"+118","awayOdds":"-138","homeScore":123,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-48","label":"Denver Nuggets vs San Antonio Spurs","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-7,"margin":-3,"odds":"-286","homeOdds":"-286","awayOdds":"+230","homeScore":136,"awayScore":139,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-49","label":"Utah Jazz vs Sacramento Kings","date":"2025-11-28","outcome":"win","profit":0.7042,"context":{"spread":-2.5,"margin":9,"odds":"-142","homeOdds":"-142","awayOdds":"+120","homeScore":128,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-50","label":"LA Clippers vs Memphis Grizzlies","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-6.5,"margin":-5,"odds":"-270","homeOdds":"-270","awayOdds":"+220","homeScore":107,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-51","label":"Milwaukee Bucks vs Brooklyn Nets","date":"2025-11-29","outcome":"win","profit":0.1669,"context":{"spread":-11.5,"margin":17,"odds":"-599","homeOdds":"-599","awayOdds":"+425","homeScore":116,"awayScore":99,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-52","label":"LA Clippers vs Dallas Mavericks","date":"2025-11-29","outcome":"loss","profit":-1,"context":{"spread":-9.5,"margin":-4,"odds":"-385","homeOdds":"-385","awayOdds":"+300","homeScore":110,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-53","label":"Philadelphia 76ers vs Atlanta Hawks","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-8,"odds":"-144","homeOdds":"-144","awayOdds":"+122","homeScore":134,"awayScore":142,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-54","label":"Portland Trail Blazers vs Oklahoma City Thunder","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-8,"odds":"+450","homeOdds":"+450","awayOdds":"-625","homeScore":115,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-55","label":"Brooklyn Nets vs Charlotte Hornets","date":"2025-12-01","outcome":"win","profit":1.68,"context":{"spread":4.5,"margin":13,"odds":"+168","homeOdds":"+168","awayOdds":"-200","homeScore":116,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-56","label":"Denver Nuggets vs Dallas Mavericks","date":"2025-12-01","outcome":"loss","profit":-1,"context":{"spread":-11.5,"margin":-10,"odds":"-521","homeOdds":"-521","awayOdds":"+400","homeScore":121,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-57","label":"Philadelphia 76ers vs Washington Wizards","date":"2025-12-02","outcome":"win","profit":0.125,"context":{"spread":-13.5,"margin":19,"odds":"-800","homeOdds":"-800","awayOdds":"+550","homeScore":121,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-58","label":"New Orleans Pelicans vs Minnesota Timberwolves","date":"2025-12-04","outcome":"loss","profit":-1,"context":{"spread":12,"margin":-9,"odds":"+450","homeOdds":"+450","awayOdds":"-599","homeScore":116,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-59","label":"Cleveland Cavaliers vs San Antonio Spurs","date":"2025-12-05","outcome":"win","profit":0.5,"context":{"spread":-5,"margin":13,"odds":"-200","homeOdds":"-200","awayOdds":"+165","homeScore":130,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-60","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":3.5,"margin":-8,"odds":"+130","homeOdds":"+130","awayOdds":"-155","homeScore":113,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-61","label":"Chicago Bulls vs Golden State Warriors","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-32,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":91,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-62","label":"Indiana Pacers vs Sacramento Kings","date":"2025-12-08","outcome":"win","profit":0.5882,"context":{"spread":-3.5,"margin":11,"odds":"-170","homeOdds":"-170","awayOdds":"+140","homeScore":116,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-63","label":"New Orleans Pelicans vs San Antonio Spurs","date":"2025-12-08","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-3,"odds":"+300","homeOdds":"+300","awayOdds":"-400","homeScore":132,"awayScore":135,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-64","label":"Toronto Raptors vs New York Knicks","date":"2025-12-09","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-16,"odds":"+200","homeOdds":"+200","awayOdds":"-250","homeScore":101,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-65","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2025-12-11","outcome":"win","profit":1.43,"context":{"spread":4,"margin":23,"odds":"+143","homeOdds":"+143","awayOdds":"-170","homeScore":143,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-66","label":"Sacramento Kings vs Denver Nuggets","date":"2025-12-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-31,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":105,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-67","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-12-12","outcome":"loss","profit":-1,"context":{"spread":16,"margin":-4,"odds":"+700","homeOdds":"+700","awayOdds":"-1111","homeScore":126,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-68","label":"Atlanta Hawks vs Philadelphia 76ers","date":"2025-12-14","outcome":"win","profit":0.5556,"context":{"spread":-4.5,"margin":3,"odds":"-180","homeOdds":"-180","awayOdds":"+145","homeScore":120,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-69","label":"Portland Trail Blazers vs Golden State Warriors","date":"2025-12-14","outcome":"win","profit":1.7,"context":{"spread":5.5,"margin":5,"odds":"+170","homeOdds":"+170","awayOdds":"-210","homeScore":136,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-70","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-10,"odds":"-190","homeOdds":"-190","awayOdds":"+154","homeScore":104,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-71","label":"Phoenix Suns vs Los Angeles Lakers","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-72","label":"Denver Nuggets vs Houston Rockets","date":"2025-12-15","outcome":"win","profit":0.9174,"context":{"spread":-1,"margin":3,"odds":"-109","homeOdds":"-109","awayOdds":"-108","homeScore":128,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-73","label":"LA Clippers vs Memphis Grizzlies","date":"2025-12-15","outcome":"loss","profit":-1,"context":{"spread":-5.5,"margin":-18,"odds":"-220","homeOdds":"-220","awayOdds":"+180","homeScore":103,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-74","label":"Chicago Bulls vs Cleveland Cavaliers","date":"2025-12-17","outcome":"win","profit":1.88,"context":{"spread":5.5,"margin":16,"odds":"+188","homeOdds":"+188","awayOdds":"-220","homeScore":127,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-75","label":"Charlotte Hornets vs Atlanta Hawks","date":"2025-12-18","outcome":"win","profit":1.5,"context":{"spread":4.5,"margin":7,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":133,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-76","label":"Phoenix Suns vs Golden State Warriors","date":"2025-12-18","outcome":"win","profit":1.1,"context":{"spread":1.5,"margin":1,"odds":"+110","homeOdds":"+110","awayOdds":"-135","homeScore":99,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-77","label":"Cleveland Cavaliers vs Chicago Bulls","date":"2025-12-19","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-169","homeOdds":"-169","awayOdds":"+140","homeScore":125,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-78","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"-123","homeScore":96,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-79","label":"Golden State Warriors vs Phoenix Suns","date":"2025-12-20","outcome":"win","profit":0.4,"context":{"spread":-6.5,"margin":3,"odds":"-250","homeOdds":"-250","awayOdds":"+200","homeScore":119,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-80","label":"Sacramento Kings vs Portland Trail Blazers","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-5,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":93,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-81","label":"LA Clippers vs Los Angeles Lakers","date":"2025-12-20","outcome":"win","profit":1,"context":{"spread":1.5,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":103,"awayScore":88,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-82","label":"Washington Wizards vs San Antonio Spurs","date":"2025-12-21","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-11,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-83","label":"Sacramento Kings vs Houston Rockets","date":"2025-12-21","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-84","label":"Cleveland Cavaliers vs Charlotte Hornets","date":"2025-12-22","outcome":"win","profit":1,"context":{"spread":0,"margin":7,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-85","label":"Atlanta Hawks vs Chicago Bulls","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":123,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-86","label":"Indiana Pacers vs Milwaukee Bucks","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-17,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-87","label":"Miami Heat vs Toronto Raptors","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-21,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":91,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-88","label":"Utah Jazz vs Memphis Grizzlies","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-9,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":128,"awayScore":137,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-89","label":"Los Angeles Lakers vs Houston Rockets","date":"2025-12-25","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-135","homeOdds":"-135","awayOdds":"+115","homeScore":96,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-90","label":"Atlanta Hawks vs Miami Heat","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":111,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-91","label":"Washington Wizards vs Toronto Raptors","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":138,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-92","label":"Indiana Pacers vs Boston Celtics","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-18,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":140,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-93","label":"Memphis Grizzlies vs Milwaukee Bucks","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-94","label":"Utah Jazz vs Detroit Pistons","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":131,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-95","label":"Portland Trail Blazers vs LA Clippers","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":103,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-96","label":"Orlando Magic vs Denver Nuggets","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-97","label":"Atlanta Hawks vs New York Knicks","date":"2025-12-27","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-98","label":"Miami Heat vs Indiana Pacers","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":26,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":142,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-99","label":"Toronto Raptors vs Golden State Warriors","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":14,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":141,"awayScore":127,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-100","label":"Portland Trail Blazers vs Boston Celtics","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":6,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":108,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-101","label":"Los Angeles Lakers vs Sacramento Kings","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":101,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-102","label":"New Orleans Pelicans vs New York Knicks","date":"2025-12-29","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-103","label":"Atlanta Hawks vs Minnesota Timberwolves","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-104","label":"Indiana Pacers vs Orlando Magic","date":"2025-12-31","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":110,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-105","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-106","label":"San Antonio Spurs vs New York Knicks","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-107","label":"Indiana Pacers vs San Antonio Spurs","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-108","label":"Milwaukee Bucks vs Charlotte Hornets","date":"2026-01-02","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-109","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}}],"detailed_statistics":{"notes":["Evaluated 512 games from BallDontLie API","Bounce after 2+ losses: 110 games","ATS Record: 0-74 (0.0% cover rate)"],"rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5},"datasetSize":512,"sportFilter":"nba"}}','[{"id":"sports-trade-0","label":"Dallas Mavericks vs Toronto Raptors","date":"2025-10-26","outcome":"win","profit":1,"context":{"spread":0,"margin":10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-1","label":"Indiana Pacers vs Golden State Warriors","date":"2025-11-01","outcome":"win","profit":1,"context":{"spread":0,"margin":5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":109,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-2","label":"Washington Wizards vs Orlando Magic","date":"2025-11-01","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-31,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-3","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":105,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-4","label":"Charlotte Hornets vs Utah Jazz","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":23,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-5","label":"Toronto Raptors vs Memphis Grizzlies","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":117,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-6","label":"Brooklyn Nets vs Minnesota Timberwolves","date":"2025-11-03","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-7","label":"Atlanta Hawks vs Orlando Magic","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-8","label":"New Orleans Pelicans vs Charlotte Hornets","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":4,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":116,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-9","label":"Boston Celtics vs Washington Wizards","date":"2025-11-05","outcome":"win","profit":0.1431,"context":{"spread":-12.5,"margin":29,"odds":"-699","homeOdds":"-699","awayOdds":"+500","homeScore":136,"awayScore":107,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-10","label":"Memphis Grizzlies vs Houston Rockets","date":"2025-11-05","outcome":"loss","profit":-1,"context":{"spread":8,"margin":-15,"odds":"+260","homeOdds":"+260","awayOdds":"-334","homeScore":109,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-11","label":"Orlando Magic vs Boston Celtics","date":"2025-11-07","outcome":"win","profit":0.6289,"context":{"spread":-4.5,"margin":13,"odds":"-159","homeOdds":"-159","awayOdds":"+135","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-12","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":13.5,"margin":-33,"odds":"+550","homeOdds":"+550","awayOdds":"-769","homeScore":115,"awayScore":148,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-13","label":"Brooklyn Nets vs Detroit Pistons","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-18,"odds":"+370","homeOdds":"+370","awayOdds":"-476","homeScore":107,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-14","label":"Memphis Grizzlies vs Dallas Mavericks","date":"2025-11-07","outcome":"win","profit":0.5587,"context":{"spread":-4.5,"margin":14,"odds":"-179","homeOdds":"-179","awayOdds":"+150","homeScore":118,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-15","label":"Minnesota Timberwolves vs Utah Jazz","date":"2025-11-07","outcome":"win","profit":0.1479,"context":{"spread":-12.5,"margin":40,"odds":"-676","homeOdds":"-676","awayOdds":"+490","homeScore":137,"awayScore":97,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-16","label":"Washington Wizards vs Dallas Mavericks","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-6,"odds":"+152","homeOdds":"+152","awayOdds":"-180","homeScore":105,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-17","label":"LA Clippers vs Phoenix Suns","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-185","homeOdds":"-185","awayOdds":"+155","homeScore":103,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-18","label":"LA Clippers vs Atlanta Hawks","date":"2025-11-10","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-3,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":102,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-19","label":"Brooklyn Nets vs Toronto Raptors","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-10,"odds":"+350","homeOdds":"+350","awayOdds":"-474","homeScore":109,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-20","label":"Utah Jazz vs Indiana Pacers","date":"2025-11-11","outcome":"win","profit":1.18,"context":{"spread":2.5,"margin":24,"odds":"+118","homeOdds":"+118","awayOdds":"-139","homeScore":152,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-21","label":"Sacramento Kings vs Denver Nuggets","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-14,"odds":"+280","homeOdds":"+280","awayOdds":"-370","homeScore":108,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-22","label":"Dallas Mavericks vs Phoenix Suns","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":2,"margin":-9,"odds":"+110","homeOdds":"+110","awayOdds":"-130","homeScore":114,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-23","label":"Sacramento Kings vs Atlanta Hawks","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-33,"odds":"+148","homeOdds":"+148","awayOdds":"-175","homeScore":100,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-24","label":"LA Clippers vs Denver Nuggets","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-14,"odds":"+156","homeOdds":"+156","awayOdds":"-186","homeScore":116,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-25","label":"Dallas Mavericks vs LA Clippers","date":"2025-11-14","outcome":"loss","profit":-1,"context":{"spread":3,"margin":-6,"odds":"+130","homeOdds":"+130","awayOdds":"-154","homeScore":127,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-26","label":"Indiana Pacers vs Toronto Raptors","date":"2025-11-15","outcome":"loss","profit":-1,"context":{"spread":5.5,"margin":-18,"odds":"+190","homeOdds":"+190","awayOdds":"-238","homeScore":111,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-27","label":"San Antonio Spurs vs Sacramento Kings","date":"2025-11-16","outcome":"win","profit":0.4202,"context":{"spread":-6.5,"margin":13,"odds":"-238","homeOdds":"-238","awayOdds":"+195","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-28","label":"Washington Wizards vs Brooklyn Nets","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-137","homeOdds":"-137","awayOdds":"+117","homeScore":106,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-29","label":"New Orleans Pelicans vs Golden State Warriors","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":11,"margin":-18,"odds":"+400","homeOdds":"+400","awayOdds":"-521","homeScore":106,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-30","label":"Dallas Mavericks vs Portland Trail Blazers","date":"2025-11-16","outcome":"win","profit":1.34,"context":{"spread":3,"margin":5,"odds":"+134","homeOdds":"+134","awayOdds":"-158","homeScore":138,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-31","label":"New Orleans Pelicans vs Oklahoma City Thunder","date":"2025-11-17","outcome":"loss","profit":-1,"context":{"spread":18.5,"margin":-17,"odds":"+900","homeOdds":"+900","awayOdds":"-1667","homeScore":109,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-32","label":"Brooklyn Nets vs Boston Celtics","date":"2025-11-18","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-14,"odds":"+425","homeOdds":"+425","awayOdds":"-575","homeScore":99,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-33","label":"Indiana Pacers vs Charlotte Hornets","date":"2025-11-19","outcome":"win","profit":1.15,"context":{"spread":2,"margin":9,"odds":"+115","homeOdds":"+115","awayOdds":"-137","homeScore":127,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-34","label":"New Orleans Pelicans vs Denver Nuggets","date":"2025-11-19","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-7,"odds":"+400","homeOdds":"+400","awayOdds":"-526","homeScore":118,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-35","label":"New Orleans Pelicans vs Atlanta Hawks","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":9.5,"margin":-17,"odds":"+350","homeOdds":"+350","awayOdds":"-450","homeScore":98,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-36","label":"Chicago Bulls vs Washington Wizards","date":"2025-11-22","outcome":"win","profit":0.1541,"context":{"spread":-12.5,"margin":1,"odds":"-649","homeOdds":"-649","awayOdds":"+480","homeScore":121,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-37","label":"Milwaukee Bucks vs Detroit Pistons","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-13,"odds":"+280","homeOdds":"+280","awayOdds":"-345","homeScore":116,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-38","label":"Brooklyn Nets vs New York Knicks","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":12.5,"margin":-13,"odds":"+500","homeOdds":"+500","awayOdds":"-769","homeScore":100,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-39","label":"Milwaukee Bucks vs Portland Trail Blazers","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":-1,"margin":-12,"odds":"-112","homeOdds":"-112","awayOdds":"-104","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-40","label":"New Orleans Pelicans vs Chicago Bulls","date":"2025-11-24","outcome":"win","profit":1.65,"context":{"spread":4.5,"margin":13,"odds":"+165","homeOdds":"+165","awayOdds":"-200","homeScore":143,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-41","label":"Sacramento Kings vs Minnesota Timberwolves","date":"2025-11-24","outcome":"win","profit":3.75,"context":{"spread":10.5,"margin":5,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":117,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-42","label":"Washington Wizards vs Atlanta Hawks","date":"2025-11-25","outcome":"win","profit":3.6,"context":{"spread":10.5,"margin":19,"odds":"+360","homeOdds":"+360","awayOdds":"-500","homeScore":132,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-43","label":"Philadelphia 76ers vs Orlando Magic","date":"2025-11-25","outcome":"loss","profit":-1,"context":{"spread":4,"margin":-41,"odds":"+160","homeOdds":"+160","awayOdds":"-192","homeScore":103,"awayScore":144,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-44","label":"Charlotte Hornets vs New York Knicks","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-28,"odds":"+222","homeOdds":"+222","awayOdds":"-278","homeScore":101,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-45","label":"Portland Trail Blazers vs San Antonio Spurs","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":-1.5,"margin":-13,"odds":"-115","homeOdds":"-115","awayOdds":"-105","homeScore":102,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-46","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":7.5,"margin":-12,"odds":"+215","homeOdds":"+215","awayOdds":"-267","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-47","label":"Charlotte Hornets vs Chicago Bulls","date":"2025-11-28","outcome":"win","profit":1.18,"context":{"spread":3,"margin":7,"odds":"+118","homeOdds":"+118","awayOdds":"-138","homeScore":123,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-48","label":"Denver Nuggets vs San Antonio Spurs","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-7,"margin":-3,"odds":"-286","homeOdds":"-286","awayOdds":"+230","homeScore":136,"awayScore":139,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-49","label":"Utah Jazz vs Sacramento Kings","date":"2025-11-28","outcome":"win","profit":0.7042,"context":{"spread":-2.5,"margin":9,"odds":"-142","homeOdds":"-142","awayOdds":"+120","homeScore":128,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-50","label":"LA Clippers vs Memphis Grizzlies","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-6.5,"margin":-5,"odds":"-270","homeOdds":"-270","awayOdds":"+220","homeScore":107,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-51","label":"Milwaukee Bucks vs Brooklyn Nets","date":"2025-11-29","outcome":"win","profit":0.1669,"context":{"spread":-11.5,"margin":17,"odds":"-599","homeOdds":"-599","awayOdds":"+425","homeScore":116,"awayScore":99,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-52","label":"LA Clippers vs Dallas Mavericks","date":"2025-11-29","outcome":"loss","profit":-1,"context":{"spread":-9.5,"margin":-4,"odds":"-385","homeOdds":"-385","awayOdds":"+300","homeScore":110,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-53","label":"Philadelphia 76ers vs Atlanta Hawks","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-8,"odds":"-144","homeOdds":"-144","awayOdds":"+122","homeScore":134,"awayScore":142,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-54","label":"Portland Trail Blazers vs Oklahoma City Thunder","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-8,"odds":"+450","homeOdds":"+450","awayOdds":"-625","homeScore":115,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-55","label":"Brooklyn Nets vs Charlotte Hornets","date":"2025-12-01","outcome":"win","profit":1.68,"context":{"spread":4.5,"margin":13,"odds":"+168","homeOdds":"+168","awayOdds":"-200","homeScore":116,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-56","label":"Denver Nuggets vs Dallas Mavericks","date":"2025-12-01","outcome":"loss","profit":-1,"context":{"spread":-11.5,"margin":-10,"odds":"-521","homeOdds":"-521","awayOdds":"+400","homeScore":121,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-57","label":"Philadelphia 76ers vs Washington Wizards","date":"2025-12-02","outcome":"win","profit":0.125,"context":{"spread":-13.5,"margin":19,"odds":"-800","homeOdds":"-800","awayOdds":"+550","homeScore":121,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-58","label":"New Orleans Pelicans vs Minnesota Timberwolves","date":"2025-12-04","outcome":"loss","profit":-1,"context":{"spread":12,"margin":-9,"odds":"+450","homeOdds":"+450","awayOdds":"-599","homeScore":116,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-59","label":"Cleveland Cavaliers vs San Antonio Spurs","date":"2025-12-05","outcome":"win","profit":0.5,"context":{"spread":-5,"margin":13,"odds":"-200","homeOdds":"-200","awayOdds":"+165","homeScore":130,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-60","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":3.5,"margin":-8,"odds":"+130","homeOdds":"+130","awayOdds":"-155","homeScore":113,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-61","label":"Chicago Bulls vs Golden State Warriors","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-32,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":91,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-62","label":"Indiana Pacers vs Sacramento Kings","date":"2025-12-08","outcome":"win","profit":0.5882,"context":{"spread":-3.5,"margin":11,"odds":"-170","homeOdds":"-170","awayOdds":"+140","homeScore":116,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-63","label":"New Orleans Pelicans vs San Antonio Spurs","date":"2025-12-08","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-3,"odds":"+300","homeOdds":"+300","awayOdds":"-400","homeScore":132,"awayScore":135,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-64","label":"Toronto Raptors vs New York Knicks","date":"2025-12-09","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-16,"odds":"+200","homeOdds":"+200","awayOdds":"-250","homeScore":101,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-65","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2025-12-11","outcome":"win","profit":1.43,"context":{"spread":4,"margin":23,"odds":"+143","homeOdds":"+143","awayOdds":"-170","homeScore":143,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-66","label":"Sacramento Kings vs Denver Nuggets","date":"2025-12-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-31,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":105,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-67","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-12-12","outcome":"loss","profit":-1,"context":{"spread":16,"margin":-4,"odds":"+700","homeOdds":"+700","awayOdds":"-1111","homeScore":126,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-68","label":"Atlanta Hawks vs Philadelphia 76ers","date":"2025-12-14","outcome":"win","profit":0.5556,"context":{"spread":-4.5,"margin":3,"odds":"-180","homeOdds":"-180","awayOdds":"+145","homeScore":120,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-69","label":"Portland Trail Blazers vs Golden State Warriors","date":"2025-12-14","outcome":"win","profit":1.7,"context":{"spread":5.5,"margin":5,"odds":"+170","homeOdds":"+170","awayOdds":"-210","homeScore":136,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-70","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-10,"odds":"-190","homeOdds":"-190","awayOdds":"+154","homeScore":104,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-71","label":"Phoenix Suns vs Los Angeles Lakers","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-72","label":"Denver Nuggets vs Houston Rockets","date":"2025-12-15","outcome":"win","profit":0.9174,"context":{"spread":-1,"margin":3,"odds":"-109","homeOdds":"-109","awayOdds":"-108","homeScore":128,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-73","label":"LA Clippers vs Memphis Grizzlies","date":"2025-12-15","outcome":"loss","profit":-1,"context":{"spread":-5.5,"margin":-18,"odds":"-220","homeOdds":"-220","awayOdds":"+180","homeScore":103,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-74","label":"Chicago Bulls vs Cleveland Cavaliers","date":"2025-12-17","outcome":"win","profit":1.88,"context":{"spread":5.5,"margin":16,"odds":"+188","homeOdds":"+188","awayOdds":"-220","homeScore":127,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-75","label":"Charlotte Hornets vs Atlanta Hawks","date":"2025-12-18","outcome":"win","profit":1.5,"context":{"spread":4.5,"margin":7,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":133,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-76","label":"Phoenix Suns vs Golden State Warriors","date":"2025-12-18","outcome":"win","profit":1.1,"context":{"spread":1.5,"margin":1,"odds":"+110","homeOdds":"+110","awayOdds":"-135","homeScore":99,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-77","label":"Cleveland Cavaliers vs Chicago Bulls","date":"2025-12-19","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-169","homeOdds":"-169","awayOdds":"+140","homeScore":125,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-78","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"-123","homeScore":96,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-79","label":"Golden State Warriors vs Phoenix Suns","date":"2025-12-20","outcome":"win","profit":0.4,"context":{"spread":-6.5,"margin":3,"odds":"-250","homeOdds":"-250","awayOdds":"+200","homeScore":119,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-80","label":"Sacramento Kings vs Portland Trail Blazers","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-5,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":93,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-81","label":"LA Clippers vs Los Angeles Lakers","date":"2025-12-20","outcome":"win","profit":1,"context":{"spread":1.5,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":103,"awayScore":88,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-82","label":"Washington Wizards vs San Antonio Spurs","date":"2025-12-21","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-11,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-83","label":"Sacramento Kings vs Houston Rockets","date":"2025-12-21","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-84","label":"Cleveland Cavaliers vs Charlotte Hornets","date":"2025-12-22","outcome":"win","profit":1,"context":{"spread":0,"margin":7,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-85","label":"Atlanta Hawks vs Chicago Bulls","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":123,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-86","label":"Indiana Pacers vs Milwaukee Bucks","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-17,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-87","label":"Miami Heat vs Toronto Raptors","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-21,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":91,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-88","label":"Utah Jazz vs Memphis Grizzlies","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-9,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":128,"awayScore":137,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-89","label":"Los Angeles Lakers vs Houston Rockets","date":"2025-12-25","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-135","homeOdds":"-135","awayOdds":"+115","homeScore":96,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-90","label":"Atlanta Hawks vs Miami Heat","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":111,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-91","label":"Washington Wizards vs Toronto Raptors","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":138,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-92","label":"Indiana Pacers vs Boston Celtics","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-18,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":140,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-93","label":"Memphis Grizzlies vs Milwaukee Bucks","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-94","label":"Utah Jazz vs Detroit Pistons","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":131,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-95","label":"Portland Trail Blazers vs LA Clippers","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":103,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-96","label":"Orlando Magic vs Denver Nuggets","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-97","label":"Atlanta Hawks vs New York Knicks","date":"2025-12-27","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-98","label":"Miami Heat vs Indiana Pacers","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":26,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":142,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-99","label":"Toronto Raptors vs Golden State Warriors","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":14,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":141,"awayScore":127,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-100","label":"Portland Trail Blazers vs Boston Celtics","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":6,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":108,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-101","label":"Los Angeles Lakers vs Sacramento Kings","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":101,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-102","label":"New Orleans Pelicans vs New York Knicks","date":"2025-12-29","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-103","label":"Atlanta Hawks vs Minnesota Timberwolves","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-104","label":"Indiana Pacers vs Orlando Magic","date":"2025-12-31","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":110,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-105","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-106","label":"San Antonio Spurs vs New York Knicks","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-107","label":"Indiana Pacers vs San Antonio Spurs","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-108","label":"Milwaukee Bucks vs Charlotte Hornets","date":"2026-01-02","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-109","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}}]','{"total_trades":110,"wins":48,"win_rate":44,"total_profit":-11.8498,"avg_return":-0.1077,"roi_percent":-10.77,"profit_factor":0.81,"sharpe_ratio":-0.1,"max_drawdown":19.99,"max_drawdown_pct":636.09,"ats_record":null}','{"notes":["Evaluated 512 games from BallDontLie API","Bounce after 2+ losses: 110 games","ATS Record: 0-74 (0.0% cover rate)"],"rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5},"datasetSize":512,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767477106149,NULL,1767477106142,0);
INSERT INTO backtest_results VALUES('cmk00htq5000ad840fxtwdtxq',NULL,'test123','nba','Strategy Overview',replace('import requests\012from collections import defaultdict\012from datetime import datetime\012import matplotlib.pyplot as plt\012import numpy as np\012\012print("WARNING: Parlays are high-risk, high-variance bets. All legs must win for payout. This is for backtesting only - bet responsibly.")\012\012def backtest_3leg_nba_parlay_favorites(season="2024"):\012    # Fetch teams\012    teams_url = "https://www.balldontlie.io/api/v1/teams"\012    teams = requests.get(teams_url).json()[''data'']\012    team_map = {t[''id'']: t[''full_name''] for t in teams}\012\012    # Fetch regular season games\012    games = []\012    start_date = f"{season}-10-01"\012    end_date = f"{season+1}-06-30"\012    page = 0\012    per_page = 100\012    while True:\012        url = f"https://www.balldontlie.io/api/v1/games?seasons[]={season}&postseason=false&start_date={start_date}&end_date={end_date}&per_page={per_page}&page={page}"\012        resp = requests.get(url).json()\012        games.extend(resp[''data''])\012        if len(resp[''data'']) < per_page:\012            break\012        page += 1\012\012    # Process completed games\012    game_list = []\012    for g in games:\012        if g.get(''status_abbreviation'') == ''Final'' and g.get(''home_score'') is not None and g.get(''visitor_score'') is not None:\012            home_win = g[''home_score''] > g[''visitor_score'']\012            game_list.append({\012                ''id'': g[''id''],\012                ''date'': g[''date''][:10],\012                ''game_date'': datetime.fromisoformat(g[''date''][:19]),\012                ''home_id'': g[''home_team''][''id''],\012                ''visitor_id'': g[''visitor_team''][''id''],\012                ''home_score'': g[''home_score''],\012                ''visitor_score'': g[''visitor_score''],\012                ''home_win'': home_win\012            })\012\012    game_list.sort(key=lambda x: x[''game_date''])\012\012    # Backtest\012    team_wins = defaultdict(int)\012    team_losses = defaultdict(int)\012    bankroll = 1000.0\012    stake = 10.0\012    fav_decimal_odds = 1.67  # -150\012    bets = []\012    bankroll_history = [bankroll]\012\012    i = 0\012    while i < len(game_list):\012        curr_date = game_list[i][''date'']\012        day_games = []\012        while i < len(game_list) and game_list[i][''date''] == curr_date:\012            day_games.append(game_list[i])\012            i += 1\012\012        # Potential legs pre-day games\012        legs = []\012        for game in day_games:\012            h_id = game[''home_id'']\012            v_id = game[''visitor_id'']\012            h_games = team_wins[h_id] + team_losses[h_id]\012            v_games = team_wins[v_id] + team_losses[v_id]\012            h_pct = team_wins[h_id] / h_games if h_games > 0 else 0.5\012            v_pct = team_wins[v_id] / v_games if v_games > 0 else 0.5\012            h_adj_pct = h_pct + 0.03  # home advantage\012\012            if h_adj_pct > v_pct + 0.05:\012                legs.append({\012                    ''game_id'': game[''id''],\012                    ''fav_side'': ''home'',\012                    ''win_pct_diff'': h_adj_pct - v_pct,\012                    ''game'': game,\012                    ''fav_team_name'': team_map[h_id]\012                })\012            elif v_pct > h_adj_pct + 0.05:\012                legs.append({\012                    ''game_id'': game[''id''],\012                    ''fav_side'': ''visitor'',\012                    ''win_pct_diff'': v_pct - h_adj_pct,\012                    ''game'': game,\012                    ''fav_team_name'': team_map[v_id]\012                })\012\012        # 3-leg parlay if possible\012        if len(legs) >= 3:\012            legs.sort(key=lambda x: x[''win_pct_diff''], reverse=True)\012            top_legs = legs[:3]\012\012            combined_odds = fav_decimal_odds ** 3\012            american_odds = round((combined_odds - 1) * 100)\012\012            # Simulate outcome\012            all_won = all(\012                top_legs[j][''game''][''home_win''] if top_legs[j][''fav_side''] == ''home''\012                else not top_legs[j][''game''][''home_win'']\012                for j in range(3)\012            )\012\012            payout = stake * combined_odds if all_won else 0\012            profit = payout - stake\012            bankroll += profit\012\012            bet = {\012                ''date'': curr_date,\012                ''legs'': [leg[''fav_team_name''] for leg in top_legs],\012                ''stake'': stake,\012                ''payout'': payout,\012                ''profit'': profit,\012                ''won'': all_won,\012                ''combined_odds'': f"+{american_odds}"\012            }\012            bets.append(bet)\012\012        bankroll_history.append(bankroll)\012\012        # Update records post-day\012        for game in day_games:\012            h_id = game[''home_id'']\012            v_id = game[''visitor_id'']\012            if game[''home_win'']:\012                team_wins[h_id] += 1\012                team_losses[v_id] += 1\012            else:\012                team_wins[v_id] += 1\012                team_losses[h_id] += 1\012\012    # Metrics\012    num_bets = len(bets)\012    num_wins = sum(b[''won''] for b in bets)\012    win_rate = (num_wins / num_bets * 100) if num_bets else 0\012    total_profit = bankroll - 1000\012    total_staked = num_bets * stake\012    roi = (total_profit / total_staked * 100) if total_staked else 0\012\012    print(f"\n=== 3-Leg NBA Moneyline Favorites Parlay Backtest - {season}-{int(season)+1} Season ===")\012    print(f"Initial Bankroll: $1000.00")\012    print(f"Final Bankroll: ${bankroll:.2f}")\012    print(f"Total Profit/Loss: ${total_profit:.2f}")\012    print(f"Total Parlays Placed: {num_bets}")\012    print(f"Parlay Wins: {num_wins} ({win_rate:.1f}%)")\012    print(f"Total Staked: ${total_staked:.2f}")\012    print(f"ROI: {roi:.1f}%")\012    print(f"Assumed Leg Odds: -150 (1.67 decimal) | 3-Leg Parlay: ~+{int((fav_decimal_odds**3-1)*100)}")\012\012    # Profit curve chart\012    plt.figure(figsize=(12, 6))\012    plt.plot(bankroll_history, linewidth=2, color=''green'')\012    plt.title(''Bankroll Progression - 3-Leg NBA Favorites Parlay Backtest'')\012    plt.xlabel(''Trading Days'')\012    plt.ylabel(''Bankroll ($)'')\012    plt.grid(True, alpha=0.3)\012    plt.axhline(y=1000, color=''red'', linestyle=''--'', alpha=0.7, label=''Initial Bankroll'')\012    plt.legend()\012    plt.tight_layout()\012    plt.show()\012\012    return bets\012\012# Run backtest\012backtest_3leg_nba_parlay_favorites("2024")','\012',char(10)),'{"prompt":"Backtest a 3-leg NBA parlay strategy betting on moneyline favorites for the 2024 season","domain":"sports","conversationId":"cmk00eb5w0001d840clchztjb"}',NULL,NULL,'{"success":true,"sport":"nba","market":"nba","strategy_name":"parlay","parlay_size":3,"stake_per_parlay":10,"total_trades":0,"win_rate":0,"total_profit":0,"roi":0,"results":{"win_rate":0,"total_profit":0,"profit_factor":0,"sharpe_ratio":0,"max_drawdown":0},"performance_summary":"✅ Parlay backtest complete (NBA)\nLeg rule: moneyline legs\nParlay size: 3 legs | Stake: $10.00 per parlay\nTrades: 0 parlays (1 per day max)\nWin rate: 0% | ROI: 0% | Total P&L: $0.00\nNote: Parlays have high variance; small edges can swing results dramatically.","data_warnings":[],"all_trades":[],"trades":[],"detailed_statistics":{"trade_analysis":{"total_trades":0,"winning_trades":0,"losing_trades":0,"win_rate_percent":0},"profit_loss_analysis":{"total_profit":0,"biggest_win":0,"biggest_loss":0,"smallest_win":0,"smallest_loss":0,"average_win":0,"average_loss":0},"risk_metrics":{"sharpe_ratio":0,"max_drawdown":0,"profit_volatility":0},"ratios_and_factors":{"profit_factor":0,"win_loss_ratio":0,"expectancy_per_trade":0,"kelly_fraction_percent":0,"recovery_factor":0},"streak_analysis":{"max_win_streak":0,"max_loss_streak":0,"avg_win_streak":0,"avg_loss_streak":0,"current_streak_type":null,"current_streak_length":0}},"chart_visualization":{"labels":[],"datasets":[{"label":"Cumulative Profit","data":[],"borderColor":"#60a5fa","backgroundColor":"rgba(96,165,250,0.15)"}],"summary":{"total_trades":0,"total_profit":0,"win_rate":0,"roi":0}},"verification_data":{"data_source":"BallDontLie API","calculation_method":"Parlay backtest (daily top-N qualifying legs) using American→Decimal odds conversion","verification_status":"computed","timestamp":"2026-01-04T17:34:48.455Z"}}','[]','{"win_rate":0,"total_profit":0,"profit_factor":0,"sharpe_ratio":0,"max_drawdown":0}','{"trade_analysis":{"total_trades":0,"winning_trades":0,"losing_trades":0,"win_rate_percent":0},"profit_loss_analysis":{"total_profit":0,"biggest_win":0,"biggest_loss":0,"smallest_win":0,"smallest_loss":0,"average_win":0,"average_loss":0},"risk_metrics":{"sharpe_ratio":0,"max_drawdown":0,"profit_volatility":0},"ratios_and_factors":{"profit_factor":0,"win_loss_ratio":0,"expectancy_per_trade":0,"kelly_fraction_percent":0,"recovery_factor":0},"streak_analysis":{"max_win_streak":0,"max_loss_streak":0,"avg_win_streak":0,"avg_loss_streak":0,"current_streak_type":null,"current_streak_length":0}}','{"labels":[],"datasets":[{"label":"Cumulative Profit","data":[],"borderColor":"#60a5fa","backgroundColor":"rgba(96,165,250,0.15)"}],"summary":{"total_trades":0,"total_profit":0,"win_rate":0,"roi":0}}','COMPLETED',NULL,NULL,1767548088509,NULL,1767548088507,0);
INSERT INTO backtest_results VALUES('cmk01oc6s001md8406nkukk9v',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA seasonTest NBA moneyline favorites strategy for 2024","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767550071988,NULL,1767550071987,0);
INSERT INTO backtest_results VALUES('cmk01qno1001qd8405jyt6696',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA season","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767550180178,NULL,1767550180177,0);
INSERT INTO backtest_results VALUES('cmk01son1001ud8403dk0lab1',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA season","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767550274749,NULL,1767550274746,0);
INSERT INTO backtest_results VALUES('cmk01ui0y001yd840p0rlhqt4',NULL,'test123','nba','Bet on teams that lost their last 2 games if their point dif…',NULL,'{"prompt":"Bet on teams that lost their last 2 games if their point differential was under -5 in the 2024 NBA season.","domain":"sports","sportFilter":"nba","rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5}}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on teams that lost their last 2 games if their point dif…","total_trades":110,"wins":48,"win_rate":44,"total_profit":-10.9929,"results":{"total_trades":110,"wins":48,"win_rate":44,"total_profit":-10.9929,"avg_return":-0.0999,"roi_percent":-9.99,"profit_factor":0.82,"sharpe_ratio":-0.09,"max_drawdown":19.99,"max_drawdown_pct":499.82,"ats_record":null},"all_trades":[{"id":"sports-trade-0","label":"Dallas Mavericks vs Toronto Raptors","date":"2025-10-26","outcome":"win","profit":1,"context":{"spread":0,"margin":10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-1","label":"Indiana Pacers vs Golden State Warriors","date":"2025-11-01","outcome":"win","profit":1,"context":{"spread":0,"margin":5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":109,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-2","label":"Washington Wizards vs Orlando Magic","date":"2025-11-01","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-31,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-3","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":105,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-4","label":"Charlotte Hornets vs Utah Jazz","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":23,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-5","label":"Toronto Raptors vs Memphis Grizzlies","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":117,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-6","label":"Brooklyn Nets vs Minnesota Timberwolves","date":"2025-11-03","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-7","label":"Atlanta Hawks vs Orlando Magic","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-8","label":"New Orleans Pelicans vs Charlotte Hornets","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":4,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":116,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-9","label":"Boston Celtics vs Washington Wizards","date":"2025-11-05","outcome":"win","profit":1,"context":{"spread":0,"margin":29,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":136,"awayScore":107,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-10","label":"Memphis Grizzlies vs Houston Rockets","date":"2025-11-05","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-11","label":"Orlando Magic vs Boston Celtics","date":"2025-11-07","outcome":"win","profit":0.6289,"context":{"spread":-4.5,"margin":13,"odds":"-159","homeOdds":"-159","awayOdds":"+135","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-12","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":13.5,"margin":-33,"odds":"+550","homeOdds":"+550","awayOdds":"-769","homeScore":115,"awayScore":148,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-13","label":"Brooklyn Nets vs Detroit Pistons","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-18,"odds":"+370","homeOdds":"+370","awayOdds":"-476","homeScore":107,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-14","label":"Memphis Grizzlies vs Dallas Mavericks","date":"2025-11-07","outcome":"win","profit":0.5587,"context":{"spread":-4.5,"margin":14,"odds":"-179","homeOdds":"-179","awayOdds":"+150","homeScore":118,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-15","label":"Minnesota Timberwolves vs Utah Jazz","date":"2025-11-07","outcome":"win","profit":0.1479,"context":{"spread":-12.5,"margin":40,"odds":"-676","homeOdds":"-676","awayOdds":"+490","homeScore":137,"awayScore":97,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-16","label":"Washington Wizards vs Dallas Mavericks","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-6,"odds":"+152","homeOdds":"+152","awayOdds":"-180","homeScore":105,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-17","label":"LA Clippers vs Phoenix Suns","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-185","homeOdds":"-185","awayOdds":"+155","homeScore":103,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-18","label":"LA Clippers vs Atlanta Hawks","date":"2025-11-10","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-3,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":102,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-19","label":"Brooklyn Nets vs Toronto Raptors","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-10,"odds":"+350","homeOdds":"+350","awayOdds":"-474","homeScore":109,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-20","label":"Utah Jazz vs Indiana Pacers","date":"2025-11-11","outcome":"win","profit":1.18,"context":{"spread":2.5,"margin":24,"odds":"+118","homeOdds":"+118","awayOdds":"-139","homeScore":152,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-21","label":"Sacramento Kings vs Denver Nuggets","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-14,"odds":"+280","homeOdds":"+280","awayOdds":"-370","homeScore":108,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-22","label":"Dallas Mavericks vs Phoenix Suns","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":2,"margin":-9,"odds":"+110","homeOdds":"+110","awayOdds":"-130","homeScore":114,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-23","label":"Sacramento Kings vs Atlanta Hawks","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-33,"odds":"+148","homeOdds":"+148","awayOdds":"-175","homeScore":100,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-24","label":"LA Clippers vs Denver Nuggets","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-14,"odds":"+156","homeOdds":"+156","awayOdds":"-186","homeScore":116,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-25","label":"Dallas Mavericks vs LA Clippers","date":"2025-11-14","outcome":"loss","profit":-1,"context":{"spread":3,"margin":-6,"odds":"+130","homeOdds":"+130","awayOdds":"-154","homeScore":127,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-26","label":"Indiana Pacers vs Toronto Raptors","date":"2025-11-15","outcome":"loss","profit":-1,"context":{"spread":5.5,"margin":-18,"odds":"+190","homeOdds":"+190","awayOdds":"-238","homeScore":111,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-27","label":"San Antonio Spurs vs Sacramento Kings","date":"2025-11-16","outcome":"win","profit":0.4202,"context":{"spread":-6.5,"margin":13,"odds":"-238","homeOdds":"-238","awayOdds":"+195","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-28","label":"Washington Wizards vs Brooklyn Nets","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-137","homeOdds":"-137","awayOdds":"+117","homeScore":106,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-29","label":"New Orleans Pelicans vs Golden State Warriors","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":11,"margin":-18,"odds":"+400","homeOdds":"+400","awayOdds":"-521","homeScore":106,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-30","label":"Dallas Mavericks vs Portland Trail Blazers","date":"2025-11-16","outcome":"win","profit":1.34,"context":{"spread":3,"margin":5,"odds":"+134","homeOdds":"+134","awayOdds":"-158","homeScore":138,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-31","label":"New Orleans Pelicans vs Oklahoma City Thunder","date":"2025-11-17","outcome":"loss","profit":-1,"context":{"spread":18.5,"margin":-17,"odds":"+900","homeOdds":"+900","awayOdds":"-1667","homeScore":109,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-32","label":"Brooklyn Nets vs Boston Celtics","date":"2025-11-18","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-14,"odds":"+425","homeOdds":"+425","awayOdds":"-575","homeScore":99,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-33","label":"Indiana Pacers vs Charlotte Hornets","date":"2025-11-19","outcome":"win","profit":1.15,"context":{"spread":2,"margin":9,"odds":"+115","homeOdds":"+115","awayOdds":"-137","homeScore":127,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-34","label":"New Orleans Pelicans vs Denver Nuggets","date":"2025-11-19","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-7,"odds":"+400","homeOdds":"+400","awayOdds":"-526","homeScore":118,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-35","label":"New Orleans Pelicans vs Atlanta Hawks","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":9.5,"margin":-17,"odds":"+350","homeOdds":"+350","awayOdds":"-450","homeScore":98,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-36","label":"Chicago Bulls vs Washington Wizards","date":"2025-11-22","outcome":"win","profit":0.1541,"context":{"spread":-12.5,"margin":1,"odds":"-649","homeOdds":"-649","awayOdds":"+480","homeScore":121,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-37","label":"Milwaukee Bucks vs Detroit Pistons","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-13,"odds":"+280","homeOdds":"+280","awayOdds":"-345","homeScore":116,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-38","label":"Brooklyn Nets vs New York Knicks","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":12.5,"margin":-13,"odds":"+500","homeOdds":"+500","awayOdds":"-769","homeScore":100,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-39","label":"Milwaukee Bucks vs Portland Trail Blazers","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":-1,"margin":-12,"odds":"-112","homeOdds":"-112","awayOdds":"-104","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-40","label":"New Orleans Pelicans vs Chicago Bulls","date":"2025-11-24","outcome":"win","profit":1.65,"context":{"spread":4.5,"margin":13,"odds":"+165","homeOdds":"+165","awayOdds":"-200","homeScore":143,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-41","label":"Sacramento Kings vs Minnesota Timberwolves","date":"2025-11-24","outcome":"win","profit":3.75,"context":{"spread":10.5,"margin":5,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":117,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-42","label":"Washington Wizards vs Atlanta Hawks","date":"2025-11-25","outcome":"win","profit":3.6,"context":{"spread":10.5,"margin":19,"odds":"+360","homeOdds":"+360","awayOdds":"-500","homeScore":132,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-43","label":"Philadelphia 76ers vs Orlando Magic","date":"2025-11-25","outcome":"loss","profit":-1,"context":{"spread":4,"margin":-41,"odds":"+160","homeOdds":"+160","awayOdds":"-192","homeScore":103,"awayScore":144,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-44","label":"Charlotte Hornets vs New York Knicks","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-28,"odds":"+222","homeOdds":"+222","awayOdds":"-278","homeScore":101,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-45","label":"Portland Trail Blazers vs San Antonio Spurs","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":-1.5,"margin":-13,"odds":"-115","homeOdds":"-115","awayOdds":"-105","homeScore":102,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-46","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":7.5,"margin":-12,"odds":"+215","homeOdds":"+215","awayOdds":"-267","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-47","label":"Charlotte Hornets vs Chicago Bulls","date":"2025-11-28","outcome":"win","profit":1.18,"context":{"spread":3,"margin":7,"odds":"+118","homeOdds":"+118","awayOdds":"-138","homeScore":123,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-48","label":"Denver Nuggets vs San Antonio Spurs","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-7,"margin":-3,"odds":"-286","homeOdds":"-286","awayOdds":"+230","homeScore":136,"awayScore":139,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-49","label":"Utah Jazz vs Sacramento Kings","date":"2025-11-28","outcome":"win","profit":0.7042,"context":{"spread":-2.5,"margin":9,"odds":"-142","homeOdds":"-142","awayOdds":"+120","homeScore":128,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-50","label":"LA Clippers vs Memphis Grizzlies","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-6.5,"margin":-5,"odds":"-270","homeOdds":"-270","awayOdds":"+220","homeScore":107,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-51","label":"Milwaukee Bucks vs Brooklyn Nets","date":"2025-11-29","outcome":"win","profit":0.1669,"context":{"spread":-11.5,"margin":17,"odds":"-599","homeOdds":"-599","awayOdds":"+425","homeScore":116,"awayScore":99,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-52","label":"LA Clippers vs Dallas Mavericks","date":"2025-11-29","outcome":"loss","profit":-1,"context":{"spread":-9.5,"margin":-4,"odds":"-385","homeOdds":"-385","awayOdds":"+300","homeScore":110,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-53","label":"Philadelphia 76ers vs Atlanta Hawks","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-8,"odds":"-144","homeOdds":"-144","awayOdds":"+122","homeScore":134,"awayScore":142,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-54","label":"Portland Trail Blazers vs Oklahoma City Thunder","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-8,"odds":"+450","homeOdds":"+450","awayOdds":"-625","homeScore":115,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-55","label":"Brooklyn Nets vs Charlotte Hornets","date":"2025-12-01","outcome":"win","profit":1.68,"context":{"spread":4.5,"margin":13,"odds":"+168","homeOdds":"+168","awayOdds":"-200","homeScore":116,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-56","label":"Denver Nuggets vs Dallas Mavericks","date":"2025-12-01","outcome":"loss","profit":-1,"context":{"spread":-11.5,"margin":-10,"odds":"-521","homeOdds":"-521","awayOdds":"+400","homeScore":121,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-57","label":"Philadelphia 76ers vs Washington Wizards","date":"2025-12-02","outcome":"win","profit":0.125,"context":{"spread":-13.5,"margin":19,"odds":"-800","homeOdds":"-800","awayOdds":"+550","homeScore":121,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-58","label":"New Orleans Pelicans vs Minnesota Timberwolves","date":"2025-12-04","outcome":"loss","profit":-1,"context":{"spread":12,"margin":-9,"odds":"+450","homeOdds":"+450","awayOdds":"-599","homeScore":116,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-59","label":"Cleveland Cavaliers vs San Antonio Spurs","date":"2025-12-05","outcome":"win","profit":0.5,"context":{"spread":-5,"margin":13,"odds":"-200","homeOdds":"-200","awayOdds":"+165","homeScore":130,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-60","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":3.5,"margin":-8,"odds":"+130","homeOdds":"+130","awayOdds":"-155","homeScore":113,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-61","label":"Chicago Bulls vs Golden State Warriors","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-32,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":91,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-62","label":"Indiana Pacers vs Sacramento Kings","date":"2025-12-08","outcome":"win","profit":0.5882,"context":{"spread":-3.5,"margin":11,"odds":"-170","homeOdds":"-170","awayOdds":"+140","homeScore":116,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-63","label":"New Orleans Pelicans vs San Antonio Spurs","date":"2025-12-08","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-3,"odds":"+300","homeOdds":"+300","awayOdds":"-400","homeScore":132,"awayScore":135,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-64","label":"Toronto Raptors vs New York Knicks","date":"2025-12-09","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-16,"odds":"+200","homeOdds":"+200","awayOdds":"-250","homeScore":101,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-65","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2025-12-11","outcome":"win","profit":1.43,"context":{"spread":4,"margin":23,"odds":"+143","homeOdds":"+143","awayOdds":"-170","homeScore":143,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-66","label":"Sacramento Kings vs Denver Nuggets","date":"2025-12-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-31,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":105,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-67","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-12-12","outcome":"loss","profit":-1,"context":{"spread":16,"margin":-4,"odds":"+700","homeOdds":"+700","awayOdds":"-1111","homeScore":126,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-68","label":"Atlanta Hawks vs Philadelphia 76ers","date":"2025-12-14","outcome":"win","profit":0.5556,"context":{"spread":-4.5,"margin":3,"odds":"-180","homeOdds":"-180","awayOdds":"+145","homeScore":120,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-69","label":"Portland Trail Blazers vs Golden State Warriors","date":"2025-12-14","outcome":"win","profit":1.7,"context":{"spread":5.5,"margin":5,"odds":"+170","homeOdds":"+170","awayOdds":"-210","homeScore":136,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-70","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-10,"odds":"-190","homeOdds":"-190","awayOdds":"+154","homeScore":104,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-71","label":"Phoenix Suns vs Los Angeles Lakers","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-72","label":"Denver Nuggets vs Houston Rockets","date":"2025-12-15","outcome":"win","profit":0.9174,"context":{"spread":-1,"margin":3,"odds":"-109","homeOdds":"-109","awayOdds":"-108","homeScore":128,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-73","label":"LA Clippers vs Memphis Grizzlies","date":"2025-12-15","outcome":"loss","profit":-1,"context":{"spread":-5.5,"margin":-18,"odds":"-220","homeOdds":"-220","awayOdds":"+180","homeScore":103,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-74","label":"Chicago Bulls vs Cleveland Cavaliers","date":"2025-12-17","outcome":"win","profit":1.88,"context":{"spread":5.5,"margin":16,"odds":"+188","homeOdds":"+188","awayOdds":"-220","homeScore":127,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-75","label":"Charlotte Hornets vs Atlanta Hawks","date":"2025-12-18","outcome":"win","profit":1.5,"context":{"spread":4.5,"margin":7,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":133,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-76","label":"Phoenix Suns vs Golden State Warriors","date":"2025-12-18","outcome":"win","profit":1.1,"context":{"spread":1.5,"margin":1,"odds":"+110","homeOdds":"+110","awayOdds":"-135","homeScore":99,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-77","label":"Cleveland Cavaliers vs Chicago Bulls","date":"2025-12-19","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-169","homeOdds":"-169","awayOdds":"+140","homeScore":125,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-78","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"-123","homeScore":96,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-79","label":"Golden State Warriors vs Phoenix Suns","date":"2025-12-20","outcome":"win","profit":0.4,"context":{"spread":-6.5,"margin":3,"odds":"-250","homeOdds":"-250","awayOdds":"+200","homeScore":119,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-80","label":"Sacramento Kings vs Portland Trail Blazers","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-5,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":93,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-81","label":"LA Clippers vs Los Angeles Lakers","date":"2025-12-20","outcome":"win","profit":1,"context":{"spread":1.5,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":103,"awayScore":88,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-82","label":"Washington Wizards vs San Antonio Spurs","date":"2025-12-21","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-11,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-83","label":"Sacramento Kings vs Houston Rockets","date":"2025-12-21","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-84","label":"Cleveland Cavaliers vs Charlotte Hornets","date":"2025-12-22","outcome":"win","profit":1,"context":{"spread":0,"margin":7,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-85","label":"Atlanta Hawks vs Chicago Bulls","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":123,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-86","label":"Indiana Pacers vs Milwaukee Bucks","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-17,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-87","label":"Miami Heat vs Toronto Raptors","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-21,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":91,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-88","label":"Utah Jazz vs Memphis Grizzlies","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-9,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":128,"awayScore":137,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-89","label":"Los Angeles Lakers vs Houston Rockets","date":"2025-12-25","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-135","homeOdds":"-135","awayOdds":"+115","homeScore":96,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-90","label":"Atlanta Hawks vs Miami Heat","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":111,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-91","label":"Washington Wizards vs Toronto Raptors","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":138,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-92","label":"Indiana Pacers vs Boston Celtics","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-18,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":140,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-93","label":"Memphis Grizzlies vs Milwaukee Bucks","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-94","label":"Utah Jazz vs Detroit Pistons","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":131,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-95","label":"Portland Trail Blazers vs LA Clippers","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":103,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-96","label":"Orlando Magic vs Denver Nuggets","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-97","label":"Atlanta Hawks vs New York Knicks","date":"2025-12-27","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-98","label":"Miami Heat vs Indiana Pacers","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":26,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":142,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-99","label":"Toronto Raptors vs Golden State Warriors","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":14,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":141,"awayScore":127,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-100","label":"Portland Trail Blazers vs Boston Celtics","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":6,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":108,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-101","label":"Los Angeles Lakers vs Sacramento Kings","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":101,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-102","label":"New Orleans Pelicans vs New York Knicks","date":"2025-12-29","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-103","label":"Atlanta Hawks vs Minnesota Timberwolves","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-104","label":"Indiana Pacers vs Orlando Magic","date":"2025-12-31","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":110,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-105","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-106","label":"San Antonio Spurs vs New York Knicks","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-107","label":"Indiana Pacers vs San Antonio Spurs","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-108","label":"Milwaukee Bucks vs Charlotte Hornets","date":"2026-01-02","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-109","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}}],"detailed_statistics":{"notes":["Evaluated 520 games from BallDontLie API","Bounce after 2+ losses: 110 games","ATS Record: 0-72 (0.0% cover rate)"],"rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5},"datasetSize":520,"sportFilter":"nba"}}','[{"id":"sports-trade-0","label":"Dallas Mavericks vs Toronto Raptors","date":"2025-10-26","outcome":"win","profit":1,"context":{"spread":0,"margin":10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-1","label":"Indiana Pacers vs Golden State Warriors","date":"2025-11-01","outcome":"win","profit":1,"context":{"spread":0,"margin":5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":109,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-2","label":"Washington Wizards vs Orlando Magic","date":"2025-11-01","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-31,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-3","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":105,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-4","label":"Charlotte Hornets vs Utah Jazz","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":23,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-5","label":"Toronto Raptors vs Memphis Grizzlies","date":"2025-11-02","outcome":"win","profit":1,"context":{"spread":0,"margin":13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":117,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-6","label":"Brooklyn Nets vs Minnesota Timberwolves","date":"2025-11-03","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-7","label":"Atlanta Hawks vs Orlando Magic","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-8","label":"New Orleans Pelicans vs Charlotte Hornets","date":"2025-11-04","outcome":"win","profit":1,"context":{"spread":0,"margin":4,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":116,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-9","label":"Boston Celtics vs Washington Wizards","date":"2025-11-05","outcome":"win","profit":1,"context":{"spread":0,"margin":29,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":136,"awayScore":107,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-10","label":"Memphis Grizzlies vs Houston Rockets","date":"2025-11-05","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-11","label":"Orlando Magic vs Boston Celtics","date":"2025-11-07","outcome":"win","profit":0.6289,"context":{"spread":-4.5,"margin":13,"odds":"-159","homeOdds":"-159","awayOdds":"+135","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-12","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":13.5,"margin":-33,"odds":"+550","homeOdds":"+550","awayOdds":"-769","homeScore":115,"awayScore":148,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-13","label":"Brooklyn Nets vs Detroit Pistons","date":"2025-11-07","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-18,"odds":"+370","homeOdds":"+370","awayOdds":"-476","homeScore":107,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-14","label":"Memphis Grizzlies vs Dallas Mavericks","date":"2025-11-07","outcome":"win","profit":0.5587,"context":{"spread":-4.5,"margin":14,"odds":"-179","homeOdds":"-179","awayOdds":"+150","homeScore":118,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-15","label":"Minnesota Timberwolves vs Utah Jazz","date":"2025-11-07","outcome":"win","profit":0.1479,"context":{"spread":-12.5,"margin":40,"odds":"-676","homeOdds":"-676","awayOdds":"+490","homeScore":137,"awayScore":97,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-16","label":"Washington Wizards vs Dallas Mavericks","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-6,"odds":"+152","homeOdds":"+152","awayOdds":"-180","homeScore":105,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-17","label":"LA Clippers vs Phoenix Suns","date":"2025-11-08","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-185","homeOdds":"-185","awayOdds":"+155","homeScore":103,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-18","label":"LA Clippers vs Atlanta Hawks","date":"2025-11-10","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-3,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":102,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-19","label":"Brooklyn Nets vs Toronto Raptors","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-10,"odds":"+350","homeOdds":"+350","awayOdds":"-474","homeScore":109,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-20","label":"Utah Jazz vs Indiana Pacers","date":"2025-11-11","outcome":"win","profit":1.18,"context":{"spread":2.5,"margin":24,"odds":"+118","homeOdds":"+118","awayOdds":"-139","homeScore":152,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-21","label":"Sacramento Kings vs Denver Nuggets","date":"2025-11-11","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-14,"odds":"+280","homeOdds":"+280","awayOdds":"-370","homeScore":108,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-22","label":"Dallas Mavericks vs Phoenix Suns","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":2,"margin":-9,"odds":"+110","homeOdds":"+110","awayOdds":"-130","homeScore":114,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-23","label":"Sacramento Kings vs Atlanta Hawks","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-33,"odds":"+148","homeOdds":"+148","awayOdds":"-175","homeScore":100,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-24","label":"LA Clippers vs Denver Nuggets","date":"2025-11-12","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-14,"odds":"+156","homeOdds":"+156","awayOdds":"-186","homeScore":116,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-25","label":"Dallas Mavericks vs LA Clippers","date":"2025-11-14","outcome":"loss","profit":-1,"context":{"spread":3,"margin":-6,"odds":"+130","homeOdds":"+130","awayOdds":"-154","homeScore":127,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-26","label":"Indiana Pacers vs Toronto Raptors","date":"2025-11-15","outcome":"loss","profit":-1,"context":{"spread":5.5,"margin":-18,"odds":"+190","homeOdds":"+190","awayOdds":"-238","homeScore":111,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-27","label":"San Antonio Spurs vs Sacramento Kings","date":"2025-11-16","outcome":"win","profit":0.4202,"context":{"spread":-6.5,"margin":13,"odds":"-238","homeOdds":"-238","awayOdds":"+195","homeScore":123,"awayScore":110,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-28","label":"Washington Wizards vs Brooklyn Nets","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-137","homeOdds":"-137","awayOdds":"+117","homeScore":106,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-29","label":"New Orleans Pelicans vs Golden State Warriors","date":"2025-11-16","outcome":"loss","profit":-1,"context":{"spread":11,"margin":-18,"odds":"+400","homeOdds":"+400","awayOdds":"-521","homeScore":106,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-30","label":"Dallas Mavericks vs Portland Trail Blazers","date":"2025-11-16","outcome":"win","profit":1.34,"context":{"spread":3,"margin":5,"odds":"+134","homeOdds":"+134","awayOdds":"-158","homeScore":138,"awayScore":133,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-31","label":"New Orleans Pelicans vs Oklahoma City Thunder","date":"2025-11-17","outcome":"loss","profit":-1,"context":{"spread":18.5,"margin":-17,"odds":"+900","homeOdds":"+900","awayOdds":"-1667","homeScore":109,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-32","label":"Brooklyn Nets vs Boston Celtics","date":"2025-11-18","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-14,"odds":"+425","homeOdds":"+425","awayOdds":"-575","homeScore":99,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-33","label":"Indiana Pacers vs Charlotte Hornets","date":"2025-11-19","outcome":"win","profit":1.15,"context":{"spread":2,"margin":9,"odds":"+115","homeOdds":"+115","awayOdds":"-137","homeScore":127,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-34","label":"New Orleans Pelicans vs Denver Nuggets","date":"2025-11-19","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-7,"odds":"+400","homeOdds":"+400","awayOdds":"-526","homeScore":118,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-35","label":"New Orleans Pelicans vs Atlanta Hawks","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":9.5,"margin":-17,"odds":"+350","homeOdds":"+350","awayOdds":"-450","homeScore":98,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-36","label":"Chicago Bulls vs Washington Wizards","date":"2025-11-22","outcome":"win","profit":0.1541,"context":{"spread":-12.5,"margin":1,"odds":"-649","homeOdds":"-649","awayOdds":"+480","homeScore":121,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-37","label":"Milwaukee Bucks vs Detroit Pistons","date":"2025-11-22","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-13,"odds":"+280","homeOdds":"+280","awayOdds":"-345","homeScore":116,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-38","label":"Brooklyn Nets vs New York Knicks","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":12.5,"margin":-13,"odds":"+500","homeOdds":"+500","awayOdds":"-769","homeScore":100,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-39","label":"Milwaukee Bucks vs Portland Trail Blazers","date":"2025-11-24","outcome":"loss","profit":-1,"context":{"spread":-1,"margin":-12,"odds":"-112","homeOdds":"-112","awayOdds":"-104","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-40","label":"New Orleans Pelicans vs Chicago Bulls","date":"2025-11-24","outcome":"win","profit":1.65,"context":{"spread":4.5,"margin":13,"odds":"+165","homeOdds":"+165","awayOdds":"-200","homeScore":143,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-41","label":"Sacramento Kings vs Minnesota Timberwolves","date":"2025-11-24","outcome":"win","profit":3.75,"context":{"spread":10.5,"margin":5,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":117,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-42","label":"Washington Wizards vs Atlanta Hawks","date":"2025-11-25","outcome":"win","profit":3.6,"context":{"spread":10.5,"margin":19,"odds":"+360","homeOdds":"+360","awayOdds":"-500","homeScore":132,"awayScore":113,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-43","label":"Philadelphia 76ers vs Orlando Magic","date":"2025-11-25","outcome":"loss","profit":-1,"context":{"spread":4,"margin":-41,"odds":"+160","homeOdds":"+160","awayOdds":"-192","homeScore":103,"awayScore":144,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-44","label":"Charlotte Hornets vs New York Knicks","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-28,"odds":"+222","homeOdds":"+222","awayOdds":"-278","homeScore":101,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-45","label":"Portland Trail Blazers vs San Antonio Spurs","date":"2025-11-26","outcome":"loss","profit":-1,"context":{"spread":-1.5,"margin":-13,"odds":"-115","homeOdds":"-115","awayOdds":"-105","homeScore":102,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-46","label":"Brooklyn Nets vs Philadelphia 76ers","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":7.5,"margin":-12,"odds":"+215","homeOdds":"+215","awayOdds":"-267","homeScore":103,"awayScore":115,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-47","label":"Charlotte Hornets vs Chicago Bulls","date":"2025-11-28","outcome":"win","profit":1.18,"context":{"spread":3,"margin":7,"odds":"+118","homeOdds":"+118","awayOdds":"-138","homeScore":123,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-48","label":"Denver Nuggets vs San Antonio Spurs","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-7,"margin":-3,"odds":"-286","homeOdds":"-286","awayOdds":"+230","homeScore":136,"awayScore":139,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-49","label":"Utah Jazz vs Sacramento Kings","date":"2025-11-28","outcome":"win","profit":0.7042,"context":{"spread":-2.5,"margin":9,"odds":"-142","homeOdds":"-142","awayOdds":"+120","homeScore":128,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-50","label":"LA Clippers vs Memphis Grizzlies","date":"2025-11-28","outcome":"loss","profit":-1,"context":{"spread":-6.5,"margin":-5,"odds":"-270","homeOdds":"-270","awayOdds":"+220","homeScore":107,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-51","label":"Milwaukee Bucks vs Brooklyn Nets","date":"2025-11-29","outcome":"win","profit":0.1669,"context":{"spread":-11.5,"margin":17,"odds":"-599","homeOdds":"-599","awayOdds":"+425","homeScore":116,"awayScore":99,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-52","label":"LA Clippers vs Dallas Mavericks","date":"2025-11-29","outcome":"loss","profit":-1,"context":{"spread":-9.5,"margin":-4,"odds":"-385","homeOdds":"-385","awayOdds":"+300","homeScore":110,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-53","label":"Philadelphia 76ers vs Atlanta Hawks","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-8,"odds":"-144","homeOdds":"-144","awayOdds":"+122","homeScore":134,"awayScore":142,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-54","label":"Portland Trail Blazers vs Oklahoma City Thunder","date":"2025-11-30","outcome":"loss","profit":-1,"context":{"spread":11.5,"margin":-8,"odds":"+450","homeOdds":"+450","awayOdds":"-625","homeScore":115,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-55","label":"Brooklyn Nets vs Charlotte Hornets","date":"2025-12-01","outcome":"win","profit":1.68,"context":{"spread":4.5,"margin":13,"odds":"+168","homeOdds":"+168","awayOdds":"-200","homeScore":116,"awayScore":103,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-56","label":"Denver Nuggets vs Dallas Mavericks","date":"2025-12-01","outcome":"loss","profit":-1,"context":{"spread":-11.5,"margin":-10,"odds":"-521","homeOdds":"-521","awayOdds":"+400","homeScore":121,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-57","label":"Philadelphia 76ers vs Washington Wizards","date":"2025-12-02","outcome":"win","profit":0.125,"context":{"spread":-13.5,"margin":19,"odds":"-800","homeOdds":"-800","awayOdds":"+550","homeScore":121,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-58","label":"New Orleans Pelicans vs Minnesota Timberwolves","date":"2025-12-04","outcome":"loss","profit":-1,"context":{"spread":12,"margin":-9,"odds":"+450","homeOdds":"+450","awayOdds":"-599","homeScore":116,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-59","label":"Cleveland Cavaliers vs San Antonio Spurs","date":"2025-12-05","outcome":"win","profit":0.5,"context":{"spread":-5,"margin":13,"odds":"-200","homeOdds":"-200","awayOdds":"+165","homeScore":130,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-60","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":3.5,"margin":-8,"odds":"+130","homeOdds":"+130","awayOdds":"-155","homeScore":113,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-61","label":"Chicago Bulls vs Golden State Warriors","date":"2025-12-07","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-32,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":91,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-62","label":"Indiana Pacers vs Sacramento Kings","date":"2025-12-08","outcome":"win","profit":0.5882,"context":{"spread":-3.5,"margin":11,"odds":"-170","homeOdds":"-170","awayOdds":"+140","homeScore":116,"awayScore":105,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-63","label":"New Orleans Pelicans vs San Antonio Spurs","date":"2025-12-08","outcome":"loss","profit":-1,"context":{"spread":8.5,"margin":-3,"odds":"+300","homeOdds":"+300","awayOdds":"-400","homeScore":132,"awayScore":135,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-64","label":"Toronto Raptors vs New York Knicks","date":"2025-12-09","outcome":"loss","profit":-1,"context":{"spread":6.5,"margin":-16,"odds":"+200","homeOdds":"+200","awayOdds":"-250","homeScore":101,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-65","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2025-12-11","outcome":"win","profit":1.43,"context":{"spread":4,"margin":23,"odds":"+143","homeOdds":"+143","awayOdds":"-170","homeScore":143,"awayScore":120,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-66","label":"Sacramento Kings vs Denver Nuggets","date":"2025-12-11","outcome":"loss","profit":-1,"context":{"spread":10.5,"margin":-31,"odds":"+375","homeOdds":"+375","awayOdds":"-500","homeScore":105,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-67","label":"Washington Wizards vs Cleveland Cavaliers","date":"2025-12-12","outcome":"loss","profit":-1,"context":{"spread":16,"margin":-4,"odds":"+700","homeOdds":"+700","awayOdds":"-1111","homeScore":126,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-68","label":"Atlanta Hawks vs Philadelphia 76ers","date":"2025-12-14","outcome":"win","profit":0.5556,"context":{"spread":-4.5,"margin":3,"odds":"-180","homeOdds":"-180","awayOdds":"+145","homeScore":120,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-69","label":"Portland Trail Blazers vs Golden State Warriors","date":"2025-12-14","outcome":"win","profit":1.7,"context":{"spread":5.5,"margin":5,"odds":"+170","homeOdds":"+170","awayOdds":"-210","homeScore":136,"awayScore":131,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-70","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-10,"odds":"-190","homeOdds":"-190","awayOdds":"+154","homeScore":104,"awayScore":114,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-71","label":"Phoenix Suns vs Los Angeles Lakers","date":"2025-12-14","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-72","label":"Denver Nuggets vs Houston Rockets","date":"2025-12-15","outcome":"win","profit":0.9174,"context":{"spread":-1,"margin":3,"odds":"-109","homeOdds":"-109","awayOdds":"-108","homeScore":128,"awayScore":125,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-73","label":"LA Clippers vs Memphis Grizzlies","date":"2025-12-15","outcome":"loss","profit":-1,"context":{"spread":-5.5,"margin":-18,"odds":"-220","homeOdds":"-220","awayOdds":"+180","homeScore":103,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-74","label":"Chicago Bulls vs Cleveland Cavaliers","date":"2025-12-17","outcome":"win","profit":1.88,"context":{"spread":5.5,"margin":16,"odds":"+188","homeOdds":"+188","awayOdds":"-220","homeScore":127,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-75","label":"Charlotte Hornets vs Atlanta Hawks","date":"2025-12-18","outcome":"win","profit":1.5,"context":{"spread":4.5,"margin":7,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":133,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-76","label":"Phoenix Suns vs Golden State Warriors","date":"2025-12-18","outcome":"win","profit":1.1,"context":{"spread":1.5,"margin":1,"odds":"+110","homeOdds":"+110","awayOdds":"-135","homeScore":99,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-77","label":"Cleveland Cavaliers vs Chicago Bulls","date":"2025-12-19","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-11,"odds":"-169","homeOdds":"-169","awayOdds":"+140","homeScore":125,"awayScore":136,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-78","label":"Toronto Raptors vs Boston Celtics","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":1.5,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"-123","homeScore":96,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-79","label":"Golden State Warriors vs Phoenix Suns","date":"2025-12-20","outcome":"win","profit":0.4,"context":{"spread":-6.5,"margin":3,"odds":"-250","homeOdds":"-250","awayOdds":"+200","homeScore":119,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-80","label":"Sacramento Kings vs Portland Trail Blazers","date":"2025-12-20","outcome":"loss","profit":-1,"context":{"spread":4.5,"margin":-5,"odds":"+150","homeOdds":"+150","awayOdds":"-179","homeScore":93,"awayScore":98,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-81","label":"LA Clippers vs Los Angeles Lakers","date":"2025-12-20","outcome":"win","profit":1,"context":{"spread":1.5,"margin":15,"odds":"+100","homeOdds":"+100","awayOdds":"-118","homeScore":103,"awayScore":88,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-82","label":"Washington Wizards vs San Antonio Spurs","date":"2025-12-21","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-11,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-83","label":"Sacramento Kings vs Houston Rockets","date":"2025-12-21","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":124,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-84","label":"Cleveland Cavaliers vs Charlotte Hornets","date":"2025-12-22","outcome":"win","profit":1,"context":{"spread":0,"margin":7,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":139,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-85","label":"Atlanta Hawks vs Chicago Bulls","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":123,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-86","label":"Indiana Pacers vs Milwaukee Bucks","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-17,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":94,"awayScore":111,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-87","label":"Miami Heat vs Toronto Raptors","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":-4.5,"margin":-21,"odds":"-190","homeOdds":"-190","awayOdds":"+155","homeScore":91,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-88","label":"Utah Jazz vs Memphis Grizzlies","date":"2025-12-23","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-9,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":128,"awayScore":137,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-89","label":"Los Angeles Lakers vs Houston Rockets","date":"2025-12-25","outcome":"loss","profit":-1,"context":{"spread":-2.5,"margin":-23,"odds":"-135","homeOdds":"-135","awayOdds":"+115","homeScore":96,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-90","label":"Atlanta Hawks vs Miami Heat","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-15,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":111,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-91","label":"Washington Wizards vs Toronto Raptors","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":138,"awayScore":117,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-92","label":"Indiana Pacers vs Boston Celtics","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-18,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":140,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-93","label":"Memphis Grizzlies vs Milwaukee Bucks","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":21,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":104,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-94","label":"Utah Jazz vs Detroit Pistons","date":"2025-12-26","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":131,"awayScore":129,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-95","label":"Portland Trail Blazers vs LA Clippers","date":"2025-12-26","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":103,"awayScore":119,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-96","label":"Orlando Magic vs Denver Nuggets","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":127,"awayScore":126,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-97","label":"Atlanta Hawks vs New York Knicks","date":"2025-12-27","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-3,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":128,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-98","label":"Miami Heat vs Indiana Pacers","date":"2025-12-27","outcome":"win","profit":1,"context":{"spread":0,"margin":26,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":142,"awayScore":116,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-99","label":"Toronto Raptors vs Golden State Warriors","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":14,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":141,"awayScore":127,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-100","label":"Portland Trail Blazers vs Boston Celtics","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":6,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":114,"awayScore":108,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-101","label":"Los Angeles Lakers vs Sacramento Kings","date":"2025-12-28","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":101,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-102","label":"New Orleans Pelicans vs New York Knicks","date":"2025-12-29","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-5,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":125,"awayScore":130,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-103","label":"Atlanta Hawks vs Minnesota Timberwolves","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":24,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":126,"awayScore":102,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-104","label":"Indiana Pacers vs Orlando Magic","date":"2025-12-31","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":110,"awayScore":112,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-105","label":"Chicago Bulls vs New Orleans Pelicans","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":16,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":118,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-106","label":"San Antonio Spurs vs New York Knicks","date":"2025-12-31","outcome":"win","profit":1,"context":{"spread":0,"margin":2,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":134,"awayScore":132,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-107","label":"Indiana Pacers vs San Antonio Spurs","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-10,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":113,"awayScore":123,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-108","label":"Milwaukee Bucks vs Charlotte Hornets","date":"2026-01-02","outcome":"win","profit":1,"context":{"spread":0,"margin":1,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":122,"awayScore":121,"season":2025,"betSide":"home","coveredSpread":"n/a"}},{"id":"sports-trade-109","label":"New Orleans Pelicans vs Portland Trail Blazers","date":"2026-01-02","outcome":"loss","profit":-1,"context":{"spread":0,"margin":-13,"odds":"+100","homeOdds":"+100","awayOdds":"+100","homeScore":109,"awayScore":122,"season":2025,"betSide":"home","coveredSpread":"n/a"}}]','{"total_trades":110,"wins":48,"win_rate":44,"total_profit":-10.9929,"avg_return":-0.0999,"roi_percent":-9.99,"profit_factor":0.82,"sharpe_ratio":-0.09,"max_drawdown":19.99,"max_drawdown_pct":499.82,"ats_record":null}','{"notes":["Evaluated 520 games from BallDontLie API","Bounce after 2+ losses: 110 games","ATS Record: 0-72 (0.0% cover rate)"],"rule":{"domain":"sports","lookback":2,"trigger":"bounceAfterLosses","direction":"long","description":"Fade short-term panic after consecutive losses","spreadThreshold":0,"isHome":false,"isAway":false,"isFavorites":false,"isUnderdogs":false,"isMoneyline":false,"winRateThreshold":0.5},"datasetSize":520,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767550359490,NULL,1767550359482,0);
INSERT INTO backtest_results VALUES('cmk022are0022d840lzgoo2a3',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA seasonTest NBA moneyline favorites strategy for 2024","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767550723322,NULL,1767550723321,0);
INSERT INTO backtest_results VALUES('cmk02etwi0026d8401bgv6vwp',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA seasonTest NBA moneyline favorites strategy for 2024","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767551308002,NULL,1767551308000,0);
INSERT INTO backtest_results VALUES('cmk032f78002ad840wn7i3ueo',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA seasonNBA moneyline favorites 2024","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767552408692,NULL,1767552408691,0);
INSERT INTO backtest_results VALUES('cmk036l89002ed8402455pk02',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA seasonNBA moneyline favorites 2024","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767552603130,NULL,1767552603128,0);
INSERT INTO backtest_results VALUES('cmk039y2s002id840dgd3oq0z',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA seasonNBA moneyline favorites 2024","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767552759748,NULL,1767552759744,0);
INSERT INTO backtest_results VALUES('cmk03d12a002md840ti3mys27',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA season","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767552903586,NULL,1767552903585,0);
INSERT INTO backtest_results VALUES('cmk03hluv002qd840vzwu6y8k',NULL,'test123','nba','Bet on home favorites with a spread of 5 or more points in t…',NULL,'{"prompt":"Bet on home favorites with a spread of 5 or more points in the 2024 NBA season","domain":"sports","sportFilter":"nba","rule":"Player Props: points BOTH (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home favorites with a spread of 5 or more points in t…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: both","Odds Filter: -300 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points BOTH (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767553117159,NULL,1767553117158,0);
INSERT INTO backtest_results VALUES('cmk05lhiw0009r1ewgmb6bb70',NULL,'test123','nba','Bet on home underdogs when the spread is greater than 5 poin…',NULL,'{"prompt":"Bet on home underdogs when the spread is greater than 5 points for NBA in the 2024 NBA season","domain":"sports","sportFilter":"nba","rule":"Player Props: points UNDER (NBA 2024)"}',NULL,NULL,'{"market":"nba","strategy_name":"Bet on home underdogs when the spread is greater than 5 poin…","total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"results":{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null},"all_trades":[],"detailed_statistics":{"notes":["League: NBA","Season: 2024-25","Bet Type: under","Odds Filter: 100 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points UNDER (NBA 2024)","datasetSize":0,"sportFilter":"nba"}}','[]','{"total_trades":0,"wins":0,"win_rate":0,"total_profit":0,"avg_return":null,"roi_percent":0,"profit_factor":null,"sharpe_ratio":null,"max_drawdown":null,"max_drawdown_pct":null,"ats_record":null}','{"notes":["League: NBA","Season: 2024-25","Bet Type: under","Odds Filter: 100 to 300","Total Props Analyzed: 0"],"rule":"Player Props: points UNDER (NBA 2024)","datasetSize":0,"sportFilter":"nba"}',NULL,'COMPLETED',NULL,NULL,1767556657401,NULL,1767556657399,0);
CREATE UNIQUE INDEX "users_email_key" ON "users"("email");
CREATE UNIQUE INDEX "users_subscriptionId_key" ON "users"("subscriptionId");
CREATE UNIQUE INDEX "users_stripeCustomerId_key" ON "users"("stripeCustomerId");
CREATE UNIQUE INDEX "users_emailVerificationToken_key" ON "users"("emailVerificationToken");
CREATE UNIQUE INDEX "users_passwordResetToken_key" ON "users"("passwordResetToken");
CREATE INDEX "users_subscriptionTier_idx" ON "users"("subscriptionTier");
CREATE INDEX "users_createdAt_idx" ON "users"("createdAt");
CREATE INDEX "users_lastLoginAt_idx" ON "users"("lastLoginAt");
CREATE INDEX "users_emailVerified_idx" ON "users"("emailVerified");
CREATE INDEX "users_trialEndsAt_idx" ON "users"("trialEndsAt");
CREATE INDEX "strategies_userId_idx" ON "strategies"("userId");
CREATE INDEX "strategies_domain_idx" ON "strategies"("domain");
CREATE INDEX "strategies_isPublic_idx" ON "strategies"("isPublic");
CREATE INDEX "strategies_isTemplate_idx" ON "strategies"("isTemplate");
CREATE INDEX "strategies_createdAt_idx" ON "strategies"("createdAt");
CREATE INDEX "strategies_likes_idx" ON "strategies"("likes");
CREATE INDEX "strategies_userId_domain_idx" ON "strategies"("userId", "domain");
CREATE INDEX "conversations_userId_idx" ON "conversations"("userId");
CREATE INDEX "conversations_lastActivityAt_idx" ON "conversations"("lastActivityAt");
CREATE INDEX "conversations_createdAt_idx" ON "conversations"("createdAt");
CREATE UNIQUE INDEX "strategy_ratings_strategyId_userId_key" ON "strategy_ratings"("strategyId", "userId");
CREATE UNIQUE INDEX "strategy_shares_strategyId_userId_shareType_key" ON "strategy_shares"("strategyId", "userId", "shareType");
CREATE INDEX "user_analytics_userId_idx" ON "user_analytics"("userId");
CREATE INDEX "user_analytics_eventType_idx" ON "user_analytics"("eventType");
CREATE INDEX "user_analytics_createdAt_idx" ON "user_analytics"("createdAt");
CREATE INDEX "strategy_analytics_strategyId_idx" ON "strategy_analytics"("strategyId");
CREATE INDEX "strategy_analytics_eventType_idx" ON "strategy_analytics"("eventType");
CREATE INDEX "strategy_analytics_createdAt_idx" ON "strategy_analytics"("createdAt");
CREATE INDEX "system_analytics_eventType_idx" ON "system_analytics"("eventType");
CREATE INDEX "system_analytics_createdAt_idx" ON "system_analytics"("createdAt");
CREATE INDEX "nba_players_isActive_idx" ON "nba_players"("isActive");
CREATE INDEX "nba_players_lastUpdated_idx" ON "nba_players"("lastUpdated");
CREATE UNIQUE INDEX "nba_teams_abbreviation_key" ON "nba_teams"("abbreviation");
CREATE INDEX "nba_teams_abbreviation_idx" ON "nba_teams"("abbreviation");
CREATE INDEX "nba_teams_lastUpdated_idx" ON "nba_teams"("lastUpdated");
CREATE INDEX "nba_games_gameDate_idx" ON "nba_games"("gameDate");
CREATE INDEX "nba_games_homeTeamId_idx" ON "nba_games"("homeTeamId");
CREATE INDEX "nba_games_awayTeamId_idx" ON "nba_games"("awayTeamId");
CREATE INDEX "nba_games_season_idx" ON "nba_games"("season");
CREATE INDEX "nba_games_status_idx" ON "nba_games"("status");
CREATE INDEX "nba_games_lastUpdated_idx" ON "nba_games"("lastUpdated");
CREATE INDEX "nba_player_stats_playerId_idx" ON "nba_player_stats"("playerId");
CREATE INDEX "nba_player_stats_gameId_idx" ON "nba_player_stats"("gameId");
CREATE INDEX "nba_player_stats_season_idx" ON "nba_player_stats"("season");
CREATE INDEX "nba_player_stats_lastUpdated_idx" ON "nba_player_stats"("lastUpdated");
CREATE INDEX "nba_player_stats_gameId_playerId_idx" ON "nba_player_stats"("gameId", "playerId");
CREATE INDEX "nba_team_stats_teamId_idx" ON "nba_team_stats"("teamId");
CREATE INDEX "nba_team_stats_season_idx" ON "nba_team_stats"("season");
CREATE INDEX "nba_team_stats_lastUpdated_idx" ON "nba_team_stats"("lastUpdated");
CREATE UNIQUE INDEX "nba_cache_entries_cacheKey_key" ON "nba_cache_entries"("cacheKey");
CREATE INDEX "nba_cache_entries_cacheKey_idx" ON "nba_cache_entries"("cacheKey");
CREATE INDEX "nba_cache_entries_endpoint_idx" ON "nba_cache_entries"("endpoint");
CREATE INDEX "nba_cache_entries_lastFetched_idx" ON "nba_cache_entries"("lastFetched");
CREATE INDEX "nba_cache_entries_expiresAt_idx" ON "nba_cache_entries"("expiresAt");
CREATE UNIQUE INDEX "backtest_results_jobId_key" ON "backtest_results"("jobId");
CREATE INDEX "backtest_results_userId_idx" ON "backtest_results"("userId");
CREATE INDEX "backtest_results_market_idx" ON "backtest_results"("market");
CREATE INDEX "backtest_results_strategyName_idx" ON "backtest_results"("strategyName");
CREATE INDEX "backtest_results_status_idx" ON "backtest_results"("status");
CREATE INDEX "backtest_results_createdAt_idx" ON "backtest_results"("createdAt");
CREATE INDEX "backtest_results_userId_market_idx" ON "backtest_results"("userId", "market");
COMMIT;
