{"schema":"pruviq-weekly-snapshot-v3","post":"weekly-2026-04-20","note":"Only the rows and fields this post's figures are computed from. Re-check: python3 scripts/weekly-snapshot.py check weekly-2026-04-20. The full source file is on the production server (ranking day file, not in git); match it with the sha256 below.","as_of_utc":"2026-04-20T01:09:24.851236","generator":"backend/scripts/generate_weekly_blog.py","generator_commit":"fc844f843","source":{"file":"ranking_20260420.json","in_git":false,"sha256":"d205605d80017889cf1a6ac95f6ac081a851a747bc938cba63591191d4a8113f","generated_at":"2026-04-20T01:09:24.851236","lists":{"7d":"periods.7d.top50","30d":"periods.30d.top50"},"served_by":"GET https://api.pruviq.com/rankings/daily?period=7d|30d&group=top50"},"source_30d":{"file":"ranking_20260420.json","in_git":false,"sha256":"d205605d80017889cf1a6ac95f6ac081a851a747bc938cba63591191d4a8113f","generated_at":"2026-04-20T01:09:24.851236","same_file_as_7d":true},"previous_day_source":{"file":"ranking_20260419.json","in_git":false,"sha256":"d6ca1748bcac7ad83fd4f07e0ccf5b7471574ba33440e496868f60a11910c364","generated_at":"2026-04-19T10:18:55.855222","list":"periods.7d.top50"},"policy":{"code_commit":"fc844f843","code":"backend/api/main.py::_get_daily_rankings_sync","code_function_sha256":"0aa699b5350229a554f705790f908c9eed1363cb40f5e953748bbaaae3c4a365","constants_from":"backend/api/main.py (inline constants)","wf_exclusions":[["mean-reversion","short","4H"],["mean-reversion","short","6H"],["rsi-divergence","long","4H"]],"min_trades":1,"steps":"see scripts/weekly-snapshot.py (build: select; check: sort and derive)"},"columns":["id","win_rate","profit_factor","total_return","total_trades"],"rows_7d":[["bb-squeeze-short/short/1H",90.91,58.41,0.24,11],["bb-squeeze-long/long/1H",34.62,0.85,-0.23,26],["hv-squeeze/short/1H",67.65,1.67,1.11,68],["hv-squeeze/long/1H",45.21,0.99,-0.03,73],["hv-squeeze/both/1H",56.03,1.19,1.08,141],["keltner-squeeze/short/1H",90.0,99.27,0.4,10],["keltner-squeeze/both/1H",44.44,0.71,-0.46,36],["keltner-squeeze/long/1H",26.92,0.45,-0.86,26],["supertrend/short/1H",55.13,0.85,-0.63,78],["supertrend/long/1H",55.81,1.38,0.66,43],["supertrend/both/1H",55.37,1.01,0.03,121],["macd-cross/long/1H",35.0,1.0,0.0,80],["macd-cross/short/1H",39.68,0.45,-1.92,63],["macd-cross/both/1H",37.06,0.72,-1.92,143],["adx-trend/short/1H",64.44,1.1,0.19,45],["adx-trend/long/1H",24.24,0.47,-0.79,33],["adx-trend/both/1H",47.44,0.82,-0.6,78],["ichimoku/short/1H",83.33,2.12,0.23,6],["ichimoku/long/1H",0.0,0.0,-1.24,11],["ichimoku/both/1H",29.41,0.3,-1.02,17],["donchian-breakout/short/1H",63.04,1.07,0.32,92],["donchian-breakout/long/1H",36.19,0.79,-0.96,105],["donchian-breakout/both/1H",48.73,0.93,-0.64,197],["atr-breakout/both/1H",61.54,1.34,0.17,13],["atr-breakout/long/1H",54.55,1.3,0.15,11],["atr-breakout/short/1H",100.0,999.99,0.02,2],["momentum-long/both/1H",29.79,0.55,-1.49,47],["momentum-long/long/1H",29.79,0.55,-1.49,47],["mean-reversion/short/1H",56.79,1.15,0.44,81],["mean-reversion/long/1H",23.08,0.25,-0.68,26],["mean-reversion/both/1H",48.6,0.93,-0.25,107],["rsi-divergence/short/1H",44.0,0.45,-0.84,25],["rsi-divergence/long/1H",5.0,0.08,-1.02,20],["rsi-divergence/both/1H",26.67,0.3,-1.87,45],["stochastic-rsi/long/1H",36.54,0.63,-1.88,104],["stochastic-rsi/short/1H",63.37,1.09,0.39,101],["stochastic-rsi/both/1H",49.76,0.84,-1.49,205],["heikin-ashi/short/1H",49.43,0.77,-1.7,174],["heikin-ashi/long/1H",44.32,0.85,-1.3,185],["heikin-ashi/both/1H",46.8,0.81,-3.0,359]],"leader_30d":{"row":["bb-squeeze-short/short/1H",69.49,3.04,1.29,59],"name":["BB Squeeze","볼린저 스퀴즈"]},"others_30d_wr_pf":[[54.55,2.18],[55.17,2.11],[61.76,2.02],[37.5,1.77],[57.14,1.66],[56.16,1.61],[68.35,1.59],[54.63,1.58],[66.67,1.46],[53.85,1.42],[49.74,1.33],[51.85,1.32],[47.5,1.32],[56.83,1.29],[38.24,1.26],[48.67,1.25],[46.15,1.25],[49.06,1.23],[48.74,1.21],[55.18,1.2],[53.37,1.2],[43.04,1.2],[51.75,1.19],[35.29,1.19],[52.17,1.15],[50.23,1.15],[50.0,1.13],[33.33,1.12],[41.46,1.07],[54.33,1.06],[50.0,1.05],[48.95,1.04],[50.0,1.03],[54.9,1.0],[43.93,0.99],[51.92,0.98],[51.66,0.97],[45.14,0.97],[44.3,0.96],[44.12,0.94],[51.46,0.93],[46.23,0.93],[43.68,0.92],[41.33,0.92],[50.39,0.91],[48.38,0.91],[48.98,0.9],[40.0,0.9],[42.61,0.88],[44.92,0.87],[40.98,0.87],[58.33,0.86],[49.39,0.86],[49.2,0.85],[47.48,0.85],[47.21,0.85],[45.07,0.84],[38.98,0.84],[44.33,0.83],[44.86,0.82],[47.92,0.81],[52.08,0.8],[47.5,0.8],[33.33,0.8],[30.0,0.8],[44.71,0.78],[43.37,0.78],[51.55,0.77],[38.84,0.76],[46.23,0.74],[49.79,0.72],[31.91,0.72],[43.72,0.7],[34.85,0.7],[34.85,0.7],[41.67,0.67],[46.06,0.63],[43.18,0.58],[33.33,0.5],[23.53,0.46],[25.0,0.35]],"previous_day_rows_7d":[["bb-squeeze-short/short/1H",33.33,1.2],["bb-squeeze-long/long/1H",30.77,0.66],["hv-squeeze/short/1H",54.24,0.96],["hv-squeeze/long/1H",62.89,1.62],["hv-squeeze/both/1H",59.62,1.4],["keltner-squeeze/short/1H",57.14,3.38],["keltner-squeeze/long/1H",47.5,0.94],["keltner-squeeze/both/1H",48.94,1.04],["supertrend/long/1H",69.35,2.62],["supertrend/short/1H",53.85,0.55],["macd-cross/short/1H",34.44,0.42],["macd-cross/long/1H",54.39,2.1],["macd-cross/both/1H",42.18,0.84],["adx-trend/short/1H",40.0,0.41],["adx-trend/both/1H",47.54,0.69],["adx-trend/long/1H",68.75,5.5],["ichimoku/short/1H",71.43,1.96],["ichimoku/both/1H",72.97,2.46],["ichimoku/long/1H",73.33,2.57],["donchian-breakout/short/1H",55.34,0.65],["donchian-breakout/long/1H",57.03,1.42],["donchian-breakout/both/1H",56.28,1.02],["atr-breakout/both/1H",52.94,1.49],["atr-breakout/long/1H",60.0,1.95],["atr-breakout/short/1H",0.0,0.0],["momentum-long/long/1H",39.29,0.79],["momentum-long/both/1H",39.29,0.79],["mean-reversion/short/1H",54.12,1.11],["mean-reversion/long/1H",41.67,0.37],["mean-reversion/both/1H",51.38,0.91],["rsi-divergence/short/1H",40.0,0.39],["rsi-divergence/long/1H",29.41,0.57],["rsi-divergence/both/1H",36.17,0.43],["stochastic-rsi/long/1H",39.62,0.72],["stochastic-rsi/short/1H",33.33,0.54],["stochastic-rsi/both/1H",36.68,0.63],["heikin-ashi/short/1H",37.19,0.51],["heikin-ashi/long/1H",56.18,1.27],["heikin-ashi/both/1H",46.15,0.81]],"names":{"bb-squeeze-short/short/1H":["BB Squeeze","볼린저 스퀴즈"],"keltner-squeeze/short/1H":["Keltner Squeeze","켈트너 스퀴즈"],"ichimoku/long/1H":["Ichimoku LONG","일목균형표 LONG"],"atr-breakout/short/1H":["ATR Breakout SHORT","ATR 돌파 SHORT"],"mean-reversion/long/1H":["Mean Reversion LONG","평균회귀 LONG"],"rsi-divergence/long/1H":["RSI Divergence LONG","RSI 다이버전스 LONG"]}}
