All

Total Tests

160,148

# Pass

87,910

Pass Count:
# of Tests that met or exceeded the model's performance target (ie., 3%)

# Fail

72,238

Fail Count:
# of Tests that did not meet or exceed the model's performance target (ie., 3%)

Win Rate

54.9 %

Win Rate:
% of Tests that met or exceed the model's performance target (ie., 3%)

Hit Rate

77.0 %

Hit Rate:
% of Tests that resulted in a > 0% gain.

Avg Gain

4.8 %

Avg Performance Gain:
Average % Gain for each test defined by the theoretical buy-price v. sell-price difference.
Date Model Test Count # Pass # Fail Win Rate Hit Rate % Perf % FDM % IWN Metrics
2025-03-14 Binned CatBoost 3d PC 2% 636 419 217 65.88 % 81.13 % 5.67 %
2025-03-14 Binned CatBoost 3d PC Isotonic 2% 636 419 217 65.88 % 81.13 % 5.67 %
2025-03-14 Binned CatBoost 3d PH 3% 636 498 138 78.30 % 97.96 % 9.69 %
2025-03-14 Binned CatBoost 3d PH Isotonic 3% 636 498 138 78.30 % 97.96 % 9.69 %
2025-03-14 Binned CatBoost 3d PH Platt 2% 636 556 80 87.42 % 97.96 % 9.69 %
2025-03-14 Binned LGBM 3d PC 2% 636 419 217 65.88 % 81.13 % 5.67 %
2025-03-14 Binned LGBM 3d PC Isotonic 2% 636 419 217 65.88 % 81.13 % 5.67 %
2025-03-14 Binned LGBM 3d PC Isotonic 3% 636 361 275 56.76 % 81.13 % 5.67 %
2025-03-14 Binned LGBM 3d PC Platt 2% 636 419 217 65.88 % 81.13 % 5.67 %
2025-03-14 Binned LGBM 3d PH 3% 636 498 138 78.30 % 97.96 % 9.69 %
2025-03-14 Binned LGBM 3d PH 3% 636 498 138 78.30 % 97.96 % 9.69 %
2025-03-14 Binned LGBM 3d PH Isotonic 2% 636 556 80 87.42 % 97.96 % 9.69 %
2025-03-14 Binned LGBM 3d PH Platt 2% 636 556 80 87.42 % 97.96 % 9.69 %
2025-03-14 Rolling CatBoost 3d PC 3% 743 423 320 56.93 % 80.62 % 5.44 %
2025-03-14 Rolling CatBoost 3d PC Platt 2% 743 485 258 65.28 % 80.62 % 5.44 %
2025-03-14 Rolling CatBoost 3d PH 2% 743 649 94 87.35 % 97.71 % 9.35 %
2025-03-14 Rolling LGBM 3d PC 3% 743 423 320 56.93 % 80.62 % 5.44 %
2025-03-14 Rolling LGBM 3d PC Isotonic 3% 743 423 320 56.93 % 80.62 % 5.44 %
2025-03-14 Rolling LGBM 3d PH Isotonic 3% 743 579 164 77.93 % 97.71 % 9.35 %
2025-03-14 Rolling LGBM 3d PH Platt 2% 743 649 94 87.35 % 97.71 % 9.35 %
2025-03-14 Rolling LGBM 3d PH Platt 3% 743 579 164 77.93 % 97.71 % 9.35 %
2025-03-13 Binned CatBoost 3d PC Isotonic 3% 557 240 317 43.09 % 66.43 % 3.49 %
2025-03-13 Binned CatBoost 3d PC Platt 2% 557 291 266 52.24 % 66.43 % 3.49 %
2025-03-13 Binned CatBoost 3d PC Platt 3% 557 240 317 43.09 % 66.43 % 3.49 %
2025-03-13 Binned CatBoost 3d PH Isotonic 2% 557 422 135 75.76 % 91.38 % 7.56 %
2025-03-13 Binned CatBoost 3d PH Platt 3% 557 361 196 64.81 % 91.38 % 7.56 %
2025-03-13 Binned LGBM 3d PC Platt 3% 557 240 317 43.09 % 66.43 % 3.49 %
2025-03-13 Binned LGBM 3d PH 3% 557 361 196 64.81 % 91.38 % 7.56 %
2025-03-13 Binned LGBM 3d PH Isotonic 2% 557 422 135 75.76 % 91.38 % 7.56 %
2025-03-13 Rolling CatBoost 3d PC 3% 642 273 369 42.52 % 66.36 % 3.32 %
2025-03-13 Rolling CatBoost 3d PC Isotonic 3% 642 273 369 42.52 % 66.36 % 3.32 %
2025-03-13 Rolling CatBoost 3d PC Platt 3% 642 273 369 42.52 % 66.36 % 3.32 %
2025-03-13 Rolling CatBoost 3d PH 2% 642 485 157 75.55 % 92.52 % 7.25 %
2025-03-13 Rolling CatBoost 3d PH Platt 2% 642 485 157 75.55 % 92.52 % 7.25 %
2025-03-13 Rolling CatBoost 3d PH Platt 3% 642 408 234 63.55 % 92.52 % 7.25 %
2025-03-13 Rolling LGBM 3d PC Isotonic 2% 642 335 307 52.18 % 66.36 % 3.32 %
2025-03-13 Rolling LGBM 3d PC Isotonic 3% 642 274 368 42.68 % 66.36 % 3.32 %
2025-03-13 Rolling LGBM 3d PC Platt 2% 642 335 307 52.18 % 66.36 % 3.32 %
2025-03-13 Rolling LGBM 3d PH 2% 642 485 157 75.55 % 92.52 % 7.25 %
2025-03-13 Rolling LGBM 3d PH 3% 642 408 234 63.55 % 92.52 % 7.25 %
2025-03-13 Rolling LGBM 3d PH Isotonic 3% 642 408 234 63.55 % 92.52 % 7.25 %
2025-03-12 Binned CatBoost 3d PC Platt 2% 543 248 295 45.67 % 63.90 % 2.49 %
2025-03-12 Binned CatBoost 3d PH 3% 543 335 208 61.69 % 92.45 % 6.65 %
2025-03-12 Binned CatBoost 3d PH Isotonic 3% 543 335 208 61.69 % 92.45 % 6.65 %
2025-03-12 Binned LGBM 3d PC 3% 543 206 337 37.94 % 63.90 % 2.49 %
2025-03-12 Binned LGBM 3d PC Isotonic 2% 543 248 295 45.67 % 63.90 % 2.49 %
2025-03-12 Binned LGBM 3d PC Platt 2% 543 248 295 45.67 % 63.90 % 2.49 %
2025-03-12 Binned LGBM 3d PH 3% 543 335 208 61.69 % 92.45 % 6.65 %
2025-03-12 Binned LGBM 3d PH Isotonic 3% 543 335 208 61.69 % 92.45 % 6.65 %
2025-03-12 Binned LGBM 3d PH Platt 2% 543 393 150 72.38 % 92.45 % 6.65 %
2025-03-12 Rolling CatBoost 3d PC 2% 676 309 367 45.71 % 64.35 % 2.76 %
2025-03-12 Rolling CatBoost 3d PC Isotonic 2% 676 309 367 45.71 % 64.35 % 2.76 %
2025-03-12 Rolling CatBoost 3d PC Platt 3% 676 259 417 38.31 % 64.35 % 2.77 %
2025-03-12 Rolling CatBoost 3d PH 3% 676 413 263 61.09 % 93.93 % 6.75 %
2025-03-12 Rolling CatBoost 3d PH Isotonic 3% 676 413 263 61.09 % 93.93 % 6.75 %
2025-03-12 Rolling LGBM 3d PC 2% 676 309 367 45.71 % 64.35 % 2.76 %
2025-03-12 Rolling LGBM 3d PC 3% 676 259 417 38.31 % 64.35 % 2.76 %
2025-03-12 Rolling LGBM 3d PC Isotonic 2% 676 309 367 45.71 % 64.35 % 2.77 %
2025-03-12 Rolling LGBM 3d PC Isotonic 3% 676 259 417 38.31 % 64.35 % 2.77 %
2025-03-12 Rolling LGBM 3d PH Isotonic 2% 676 481 195 71.15 % 93.93 % 6.75 %
2025-03-12 Rolling LGBM 3d PH Isotonic 3% 676 413 263 61.09 % 93.93 % 6.75 %
2025-03-12 Rolling LGBM 3d PH Platt 2% 676 481 195 71.15 % 93.93 % 6.75 %
2025-03-11 Binned CatBoost 3d PC Isotonic 2% 449 249 200 55.46 % 67.04 % 3.80 %
2025-03-11 Binned CatBoost 3d PC Platt 2% 449 249 200 55.46 % 67.04 % 3.80 %
2025-03-11 Binned CatBoost 3d PH 2% 449 354 95 78.84 % 93.99 % 8.84 %
2025-03-11 Binned CatBoost 3d PH Isotonic 3% 449 325 124 72.38 % 93.99 % 8.85 %
2025-03-11 Binned LGBM 3d PC 2% 449 249 200 55.46 % 67.04 % 3.80 %
2025-03-11 Binned LGBM 3d PH 2% 449 354 95 78.84 % 93.99 % 8.84 %
2025-03-11 Binned LGBM 3d PH 3% 449 325 124 72.38 % 93.99 % 8.85 %
2025-03-11 Binned LGBM 3d PH 3% 449 325 124 72.38 % 93.99 % 8.85 %
2025-03-11 Binned LGBM 3d PH Isotonic 3% 449 325 124 72.38 % 93.99 % 8.85 %
2025-03-11 Rolling CatBoost 3d PC Platt 2% 702 384 318 54.70 % 67.81 % 3.69 %
2025-03-11 Rolling CatBoost 3d PC Platt 3% 702 338 364 48.15 % 67.81 % 3.69 %
2025-03-11 Rolling CatBoost 3d PH 2% 702 551 151 78.49 % 93.59 % 8.29 %
2025-03-11 Rolling CatBoost 3d PH Isotonic 2% 702 551 151 78.49 % 93.59 % 8.29 %
2025-03-11 Rolling CatBoost 3d PH Isotonic 3% 702 497 205 70.80 % 93.59 % 8.29 %
2025-03-11 Rolling CatBoost 3d PH Platt 2% 702 551 151 78.49 % 93.59 % 8.29 %
2025-03-11 Rolling LGBM 3d PC 2% 702 384 318 54.70 % 67.81 % 3.69 %
2025-03-11 Rolling LGBM 3d PC Isotonic 2% 702 384 318 54.70 % 67.81 % 3.69 %
2025-03-11 Rolling LGBM 3d PC Isotonic 3% 702 338 364 48.15 % 67.81 % 3.69 %
2025-03-11 Rolling LGBM 3d PC Platt 3% 702 338 364 48.15 % 67.81 % 3.69 %
2025-03-11 Rolling LGBM 3d PH Isotonic 3% 702 497 205 70.80 % 93.59 % 8.29 %
2025-03-10 Binned CatBoost 3d PC 2% 714 232 482 32.49 % 49.72 % 0.85 %
2025-03-10 Binned CatBoost 3d PC 3% 714 194 520 27.17 % 49.72 % 0.85 %
2025-03-10 Binned CatBoost 3d PC Isotonic 2% 714 232 482 32.49 % 49.72 % 0.85 %
2025-03-10 Binned CatBoost 3d PC Platt 2% 714 232 482 32.49 % 49.72 % 0.85 %
2025-03-10 Binned CatBoost 3d PH 2% 714 492 222 68.91 % 93.56 % 5.69 %
2025-03-10 Binned LGBM 3d PC Isotonic 2% 714 231 483 32.35 % 49.72 % 0.85 %
2025-03-10 Binned LGBM 3d PH 3% 714 391 323 54.76 % 93.56 % 5.69 %
2025-03-10 Binned LGBM 3d PH 3% 714 391 323 54.76 % 93.56 % 5.69 %
2025-03-10 Binned LGBM 3d PH Platt 2% 714 492 222 68.91 % 93.56 % 5.69 %
2025-03-10 Rolling CatBoost 3d PC 3% 746 214 532 28.69 % 50.67 % 1.18 %
2025-03-10 Rolling CatBoost 3d PC Isotonic 3% 746 214 532 28.69 % 50.67 % 1.18 %
2025-03-10 Rolling CatBoost 3d PC Platt 2% 746 256 490 34.32 % 50.67 % 1.18 %
2025-03-10 Rolling CatBoost 3d PH 2% 746 517 229 69.30 % 93.16 % 6.46 %
2025-03-10 Rolling CatBoost 3d PH 3% 746 421 325 56.43 % 93.16 % 6.46 %
2025-03-10 Rolling LGBM 3d PC 2% 746 256 490 34.32 % 50.67 % 1.18 %
2025-03-10 Rolling LGBM 3d PC Isotonic 2% 746 256 490 34.32 % 50.67 % 1.18 %
2025-03-10 Rolling LGBM 3d PH 2% 746 517 229 69.30 % 93.16 % 6.46 %
2025-03-07 Binned CatBoost 3d PC 2% 633 248 385 39.18 % 57.98 % 1.74 %
2025-03-07 Binned CatBoost 3d PH Isotonic 3% 633 379 254 59.87 % 95.89 % 6.32 %
2025-03-07 Binned LGBM 3d PC 3% 633 192 441 30.33 % 57.98 % 1.74 %
2025-03-07 Binned LGBM 3d PC Isotonic 2% 633 248 385 39.18 % 57.98 % 1.74 %
2025-03-07 Binned LGBM 3d PH 2% 633 462 171 72.99 % 95.89 % 6.32 %
2025-03-07 Binned LGBM 3d PH Platt 2% 633 462 171 72.99 % 95.89 % 6.32 %
2025-03-07 Rolling CatBoost 3d PC Isotonic 2% 792 300 492 37.88 % 57.95 % 1.77 %
2025-03-07 Rolling CatBoost 3d PC Platt 3% 792 231 561 29.17 % 57.95 % 1.77 %
2025-03-07 Rolling CatBoost 3d PH Isotonic 2% 792 576 216 72.73 % 95.08 % 6.36 %
2025-03-07 Rolling CatBoost 3d PH Platt 2% 792 576 216 72.73 % 95.08 % 6.36 %
2025-03-07 Rolling LGBM 3d PC 2% 792 299 493 37.75 % 57.95 % 1.77 %
2025-03-07 Rolling LGBM 3d PC Isotonic 2% 792 299 493 37.75 % 57.95 % 1.77 %
2025-03-06 Binned CatBoost 3d PC Isotonic 3% 586 199 387 33.96 % 57.85 % 2.21 %
2025-03-06 Binned CatBoost 3d PC Platt 3% 586 199 387 33.96 % 57.85 % 2.21 %
2025-03-06 Binned CatBoost 3d PH 2% 586 453 133 77.30 % 94.03 % 7.73 %
2025-03-06 Binned LGBM 3d PC 2% 586 244 342 41.64 % 57.85 % 2.21 %
2025-03-06 Binned LGBM 3d PC 3% 586 199 387 33.96 % 57.85 % 2.21 %
2025-03-06 Binned LGBM 3d PC Platt 3% 586 199 387 33.96 % 57.85 % 2.21 %
2025-03-06 Binned LGBM 3d PH 2% 586 453 133 77.30 % 94.03 % 7.73 %
2025-03-06 Binned LGBM 3d PH Platt 2% 586 453 133 77.30 % 94.03 % 7.73 %
2025-03-06 Rolling CatBoost 3d PC 2% 757 294 463 38.84 % 56.94 % 1.65 %
2025-03-06 Rolling CatBoost 3d PC Isotonic 2% 757 294 463 38.84 % 56.94 % 1.65 %
2025-03-06 Rolling CatBoost 3d PC Isotonic 3% 757 228 529 30.12 % 56.94 % 1.65 %
2025-03-06 Rolling CatBoost 3d PH 3% 757 483 274 63.80 % 94.45 % 6.78 %
2025-03-06 Rolling CatBoost 3d PH Isotonic 3% 757 483 274 63.80 % 94.45 % 6.78 %
2025-03-06 Rolling CatBoost 3d PH Platt 2% 757 572 185 75.56 % 94.45 % 6.78 %
2025-03-06 Rolling LGBM 3d PC 2% 757 294 463 38.84 % 56.94 % 1.65 %
2025-03-06 Rolling LGBM 3d PC Isotonic 2% 757 294 463 38.84 % 56.94 % 1.65 %
2025-03-06 Rolling LGBM 3d PH 2% 757 572 185 75.56 % 94.45 % 6.78 %
2025-03-06 Rolling LGBM 3d PH 3% 757 483 274 63.80 % 94.45 % 6.78 %
2025-03-06 Rolling LGBM 3d PH Isotonic 3% 757 483 274 63.80 % 94.45 % 6.78 %
2025-03-06 Rolling LGBM 3d PH Platt 2% 757 572 185 75.56 % 94.45 % 6.78 %
2025-03-06 Rolling LGBM 3d PH Platt 3% 757 483 274 63.80 % 94.45 % 6.78 %
2025-03-05 Binned CatBoost 3d PC 3% 618 280 338 45.31 % 72.82 % 4.77 %
2025-03-05 Binned CatBoost 3d PC Platt 2% 618 338 280 54.69 % 72.82 % 4.77 %
2025-03-05 Binned CatBoost 3d PH 3% 618 429 189 69.42 % 95.47 % 9.03 %
2025-03-05 Binned LGBM 3d PC 3% 618 280 338 45.31 % 72.82 % 4.77 %
2025-03-05 Binned LGBM 3d PC Platt 2% 618 338 280 54.69 % 72.82 % 4.77 %
2025-03-05 Binned LGBM 3d PH 2% 618 483 135 78.16 % 95.47 % 9.04 %
2025-03-05 Binned LGBM 3d PH 3% 618 429 189 69.42 % 95.47 % 9.04 %
2025-03-05 Binned LGBM 3d PH 3% 618 429 189 69.42 % 95.47 % 9.03 %
2025-03-05 Rolling CatBoost 3d PC Isotonic 2% 739 397 342 53.72 % 73.48 % 4.50 %
2025-03-05 Rolling CatBoost 3d PH 2% 739 578 161 78.21 % 95.40 % 8.63 %
2025-03-05 Rolling CatBoost 3d PH 3% 739 506 233 68.47 % 95.40 % 8.63 %
2025-03-05 Rolling CatBoost 3d PH Isotonic 2% 739 578 161 78.21 % 95.40 % 8.63 %
2025-03-05 Rolling LGBM 3d PC 2% 739 397 342 53.72 % 73.48 % 4.50 %
2025-03-05 Rolling LGBM 3d PC Platt 3% 739 334 405 45.20 % 73.48 % 4.50 %
2025-03-05 Rolling LGBM 3d PH 2% 739 578 161 78.21 % 95.40 % 8.63 %
2025-03-05 Rolling LGBM 3d PH 3% 739 506 233 68.47 % 95.40 % 8.63 %
2025-03-05 Rolling LGBM 3d PH Platt 2% 739 578 161 78.21 % 95.40 % 8.63 %
2025-03-04 Binned CatBoost 3d PC 3% 535 300 235 56.07 % 78.69 % 5.98 %
2025-03-04 Binned CatBoost 3d PC Platt 2% 535 340 195 63.55 % 78.69 % 5.98 %
2025-03-04 Binned CatBoost 3d PH 2% 535 436 99 81.50 % 95.51 % 10.12 %
2025-03-04 Binned CatBoost 3d PH Isotonic 2% 535 436 99 81.50 % 95.51 % 10.12 %
2025-03-04 Binned CatBoost 3d PH Isotonic 3% 535 399 136 74.58 % 95.51 % 10.12 %
2025-03-04 Binned CatBoost 3d PH Platt 3% 535 399 136 74.58 % 95.51 % 10.12 %
2025-03-04 Binned LGBM 3d PC 3% 535 300 235 56.07 % 78.69 % 5.98 %
2025-03-04 Binned LGBM 3d PC Isotonic 3% 535 300 235 56.07 % 78.69 % 5.98 %
2025-03-04 Binned LGBM 3d PH Isotonic 3% 535 399 136 74.58 % 95.51 % 10.12 %
2025-03-04 Rolling CatBoost 3d PC Isotonic 3% 688 401 287 58.28 % 79.22 % 5.60 %
2025-03-04 Rolling CatBoost 3d PC Platt 3% 688 401 287 58.28 % 79.22 % 5.60 %
2025-03-04 Rolling CatBoost 3d PH Isotonic 2% 688 572 116 83.14 % 96.51 % 9.75 %
2025-03-04 Rolling LGBM 3d PC 2% 688 448 240 65.12 % 79.22 % 5.60 %
2025-03-04 Rolling LGBM 3d PC Isotonic 2% 688 448 240 65.12 % 79.22 % 5.60 %
2025-03-04 Rolling LGBM 3d PC Isotonic 3% 688 401 287 58.28 % 79.22 % 5.60 %
2025-03-04 Rolling LGBM 3d PH 3% 688 522 166 75.87 % 96.51 % 9.75 %
2025-03-04 Rolling LGBM 3d PH Platt 3% 688 522 166 75.87 % 96.51 % 9.75 %
2025-03-03 Binned CatBoost 3d PC 3% 707 116 591 16.41 % 30.98 % -1.61 %
2025-03-03 Binned CatBoost 3d PC Isotonic 2% 707 139 568 19.66 % 30.98 % -1.61 %
2025-03-03 Binned CatBoost 3d PC Platt 3% 707 116 591 16.41 % 30.98 % -1.61 %
2025-03-03 Binned CatBoost 3d PH Isotonic 3% 707 282 425 39.89 % 88.97 % 4.88 %
2025-03-03 Binned CatBoost 3d PH Platt 3% 707 282 425 39.89 % 88.97 % 4.88 %
2025-03-03 Binned LGBM 3d PC 3% 707 116 591 16.41 % 30.98 % -1.61 %
2025-03-03 Binned LGBM 3d PC Platt 3% 707 116 591 16.41 % 30.98 % -1.61 %
2025-03-03 Binned LGBM 3d PH 2% 707 382 325 54.03 % 88.97 % 4.88 %
2025-03-03 Binned LGBM 3d PH Isotonic 2% 707 382 325 54.03 % 88.97 % 4.88 %
2025-03-03 Rolling CatBoost 3d PC 2% 640 123 517 19.22 % 31.56 % -1.53 %
2025-03-03 Rolling CatBoost 3d PC Isotonic 3% 640 103 537 16.09 % 31.56 % -1.53 %
2025-03-03 Rolling LGBM 3d PC 2% 640 123 517 19.22 % 31.56 % -1.53 %
2025-03-03 Rolling LGBM 3d PC Isotonic 2% 640 123 517 19.22 % 31.56 % -1.53 %
2025-03-03 Rolling LGBM 3d PH 2% 640 340 300 53.13 % 88.91 % 4.75 %
2025-03-03 Rolling LGBM 3d PH Isotonic 3% 640 251 389 39.22 % 88.91 % 4.75 %
2025-03-03 Rolling LGBM 3d PH Platt 3% 640 251 389 39.22 % 88.91 % 4.75 %
2025-02-28 Binned CatBoost 3d PC 3% 544 198 346 36.40 % 67.28 % 3.00 %
2025-02-28 Binned CatBoost 3d PH 3% 544 368 176 67.65 % 94.85 % 7.28 %
2025-02-28 Binned LGBM 3d PH Isotonic 2% 544 433 111 79.60 % 94.85 % 7.28 %
2025-02-28 Binned LGBM 3d PH Platt 2% 544 433 111 79.60 % 94.85 % 7.28 %
2025-02-28 Rolling CatBoost 3d PC 2% 628 288 340 45.86 % 67.20 % 2.67 %
2025-02-28 Rolling CatBoost 3d PC 3% 628 222 406 35.35 % 67.20 % 2.67 %
2025-02-28 Rolling CatBoost 3d PC Isotonic 2% 628 288 340 45.86 % 67.20 % 2.67 %
2025-02-28 Rolling CatBoost 3d PH 2% 628 506 122 80.57 % 95.70 % 7.12 %
2025-02-28 Rolling CatBoost 3d PH Isotonic 3% 628 431 197 68.63 % 95.70 % 7.12 %
2025-02-28 Rolling LGBM 3d PC Platt 2% 628 288 340 45.86 % 67.20 % 2.67 %
2025-02-28 Rolling LGBM 3d PH 3% 628 431 197 68.63 % 95.70 % 7.12 %
2025-02-28 Rolling LGBM 3d PH Isotonic 2% 628 506 122 80.57 % 95.70 % 7.12 %
2025-02-28 Rolling LGBM 3d PH Isotonic 3% 628 431 197 68.63 % 95.70 % 7.12 %
2025-02-28 Rolling LGBM 3d PH Platt 2% 628 506 122 80.57 % 95.70 % 7.12 %
2025-02-27 Binned CatBoost 3d PC 2% 527 123 404 23.34 % 40.80 % 0.18 %
2025-02-27 Binned CatBoost 3d PC Isotonic 3% 527 104 423 19.73 % 40.80 % 0.18 %
2025-02-27 Binned CatBoost 3d PH 3% 527 277 250 52.56 % 92.60 % 5.81 %
2025-02-27 Binned CatBoost 3d PH Isotonic 2% 527 336 191 63.76 % 92.60 % 5.81 %
2025-02-27 Binned CatBoost 3d PH Isotonic 3% 527 277 250 52.56 % 92.60 % 5.81 %
2025-02-27 Binned CatBoost 3d PH Platt 2% 527 336 191 63.76 % 92.60 % 5.81 %
2025-02-27 Binned LGBM 3d PC Platt 2% 527 123 404 23.34 % 40.80 % 0.18 %
2025-02-27 Binned LGBM 3d PC Platt 3% 527 104 423 19.73 % 40.80 % 0.18 %
2025-02-27 Binned LGBM 3d PH Isotonic 3% 527 277 250 52.56 % 92.60 % 5.81 %
2025-02-27 Rolling CatBoost 3d PC Isotonic 2% 559 135 424 24.15 % 40.97 % -0.46 %
2025-02-27 Rolling CatBoost 3d PH 2% 559 357 202 63.86 % 91.41 % 5.28 %
2025-02-27 Rolling CatBoost 3d PH Isotonic 2% 559 357 202 63.86 % 91.41 % 5.28 %
2025-02-27 Rolling CatBoost 3d PH Platt 3% 559 298 261 53.31 % 91.41 % 5.28 %
2025-02-27 Rolling LGBM 3d PC 2% 559 135 424 24.15 % 40.97 % -0.46 %
2025-02-27 Rolling LGBM 3d PC Isotonic 2% 559 135 424 24.15 % 40.97 % -0.46 %
2025-02-27 Rolling LGBM 3d PC Isotonic 3% 559 114 445 20.39 % 40.97 % -0.46 %
2025-02-27 Rolling LGBM 3d PC Platt 2% 559 135 424 24.15 % 40.97 % -0.46 %
2025-02-27 Rolling LGBM 3d PH 2% 559 357 202 63.86 % 91.41 % 5.28 %
2025-02-27 Rolling LGBM 3d PH 3% 559 298 261 53.31 % 91.41 % 5.28 %
2025-02-27 Rolling LGBM 3d PH Isotonic 2% 559 357 202 63.86 % 91.41 % 5.28 %
2025-02-27 Rolling LGBM 3d PH Platt 2% 559 357 202 63.86 % 91.41 % 5.28 %
2025-02-26 Binned CatBoost 3d PC Isotonic 2% 448 194 254 43.30 % 59.15 % 1.99 %
2025-02-26 Binned CatBoost 3d PH 2% 448 339 109 75.67 % 95.54 % 6.60 %
2025-02-26 Binned CatBoost 3d PH Isotonic 2% 448 339 109 75.67 % 95.54 % 6.60 %
2025-02-26 Binned CatBoost 3d PH Platt 2% 448 339 109 75.67 % 95.54 % 6.60 %
2025-02-26 Binned LGBM 3d PC Isotonic 3% 448 158 290 35.27 % 59.15 % 1.99 %
2025-02-26 Binned LGBM 3d PC Platt 2% 448 194 254 43.30 % 59.15 % 1.99 %
2025-02-26 Binned LGBM 3d PH 2% 448 339 109 75.67 % 95.54 % 6.60 %
2025-02-26 Binned LGBM 3d PH 3% 407 272 135 66.83 % 95.33 % 6.53 %
2025-02-26 Binned LGBM 3d PH Isotonic 2% 448 339 109 75.67 % 95.54 % 6.60 %
2025-02-26 Rolling CatBoost 3d PC 2% 656 278 378 42.38 % 59.60 % 1.93 %
2025-02-26 Rolling CatBoost 3d PC 3% 656 216 440 32.93 % 59.60 % 1.93 %
2025-02-26 Rolling CatBoost 3d PC Isotonic 2% 656 278 378 42.38 % 59.60 % 1.93 %
2025-02-26 Rolling CatBoost 3d PC Platt 3% 656 216 440 32.93 % 59.60 % 1.93 %
2025-02-26 Rolling CatBoost 3d PH 2% 656 515 141 78.51 % 95.43 % 6.61 %
2025-02-26 Rolling CatBoost 3d PH Isotonic 2% 656 515 141 78.51 % 95.43 % 6.61 %
2025-02-26 Rolling LGBM 3d PC 2% 656 278 378 42.38 % 59.60 % 1.93 %
2025-02-26 Rolling LGBM 3d PC 3% 656 216 440 32.93 % 59.60 % 1.93 %
2025-02-26 Rolling LGBM 3d PC Isotonic 3% 656 216 440 32.93 % 59.60 % 1.93 %
2025-02-26 Rolling LGBM 3d PC Platt 2% 656 278 378 42.38 % 59.60 % 1.93 %
2025-02-26 Rolling LGBM 3d PH Isotonic 3% 656 442 214 67.38 % 95.43 % 6.61 %
2025-02-26 Rolling LGBM 3d PH Platt 2% 656 515 141 78.51 % 95.43 % 6.61 %
2025-02-25 Binned CatBoost 3d PC 3% 355 90 265 25.35 % 47.61 % 0.43 %
2025-02-25 Binned CatBoost 3d PC Isotonic 3% 355 90 265 25.35 % 47.61 % 0.43 %
2025-02-25 Binned CatBoost 3d PH Isotonic 2% 355 237 118 66.76 % 91.55 % 5.81 %
2025-02-25 Binned CatBoost 3d PH Platt 3% 331 178 153 53.78 % 91.84 % 5.95 %
2025-02-25 Binned LGBM 3d PC Isotonic 2% 355 108 247 30.42 % 47.61 % 0.43 %
2025-02-25 Binned LGBM 3d PH 3% 331 178 153 53.78 % 91.84 % 5.95 %
2025-02-25 Binned LGBM 3d PH Isotonic 3% 331 178 153 53.78 % 91.84 % 5.95 %
2025-02-25 Binned LGBM 3d PH Platt 2% 355 237 118 66.76 % 91.55 % 5.81 %
2025-02-25 Rolling CatBoost 3d PC Platt 2% 694 223 471 32.13 % 48.70 % 0.62 %
2025-02-25 Rolling CatBoost 3d PC Platt 3% 694 182 512 26.22 % 48.70 % 0.62 %
2025-02-25 Rolling CatBoost 3d PH 2% 694 469 225 67.58 % 90.63 % 5.86 %
2025-02-25 Rolling CatBoost 3d PH Platt 2% 694 469 225 67.58 % 90.63 % 5.86 %
2025-02-25 Rolling CatBoost 3d PH Platt 3% 694 383 311 55.19 % 90.63 % 5.86 %
2025-02-25 Rolling LGBM 3d PC 2% 694 223 471 32.13 % 48.70 % 0.62 %
2025-02-25 Rolling LGBM 3d PC Isotonic 2% 694 223 471 32.13 % 48.70 % 0.62 %
2025-02-25 Rolling LGBM 3d PC Isotonic 3% 694 182 512 26.22 % 48.70 % 0.62 %
2025-02-25 Rolling LGBM 3d PC Platt 3% 694 182 512 26.22 % 48.70 % 0.62 %

© 2025 - PennyLoupe LLC. Austin, TX.

DJDT

Versions

Package Name Version
Django 5.0.3
Python 3.11.8
coverage Coverage 7.4.4
debug_toolbar Debug Toolbar 4.3.0
django_extensions Django Extensions 3.2.3
grappelli Grappelli 3.0.8

Time

Resource usage

Resource Value
User CPU time 7151.560 msec
System CPU time 7.696 msec
Total CPU time 7159.256 msec
Elapsed time 9511.971 msec
Context switches 188 voluntary, 18 involuntary

Browser timing

Timing attribute Timeline Milliseconds since navigation start (+length)

Settings from app.settings

Setting Value
ABSOLUTE_URL_OVERRIDES {}
ADMINS []
ALLOWED_HOSTS ['*']
ALPACA_API '********************'
APPEND_SLASH True
AUTH0_CLIENT_ID None
AUTH0_CLIENT_SECRET '********************'
AUTH0_DOMAIN None
AUTHENTICATION_BACKENDS ['django.contrib.auth.backends.ModelBackend']
AUTH_PASSWORD_VALIDATORS '********************'
AUTH_USER_MODEL 'auth.User'
BASE_DIR PosixPath('/mnt/disks/pennyloupe_disk/pennyloupe')
CACHES {'default': {'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', 'LOCATION': '/var/tmp/django_cache'}}
CACHE_MIDDLEWARE_ALIAS 'default'
CACHE_MIDDLEWARE_KEY_PREFIX '********************'
CACHE_MIDDLEWARE_SECONDS 600
CELERY_BROKER_URL 'redis://localhost:6379'
CELERY_RESULT_BACKEND 'redis://localhost:6379'
CSRF_COOKIE_AGE 31449600
CSRF_COOKIE_DOMAIN None
CSRF_COOKIE_HTTPONLY False
CSRF_COOKIE_NAME 'csrftoken'
CSRF_COOKIE_PATH '/'
CSRF_COOKIE_SAMESITE 'Lax'
CSRF_COOKIE_SECURE False
CSRF_FAILURE_VIEW 'django.views.csrf.csrf_failure'
CSRF_HEADER_NAME 'HTTP_X_CSRFTOKEN'
CSRF_TRUSTED_ORIGINS []
CSRF_USE_SESSIONS False
DATABASES {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_HEALTH_CHECKS': True, 'CONN_MAX_AGE': 600, 'ENGINE': 'django.db.backends.postgresql', 'HOST': '34.125.28.12', 'NAME': 'pennyloupe', 'OPTIONS': {'sslmode': 'require'}, 'PASSWORD': '********************', 'PORT': 5432, 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'pennyloupe'}}
DATABASE_ROUTERS []
DATA_UPLOAD_MAX_MEMORY_SIZE 2621440
DATA_UPLOAD_MAX_NUMBER_FIELDS 1000
DATA_UPLOAD_MAX_NUMBER_FILES 100
DATETIME_FORMAT 'N j, Y, P'
DATETIME_INPUT_FORMATS ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M']
DATE_FORMAT 'N j, Y'
DATE_INPUT_FORMATS ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
DEBUG True
DEBUG_PROPAGATE_EXCEPTIONS False
DEBUG_TOOLBAR_CONFIG {'SHOW_TOOLBAR_CALLBACK': <function <lambda> at 0x7f4dc33cbec0>}
DECIMAL_SEPARATOR '.'
DEFAULT_AUTO_FIELD 'django.db.models.BigAutoField'
DEFAULT_CHARSET 'utf-8'
DEFAULT_EXCEPTION_REPORTER 'django.views.debug.ExceptionReporter'
DEFAULT_EXCEPTION_REPORTER_FILTER 'django.views.debug.SafeExceptionReporterFilter'
DEFAULT_FILE_STORAGE 'django.core.files.storage.FileSystemStorage'
DEFAULT_FROM_EMAIL 'webmaster@localhost'
DEFAULT_INDEX_TABLESPACE ''
DEFAULT_TABLESPACE ''
DISALLOWED_USER_AGENTS []
EMAIL_BACKEND 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST 'localhost'
EMAIL_HOST_PASSWORD '********************'
EMAIL_HOST_USER ''
EMAIL_PORT 25
EMAIL_SSL_CERTFILE None
EMAIL_SSL_KEYFILE '********************'
EMAIL_SUBJECT_PREFIX '[Django] '
EMAIL_TIMEOUT None
EMAIL_USE_LOCALTIME False
EMAIL_USE_SSL False
EMAIL_USE_TLS False
FIELD_ENCRYPTION_KEY '********************'
FILE_UPLOAD_DIRECTORY_PERMISSIONS None
FILE_UPLOAD_HANDLERS ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
FILE_UPLOAD_MAX_MEMORY_SIZE 2621440
FILE_UPLOAD_PERMISSIONS 420
FILE_UPLOAD_TEMP_DIR None
FIRST_DAY_OF_WEEK 0
FIXTURE_DIRS []
FORCE_SCRIPT_NAME None
FORMAT_MODULE_PATH None
FORMS_URLFIELD_ASSUME_HTTPS False
FORM_RENDERER 'django.forms.renderers.DjangoTemplates'
GRAPPELLI_ADMIN_TITLE 'Penny Loupe'
GRAPPELLI_AUTOCOMPLETE_SEARCH_FIELDS {'auth': {'user': ('id__iexact', 'username__icontains')}}
IGNORABLE_404_URLS []
INSTALLED_APPS ['coverage', 'grappelli', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.humanize', 'django.contrib.messages', 'django.contrib.postgres', 'django.contrib.sessions', 'django.contrib.staticfiles', 'django_htmx', 'app.core.apps.CoreConfig', 'django_extensions', 'debug_toolbar']
INTERNAL_IPS ['127.0.0.1']
LANGUAGES [('en', 'English')]
LANGUAGES_BIDI ['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ug', 'ur']
LANGUAGE_CODE 'en-us'
LANGUAGE_COOKIE_AGE None
LANGUAGE_COOKIE_DOMAIN None
LANGUAGE_COOKIE_HTTPONLY False
LANGUAGE_COOKIE_NAME 'django_language'
LANGUAGE_COOKIE_PATH '/'
LANGUAGE_COOKIE_SAMESITE None
LANGUAGE_COOKIE_SECURE False
LOCALE_PATHS []
LOGGING {}
LOGGING_CONFIG 'logging.config.dictConfig'
LOGIN_REDIRECT_URL '/accounts/profile/'
LOGIN_URL '/accounts/login/'
LOGOUT_REDIRECT_URL None
MANAGERS []
MEDIA_ROOT PosixPath('/mnt/disks/pennyloupe_disk/pennyloupe/media')
MEDIA_URL '/media/'
MESSAGE_STORAGE 'django.contrib.messages.storage.fallback.FallbackStorage'
MIDDLEWARE ['django.middleware.security.SecurityMiddleware', 'whitenoise.middleware.WhiteNoiseMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.cache.UpdateCacheMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django_htmx.middleware.HtmxMiddleware', 'debug_toolbar.middleware.DebugToolbarMiddleware']
MIGRATION_MODULES {}
MONTH_DAY_FORMAT 'F j'
NUMBER_GROUPING 0
OPENAI_API_KEY '********************'
PASSWORD_HASHERS '********************'
PASSWORD_RESET_TIMEOUT '********************'
POLYGON_API_KEY '********************'
PREPEND_WWW False
QT_API_KEY '********************'
QT_APP_ID '13d3cbab'
QT_PASSWORD '********************'
QT_USERNAME 'kevin+dev3@pennyloupe.com'
ROOT_URLCONF 'app.urls'
SCRAPER_API_KEY '********************'
SECRET_KEY '********************'
SECRET_KEY_FALLBACKS '********************'
SECURE_CONTENT_TYPE_NOSNIFF True
SECURE_CROSS_ORIGIN_OPENER_POLICY 'same-origin'
SECURE_HSTS_INCLUDE_SUBDOMAINS False
SECURE_HSTS_PRELOAD False
SECURE_HSTS_SECONDS 0
SECURE_PROXY_SSL_HEADER None
SECURE_REDIRECT_EXEMPT []
SECURE_REFERRER_POLICY 'same-origin'
SECURE_SSL_HOST None
SECURE_SSL_REDIRECT False
SERVER_EMAIL 'root@localhost'
SESSION_CACHE_ALIAS 'default'
SESSION_COOKIE_AGE 1209600
SESSION_COOKIE_DOMAIN None
SESSION_COOKIE_HTTPONLY True
SESSION_COOKIE_NAME 'sessionid'
SESSION_COOKIE_PATH '/'
SESSION_COOKIE_SAMESITE 'Lax'
SESSION_COOKIE_SECURE False
SESSION_ENGINE 'django.contrib.sessions.backends.db'
SESSION_EXPIRE_AT_BROWSER_CLOSE False
SESSION_FILE_PATH None
SESSION_SAVE_EVERY_REQUEST False
SESSION_SERIALIZER 'django.contrib.sessions.serializers.JSONSerializer'
SETTINGS_MODULE 'app.settings'
SHORT_DATETIME_FORMAT 'm/d/Y P'
SHORT_DATE_FORMAT 'm/d/Y'
SIGNING_BACKEND 'django.core.signing.TimestampSigner'
SILENCED_SYSTEM_CHECKS []
SQL_FILES_DIR '/mnt/disks/pennyloupe_disk/pennyloupe/app/core/sql'
STATICFILES_DIRS []
STATICFILES_FINDERS ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
STATICFILES_STORAGE 'django.contrib.staticfiles.storage.StaticFilesStorage'
STATIC_ROOT PosixPath('/mnt/disks/pennyloupe_disk/pennyloupe/static')
STATIC_URL '/static/'
STORAGES {'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'}, 'staticfiles': {'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage'}}
TEMPLATES [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages']}}]
TEST_NON_SERIALIZED_APPS []
TEST_RUNNER 'django.test.runner.DiscoverRunner'
THOUSAND_SEPARATOR ','
TIME_FORMAT 'P'
TIME_INPUT_FORMATS ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
TIME_ZONE 'UTC'
USE_I18N True
USE_THOUSAND_SEPARATOR False
USE_TZ True
USE_X_FORWARDED_HOST False
USE_X_FORWARDED_PORT False
WSGI_APPLICATION 'app.wsgi.application'
X_FRAME_OPTIONS 'DENY'
YEAR_MONTH_FORMAT 'F Y'

Headers

Request headers

Key Value
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding br,gzip
Accept-Language en-US,en;q=0.5
Connection Keep-Alive
Host pennyloupe.com
User-Agent CCBot/2.0 (https://commoncrawl.org/faq/)

Response headers

Key Value
Content-Type text/html; charset=utf-8

WSGI environ

Since the WSGI environ inherits the environment of the server, only a significant subset is shown below.

Key Value
CONTENT_LENGTH
CONTENT_TYPE
PATH_INFO /model/tests
QUERY_STRING
REMOTE_ADDR 18.97.9.169
REQUEST_METHOD GET
SCRIPT_NAME
SERVER_NAME pennyloupe.com
SERVER_PORT 443
SERVER_PROTOCOL HTTP/1.1

Request

View information

View function Arguments Keyword arguments URL name
app.core.views.app.model_tests () {} model_tests

No cookies

No session data

No GET data

No POST data

SQL queries from 1 connection

  • default 2361.39 ms (5 queries )
Query Timeline Time (ms) Action
SELECT "pl_model_metrics"."created_dt",
       "pl_model_metrics"."updated_dt",
       "pl_model_metrics"."status_id",
       "pl_model_metrics"."id",
       "pl_model_metrics"."date",
       "pl_model_metrics"."metrics",
       "pl_model_metrics"."identifier",
       "pl_model_metrics"."model_id"
  FROM "pl_model_metrics"
 WHERE ("pl_model_metrics"."status_id" = 10 AND "pl_model_metrics"."date" >= '2025-02-25'::date AND "pl_model_metrics"."date" <= '2025-04-26'::date)
SELECT ••• FROM "pl_model_metrics" WHERE ("pl_model_metrics"."status_id" = 10 AND "pl_model_metrics"."date" >= '2025-02-25'::date AND "pl_model_metrics"."date" <= '2025-04-26'::date)
80.57

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in model_tests(1237)
  for metric in metrics:

SELECT "pl_model_test"."pick_date" AS "date",
       "pl_model_test"."model_id" AS "m_id",
       "pl_model"."name" AS "m_name",
       COUNT("pl_model_test"."id") FILTER (WHERE "pl_model_test"."result") AS "pass_count",
       COUNT("pl_model_test"."id") FILTER (WHERE NOT "pl_model_test"."result") AS "fail_count",
       COUNT("pl_model_test"."id") FILTER (WHERE (("pl_model_test"."meta" -> 'buy_price') IS NOT NULL AND ("pl_model_test"."meta" -> 'sell_price') > ("pl_model_test"."meta" -> 'buy_price') AND ("pl_model_test"."meta" -> 'sell_price') IS NOT NULL)) AS "hit_count",
       COUNT("pl_model_test"."id") AS "total_count",
       CASE WHEN COUNT("pl_model_test"."id") = 0 THEN 0.0
            ELSE ((COUNT("pl_model_test"."id") FILTER (WHERE "pl_model_test"."result") * 100.0) / COUNT("pl_model_test"."id"))
             END AS "win_rate",
       CASE WHEN COUNT("pl_model_test"."id") = 0 THEN 0.0
            ELSE ((COUNT("pl_model_test"."id") FILTER (WHERE (("pl_model_test"."meta" -> 'buy_price') IS NOT NULL AND ("pl_model_test"."meta" -> 'sell_price') > ("pl_model_test"."meta" -> 'buy_price') AND ("pl_model_test"."meta" -> 'sell_price') IS NOT NULL)) * 100.0) / COUNT("pl_model_test"."id"))
             END AS "hit_rate",
       AVG(((100 * ((("pl_model_test"."meta" -> 'sell_price'))::double precision - (("pl_model_test"."meta" -> 'buy_price'))::double precision)) / (("pl_model_test"."meta" -> 'buy_price'))::double precision)) AS "avg_performance"
  FROM "pl_model_test"
 INNER JOIN "pl_model"
    ON ("pl_model_test"."model_id" = "pl_model"."id")
 WHERE ("pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2025-02-25'::date AND "pl_model_test"."pick_date" <= '2025-04-26'::date)
 GROUP BY 1,
          2,
          3
 ORDER BY "pl_model_test"."pick_date" DESC,
          3 ASC
SELECT ••• FROM "pl_model_test" INNER JOIN "pl_model" ON ("pl_model_test"."model_id" = "pl_model"."id") WHERE ("pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2025-02-25'::date AND "pl_model_test"."pick_date" <= '2025-04-26'::date) GROUP BY 1, 2, 3 ORDER BY "pl_model_test"."pick_date" DESC, 3 ASC
681.70

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in model_tests(1265)
  for n, p in enumerate(performance_data):

SELECT DATE_TRUNC('week', "pl_model_test"."pick_date") AS "week",
       CASE WHEN ("pl_model_test"."probability" >= 0.0 AND "pl_model_test"."probability" <= 0.1) THEN 0.1
            WHEN ("pl_model_test"."probability" > 0.1 AND "pl_model_test"."probability" <= 0.2)  THEN 0.2
            WHEN ("pl_model_test"."probability" > 0.2 AND "pl_model_test"."probability" <= 0.3)  THEN 0.3
            WHEN ("pl_model_test"."probability" > 0.3 AND "pl_model_test"."probability" <= 0.4)  THEN 0.4
            WHEN ("pl_model_test"."probability" > 0.4 AND "pl_model_test"."probability" <= 0.5)  THEN 0.5
            WHEN ("pl_model_test"."probability" > 0.5 AND "pl_model_test"."probability" <= 0.6)  THEN 0.6
            WHEN ("pl_model_test"."probability" > 0.6 AND "pl_model_test"."probability" <= 0.7)  THEN 0.7
            WHEN ("pl_model_test"."probability" > 0.7 AND "pl_model_test"."probability" <= 0.8)  THEN 0.8
            WHEN ("pl_model_test"."probability" > 0.8 AND "pl_model_test"."probability" <= 0.9)  THEN 0.9
            WHEN ("pl_model_test"."probability" > 0.9 AND "pl_model_test"."probability" <= 1.0)  THEN 1.0
            ELSE NULL
             END AS "bin",
       COUNT("pl_model_test"."id") AS "total_count",
       COUNT("pl_model_test"."id") FILTER (WHERE (("pl_model_test"."meta" -> 'buy_price') IS NOT NULL AND ("pl_model_test"."meta" -> 'sell_price') > ("pl_model_test"."meta" -> 'buy_price') AND ("pl_model_test"."meta" -> 'sell_price') IS NOT NULL)) AS "hit_count",
       COUNT("pl_model_test"."id") FILTER (WHERE "pl_model_test"."result") AS "win_count",
       AVG(((100 * ((("pl_model_test"."meta" -> 'sell_price'))::double precision - (("pl_model_test"."meta" -> 'buy_price'))::double precision)) / (("pl_model_test"."meta" -> 'buy_price'))::double precision)) AS "avg_performance",
       CASE WHEN COUNT("pl_model_test"."id") = 0 THEN 0.0
            ELSE ((COUNT("pl_model_test"."id") FILTER (WHERE (("pl_model_test"."meta" -> 'buy_price') IS NOT NULL AND ("pl_model_test"."meta" -> 'sell_price') > ("pl_model_test"."meta" -> 'buy_price') AND ("pl_model_test"."meta" -> 'sell_price') IS NOT NULL)) * 100.0) / COUNT("pl_model_test"."id"))
             END AS "hit_rate",
       CASE WHEN COUNT("pl_model_test"."id") = 0 THEN 0.0
            ELSE ((COUNT("pl_model_test"."id") FILTER (WHERE "pl_model_test"."result") * 100.0) / COUNT("pl_model_test"."id"))
             END AS "win_rate",
       COUNT("pl_model_test"."id") AS "count"
  FROM "pl_model_test"
 WHERE ("pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2025-02-25'::date AND "pl_model_test"."pick_date" <= '2025-04-26'::date)
 GROUP BY 1,
          2
 ORDER BY 1 ASC,
          2 ASC
SELECT ••• FROM "pl_model_test" WHERE ("pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2025-02-25'::date AND "pl_model_test"."pick_date" <= '2025-04-26'::date) GROUP BY 1, 2 ORDER BY 1 ASC, 2 ASC
995.28

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in model_tests(1480)
  for entry in curve_data_weekly:

SELECT CASE WHEN ("pl_model_test"."probability" >= 0.0 AND "pl_model_test"."probability" <= 0.1) THEN 0.1
            WHEN ("pl_model_test"."probability" > 0.1 AND "pl_model_test"."probability" <= 0.2)  THEN 0.2
            WHEN ("pl_model_test"."probability" > 0.2 AND "pl_model_test"."probability" <= 0.3)  THEN 0.3
            WHEN ("pl_model_test"."probability" > 0.3 AND "pl_model_test"."probability" <= 0.4)  THEN 0.4
            WHEN ("pl_model_test"."probability" > 0.4 AND "pl_model_test"."probability" <= 0.5)  THEN 0.5
            WHEN ("pl_model_test"."probability" > 0.5 AND "pl_model_test"."probability" <= 0.6)  THEN 0.6
            WHEN ("pl_model_test"."probability" > 0.6 AND "pl_model_test"."probability" <= 0.7)  THEN 0.7
            WHEN ("pl_model_test"."probability" > 0.7 AND "pl_model_test"."probability" <= 0.8)  THEN 0.8
            WHEN ("pl_model_test"."probability" > 0.8 AND "pl_model_test"."probability" <= 0.9)  THEN 0.9
            WHEN ("pl_model_test"."probability" > 0.9 AND "pl_model_test"."probability" <= 1.0)  THEN 1.0
            ELSE NULL
             END AS "bin",
       COUNT("pl_model_test"."id") AS "total_count",
       COUNT("pl_model_test"."id") FILTER (WHERE (("pl_model_test"."meta" -> 'buy_price') IS NOT NULL AND ("pl_model_test"."meta" -> 'sell_price') > ("pl_model_test"."meta" -> 'buy_price') AND ("pl_model_test"."meta" -> 'sell_price') IS NOT NULL)) AS "hit_count",
       COUNT("pl_model_test"."id") FILTER (WHERE "pl_model_test"."result") AS "win_count",
       AVG(((100 * ((("pl_model_test"."meta" -> 'sell_price'))::double precision - (("pl_model_test"."meta" -> 'buy_price'))::double precision)) / (("pl_model_test"."meta" -> 'buy_price'))::double precision)) AS "avg_performance",
       CASE WHEN COUNT("pl_model_test"."id") = 0 THEN 0.0
            ELSE ((COUNT("pl_model_test"."id") FILTER (WHERE (("pl_model_test"."meta" -> 'buy_price') IS NOT NULL AND ("pl_model_test"."meta" -> 'sell_price') > ("pl_model_test"."meta" -> 'buy_price') AND ("pl_model_test"."meta" -> 'sell_price') IS NOT NULL)) * 100.0) / COUNT("pl_model_test"."id"))
             END AS "hit_rate",
       CASE WHEN COUNT("pl_model_test"."id") = 0 THEN 0.0
            ELSE ((COUNT("pl_model_test"."id") FILTER (WHERE "pl_model_test"."result") * 100.0) / COUNT("pl_model_test"."id"))
             END AS "win_rate",
       COUNT("pl_model_test"."id") AS "count"
  FROM "pl_model_test"
 WHERE ("pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2025-02-25'::date AND "pl_model_test"."pick_date" <= '2025-04-26'::date)
 GROUP BY 1
 ORDER BY 1 ASC
SELECT ••• FROM "pl_model_test" WHERE ("pl_model_test"."status_id" = 10 AND "pl_model_test"."pick_date" >= '2025-02-25'::date AND "pl_model_test"."pick_date" <= '2025-04-26'::date) GROUP BY 1 ORDER BY 1 ASC
602.11

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in model_tests(1553)
  "curve_data": list(curve_data),

SELECT "pl_model"."created_dt",
       "pl_model"."updated_dt",
       "pl_model"."status_id",
       "pl_model"."id",
       "pl_model"."key",
       "pl_model"."name",
       "pl_model"."description",
       "pl_model"."type",
       "pl_model"."version",
       "pl_model"."last_trained_dt",
       "pl_model"."last_run_dt",
       "pl_model"."end_point_url",
       "pl_model"."meta",
       "pl_model"."account_id"
  FROM "pl_model"
 WHERE "pl_model"."status_id" = 10
 ORDER BY "pl_model"."name" ASC
SELECT ••• FROM "pl_model" WHERE "pl_model"."status_id" = 10 ORDER BY "pl_model"."name" ASC
1.73

Connection: default

Transaction status: Idle

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/whitenoise/middleware.py in __call__(124)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/middleware.py in __call__(43)
  return self.get_response(request)

/mnt/disks/pennyloupe_disk/pennyloupe/app/core/views/app.py in model_tests(1561)
  cache.set(cache_key, context, 24*60*60)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/core/cache/backends/filebased.py in set(54)
  self._write_content(f, timeout, value)

/mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/core/cache/backends/filebased.py in _write_content(44)
  file.write(zlib.compress(pickle.dumps(value, self.pickle_protocol)))

Static files (717 found, 2 used)

Static file paths

None

Static file apps

  1. grappelli
  2. django.contrib.admin
  3. django_htmx
  4. app.core
  5. django_extensions
  6. debug_toolbar

Static files

css/pennyloupe.css
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/css/pennyloupe.css
img/penny_loupe_logo.png
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_logo.png

django.contrib.staticfiles.finders.AppDirectoriesFinder (717 files)

Path Location
.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/.DS_Store
grappelli/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/.DS_Store
grappelli/js/grappelli.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/grappelli.js
grappelli/js/jquery.grp_related_m2m.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_related_m2m.js
grappelli/js/jquery.grp_autocomplete_fk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_autocomplete_fk.js
grappelli/js/jquery.grp_autocomplete_generic.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_autocomplete_generic.js
grappelli/js/jquery.grp_timepicker.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_timepicker.js
grappelli/js/jquery.grp_collapsible_group.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_collapsible_group.js
grappelli/js/jquery.grp_related_generic.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_related_generic.js
grappelli/js/jquery.grp_related_fk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_related_fk.js
grappelli/js/jquery.grp_collapsible.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_collapsible.js
grappelli/js/grappelli.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/grappelli.min.js
grappelli/js/jquery.grp_autocomplete_m2m.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_autocomplete_m2m.js
grappelli/js/jquery.grp_inline.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/js/jquery.grp_inline.js
grappelli/images/spritesheet-1694777276.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/spritesheet-1694777276.png
grappelli/images/backgrounds/loading-small.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/loading-small.gif
grappelli/images/backgrounds/changelist-results.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/changelist-results.png
grappelli/images/backgrounds/ui-sortable-placeholder.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/ui-sortable-placeholder.png
grappelli/images/backgrounds/nav-grabber.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/nav-grabber.gif
grappelli/images/backgrounds/messagelist.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/backgrounds/messagelist.png
grappelli/images/icons/ui-datepicker-next.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/ui-datepicker-next.png
grappelli/images/icons/link-external-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-external-small_hover.png
grappelli/images/icons/tools-arrow-up-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-arrow-up-handler_hover.png
grappelli/images/icons/date-hierarchy-back.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/date-hierarchy-back.png
grappelli/images/icons/tools-delete-handler-predelete.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-delete-handler-predelete.png
grappelli/images/icons/breadcrumbs-rtl.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/breadcrumbs-rtl.png
grappelli/images/icons/datepicker_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/datepicker_hover.png
grappelli/images/icons/tools-trash-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-trash-handler_hover.png
grappelli/images/icons/selector-add-m2m-vertical_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-add-m2m-vertical_hover.png
grappelli/images/icons/tools-related-remove-handler-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler-small_hover.png
grappelli/images/icons/sorted-descending.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sorted-descending.png
grappelli/images/icons/breadcrumbs_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/breadcrumbs_hover.png
grappelli/images/icons/tools-viewsite-link_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-viewsite-link_hover.png
grappelli/images/icons/object-tools-add-link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/object-tools-add-link.png
grappelli/images/icons/tools-related-edit-handler-small-disabled.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-edit-handler-small-disabled.png
grappelli/images/icons/tools-related-remove-handler-small-disabled.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler-small-disabled.png
grappelli/images/icons/sorted-ascending.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sorted-ascending.png
grappelli/images/icons/link-internal-rtl-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-rtl-small_hover.png
grappelli/images/icons/pulldown-handler_selected.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/pulldown-handler_selected.png
grappelli/images/icons/tools-delete-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-delete-handler_hover.png
grappelli/images/icons/tools-trash-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-trash-handler.png
grappelli/images/icons/related-lookup-m2m_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-lookup-m2m_hover.png
grappelli/images/icons/tools-arrow-down-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-arrow-down-handler.png
grappelli/images/icons/tools-arrow-down-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-arrow-down-handler_hover.png
grappelli/images/icons/selector-filter.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-filter.png
grappelli/images/icons/link-external-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-external-small.png
grappelli/images/icons/link-external-rtl-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-external-rtl-small.png
grappelli/images/icons/date-hierarchy-back_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/date-hierarchy-back_hover.png
grappelli/images/icons/change-link-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/change-link-small_hover.png
grappelli/images/icons/datetime-now.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/datetime-now.png
grappelli/images/icons/change-link-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/change-link-small.png
grappelli/images/icons/sort-remove_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sort-remove_hover.png
grappelli/images/icons/tools-related-edit-handler-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-edit-handler-small.png
grappelli/images/icons/link-internal-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-small_hover.png
grappelli/images/icons/th-ascending.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/th-ascending.png
grappelli/images/icons/related-lookup-m2m.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-lookup-m2m.png
grappelli/images/icons/tools-related-remove-handler-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler-small.png
grappelli/images/icons/autocomplete-single-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/autocomplete-single-small.png
grappelli/images/icons/breadcrumbs.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/breadcrumbs.png
grappelli/images/icons/selector-add-m2m-horizontal_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-add-m2m-horizontal_hover.png
grappelli/images/icons/tools-related-add-handler-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-add-handler-small_hover.png
grappelli/images/icons/add-link-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/add-link-small_hover.png
grappelli/images/icons/add-link-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/add-link-small.png
grappelli/images/icons/add-another.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/add-another.png
grappelli/images/icons/tools-drag-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-drag-handler_hover.png
grappelli/images/icons/related-remove_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-remove_hover.png
grappelli/images/icons/pulldown-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/pulldown-handler.png
grappelli/images/icons/ui-datepicker-prev.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/ui-datepicker-prev.png
grappelli/images/icons/selector-remove-m2m-horizontal_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-remove-m2m-horizontal_hover.png
grappelli/images/icons/tools-close-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-close-handler_hover.png
grappelli/images/icons/tools-trash-list-toggle-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-trash-list-toggle-handler.png
grappelli/images/icons/tools-related-remove-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler.png
grappelli/images/icons/link-internal-rtl_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-rtl_hover.png
grappelli/images/icons/object-tools-viewsite-link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/object-tools-viewsite-link.png
grappelli/images/icons/tools-related-remove-handler-disabled.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler-disabled.png
grappelli/images/icons/timepicker.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/timepicker.png
grappelli/images/icons/tools-related-edit-handler-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-edit-handler-small_hover.png
grappelli/images/icons/selector-add-m2m-vertical.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-add-m2m-vertical.png
grappelli/images/icons/date-hierarchy-back-rtl.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/date-hierarchy-back-rtl.png
grappelli/images/icons/selector-remove-m2m-vertical_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-remove-m2m-vertical_hover.png
grappelli/images/icons/datepicker.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/datepicker.png
grappelli/images/icons/datetime-now_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/datetime-now_hover.png
grappelli/images/icons/breadcrumbs-rtl_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/breadcrumbs-rtl_hover.png
grappelli/images/icons/selector-add-m2m-horizontal.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-add-m2m-horizontal.png
grappelli/images/icons/status-no.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/status-no.png
grappelli/images/icons/status-unknown.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/status-unknown.png
grappelli/images/icons/tools-open-handler-hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-open-handler-hover.png
grappelli/images/icons/pulldown-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/pulldown-handler_hover.png
grappelli/images/icons/back-link-rtl.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/back-link-rtl.png
grappelli/images/icons/tools-remove-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-remove-handler.png
grappelli/images/icons/ui-datepicker-next_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/ui-datepicker-next_hover.png
grappelli/images/icons/date-hierarchy-back-rtl_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/date-hierarchy-back-rtl_hover.png
grappelli/images/icons/delete-link-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/delete-link-small.png
grappelli/images/icons/tools-edit-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-edit-handler_hover.png
grappelli/images/icons/tools-viewsite-link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-viewsite-link.png
grappelli/images/icons/tools-open-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-open-handler.png
grappelli/images/icons/tools-add-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-add-handler.png
grappelli/images/icons/th-descending.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/th-descending.png
grappelli/images/icons/tools-drag-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-drag-handler.png
grappelli/images/icons/tools-related-edit-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-edit-handler.png
grappelli/images/icons/tools-related-add-handler-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-add-handler-small.png
grappelli/images/icons/sort-remove-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sort-remove-small.png
grappelli/images/icons/related-lookup.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-lookup.png
grappelli/images/icons/tools-trash-list-toggle-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-trash-list-toggle-handler_hover.png
grappelli/images/icons/sort-remove.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/sort-remove.png
grappelli/images/icons/autocomplete-multiple-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/autocomplete-multiple-small.png
grappelli/images/icons/back-link-rtl_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/back-link-rtl_hover.png
grappelli/images/icons/link-internal-rtl.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-rtl.png
grappelli/images/icons/link-external-rtl-small_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-external-rtl-small_hover.png
grappelli/images/icons/tools-add-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-add-handler_hover.png
grappelli/images/icons/tools-close-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-close-handler.png
grappelli/images/icons/back-link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/back-link.png
grappelli/images/icons/selector-remove-m2m-vertical.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-remove-m2m-vertical.png
grappelli/images/icons/status-yes.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/status-yes.png
grappelli/images/icons/form-select.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/form-select.png
grappelli/images/icons/tools-related-add-handler-small-disabled.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-add-handler-small-disabled.png
grappelli/images/icons/related-remove.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-remove.png
grappelli/images/icons/tools-edit-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-edit-handler.png
grappelli/images/icons/tools-remove-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-remove-handler_hover.png
grappelli/images/icons/tools-delete-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-delete-handler.png
grappelli/images/icons/tools-arrow-up-handler.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-arrow-up-handler.png
grappelli/images/icons/ui-datepicker-prev_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/ui-datepicker-prev_hover.png
grappelli/images/icons/timepicker_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/timepicker_hover.png
grappelli/images/icons/filter-choice-selected-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/filter-choice-selected-small.png
grappelli/images/icons/related-lookup_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/related-lookup_hover.png
grappelli/images/icons/link-internal-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-small.png
grappelli/images/icons/link-internal-rtl-small.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/link-internal-rtl-small.png
grappelli/images/icons/tools-related-remove-handler_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/tools-related-remove-handler_hover.png
grappelli/images/icons/add-another_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/add-another_hover.png
grappelli/images/icons/selector-remove-m2m-horizontal.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/selector-remove-m2m-horizontal.png
grappelli/images/icons/searchbox.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/searchbox.png
grappelli/images/icons/back-link_hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/images/icons/back-link_hover.png
grappelli/img/admin/arrow-up.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/img/admin/arrow-up.gif
grappelli/img/admin/arrow-down.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/img/admin/arrow-down.gif
grappelli/tinymce_setup/tinymce_setup.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce_setup/tinymce_setup.js
grappelli/stylesheets/screen.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/screen.css
grappelli/stylesheets/rtl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/rtl.css
grappelli/stylesheets/mueller/screen.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/mueller/screen.css
grappelli/stylesheets/mueller/grid/output.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/mueller/grid/output.css
grappelli/stylesheets/mueller/grid/output-rtl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/mueller/grid/output-rtl.css
grappelli/stylesheets/partials/custom/tinymce.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/stylesheets/partials/custom/tinymce.css
grappelli/tinymce/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/.DS_Store
grappelli/tinymce/changelog.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/changelog.txt
grappelli/tinymce/examples/word.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/word.html
grappelli/tinymce/examples/simple.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/simple.html
grappelli/tinymce/examples/skins.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/skins.html
grappelli/tinymce/examples/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/.DS_Store
grappelli/tinymce/examples/index.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/index.html
grappelli/tinymce/examples/full.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/full.html
grappelli/tinymce/examples/menu.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/menu.html
grappelli/tinymce/examples/custom_formats.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/custom_formats.html
grappelli/tinymce/examples/accessibility.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/accessibility.html
grappelli/tinymce/examples/templates/layout1.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/templates/layout1.htm
grappelli/tinymce/examples/templates/snippet1.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/templates/snippet1.htm
grappelli/tinymce/examples/lists/template_list.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/lists/template_list.js
grappelli/tinymce/examples/lists/media_list.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/lists/media_list.js
grappelli/tinymce/examples/lists/image_list.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/lists/image_list.js
grappelli/tinymce/examples/lists/link_list.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/lists/link_list.js
grappelli/tinymce/examples/css/word.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/css/word.css
grappelli/tinymce/examples/css/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/css/content.css
grappelli/tinymce/examples/media/sample.ram /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.ram
grappelli/tinymce/examples/media/sample.mov /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.mov
grappelli/tinymce/examples/media/sample.rm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.rm
grappelli/tinymce/examples/media/sample.avi /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.avi
grappelli/tinymce/examples/media/sample.swf /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.swf
grappelli/tinymce/examples/media/sample.dcr /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.dcr
grappelli/tinymce/examples/media/logo.jpg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/logo.jpg
grappelli/tinymce/examples/media/sample.flv /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/sample.flv
grappelli/tinymce/examples/media/logo_over.jpg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/examples/media/logo_over.jpg
grappelli/tinymce/jscripts/tiny_mce/tiny_mce_popup.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/tiny_mce_popup.js
grappelli/tinymce/jscripts/tiny_mce/license.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/license.txt
grappelli/tinymce/jscripts/tiny_mce/tiny_mce.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/tiny_mce.js
grappelli/tinymce/jscripts/tiny_mce/tiny_mce_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/tiny_mce_src.js
grappelli/tinymce/jscripts/tiny_mce/utils/mctabs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/utils/mctabs.js
grappelli/tinymce/jscripts/tiny_mce/utils/form_utils.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/utils/form_utils.js
grappelli/tinymce/jscripts/tiny_mce/utils/editable_selects.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/utils/editable_selects.js
grappelli/tinymce/jscripts/tiny_mce/utils/validate.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/utils/validate.js
grappelli/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/editor_template.js
grappelli/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/editor_template_src.js
grappelli/tinymce/jscripts/tiny_mce/themes/simple/img/icons.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/img/icons.gif
grappelli/tinymce/jscripts/tiny_mce/themes/simple/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/default/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/default/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/default/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/default/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/color_picker.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/charmap.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/editor_template.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/image.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/image.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/anchor.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/source_editor.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/shortcuts.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/shortcuts.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/editor_template_src.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/about.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/about.htm
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/source_editor.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/charmap.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/image.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/image.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/about.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/link.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/color_picker.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/js/anchor.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/shockwave.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/shockwave.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/quicktime.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/quicktime.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/iframe.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/iframe.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/icons.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/video.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/video.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/trans.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/trans.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/colorpicker.jpg
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/realmedia.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/realmedia.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/flash.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/flash.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/pagebreak.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/pagebreak.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/windowsmedia.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/img/windowsmedia.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_pl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_pl.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_base.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_base.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_typography.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_typography.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/customized.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/customized.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_de.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_de.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_en.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_en.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_cs.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_documentstructure_cs.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_grid.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content_grid.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/dialog.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/dialog.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show-hover.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-fb_show-hover.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-mceResize.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/icons/icon-mceResize.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/icon-mceOpen.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/menu/icon-mceOpen.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/customized/button_pagebreak.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/customized/button_pagebreak.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/customized/pagebreak.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/customized/pagebreak.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/unlink.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/unlink.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/visualchars.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/visualchars.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_after.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_after.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifycenter.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifycenter.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/redo.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/redo.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/link.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/link.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_delete_row.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_delete_row.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/pasteword.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/pasteword.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/italic.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/italic.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/fullscreen.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/fullscreen.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/code.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/code.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/image.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/image.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyright.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyright.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_before.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_before.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/template.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/template.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/show_advanced.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/show_advanced.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_props.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_row_props.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/undo.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/undo.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyleft.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyleft.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/underline.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/underline.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_delete_col.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_delete_col.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/media.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/media.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyfull.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/justifyfull.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_merge_cells.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_merge_cells.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_col_after.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_col_after.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_split_cells.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_split_cells.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_col_before.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_col_before.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bold.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bold.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/charmap.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/charmap.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/numlist.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/numlist.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bullist.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/bullist.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_cell_props.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/table_cell_props.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/search.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/search.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/blockquote.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/blockquote.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/cleanup.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/grappelli/img/buttons/cleanup.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/dialog.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/buttons.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/tabs.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/menu_check.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/progress.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/img/items.gif
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/dialog.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/dialog.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_black.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/ui_black.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/ui.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/content.css
grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/dialog.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/themes/advanced/skins/highcontrast/dialog.css
grappelli/tinymce/jscripts/tiny_mce/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/merge_cells.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/table/table.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/table.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/table/row.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/row.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/cell.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/cell.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/row.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/row.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/merge_cells.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/merge_cells.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/cell.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/table.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/js/table.js
grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/row.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/row.css
grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/table.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/table.css
grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/css/cell.css
grappelli/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/table/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/image.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/js/image.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/img/sample.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/img/sample.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/css/advimage.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/style/readme.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/readme.txt
grappelli/tinymce/jscripts/tiny_mce/plugins/style/props.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/props.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/style/js/props.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/js/props.js
grappelli/tinymce/jscripts/tiny_mce/plugins/style/css/props.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/css/props.css
grappelli/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/style/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/fullpage.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/js/fullpage.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/js/fullpage.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/css/fullpage.css
grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullpage/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autosave/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/directionality/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/moxieplayer.swf /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/moxieplayer.swf
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/media.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/media.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/js/media.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/js/media.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/js/embed.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/js/embed.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/css/media.css
grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/example.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/example.html
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/preview.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/preview.html
grappelli/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/preview/jscripts/embed.js
grappelli/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/print/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/blank.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/template.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/template.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/js/template.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/js/template.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/css/template.css
grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/img/visualchars.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/img/visualchars.png
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/img/show_advanced.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/img/show_advanced.png
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/fr.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/cs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/cs.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/pl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/pl.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/de.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/ru.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli/langs/ru.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualchars/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlist/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/image.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/image.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/js/image.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/sample.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/img/sample.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/css/advimage.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advimage_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/pastetext.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/pasteword.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/js/pasteword.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/js/pasteword.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/js/pastetext.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/js/pastetext.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/css/visualblocks.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/visualblocks/css/visualblocks.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/rule.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/js/rule.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/js/rule.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/css/advhr.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advhr/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/save/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/fullscreen.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/fullscreen/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/bbcode/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example_dependency/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autoresize/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/lists/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/lists/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/lists/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/lists/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/pastetext.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/pasteword.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pasteword.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/js/pastetext.js
grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/paste_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template/blank.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/blank.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/template/template.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/template.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template/js/template.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/js/template.js
grappelli/tinymce/jscripts/tiny_mce/plugins/template/css/template.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/css/template.css
grappelli/tinymce/jscripts/tiny_mce/plugins/template/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/template/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/template.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/searchreplace.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/js/searchreplace.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/css/searchreplace.css
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/link.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/js/advlink.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/css/advlink.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/tabfocus/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/layer/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/pagebreak/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/iespell/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/dialog.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/js/dialog.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/js/dialog.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/img/example.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/img/example.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/example/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/example/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/example/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/cite.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/del.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/acronym.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/ins.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/abbr.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/attributes.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/ins.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/cite.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/cite.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/acronym.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/acronym.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/attributes.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/attributes.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/element_common.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/element_common.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/abbr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/abbr.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/del.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/js/del.js
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/popup.css
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/css/attributes.css
grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/noneditable/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/fr.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/cs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/cs.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/pl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/pl.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/en.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/de.js
grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/ru.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/grappelli_contextmenu/langs/ru.js
grappelli/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/contextmenu/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/legacyoutput/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autolink/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autolink/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/autolink/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/autolink/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/wordcount/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/emotions.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/js/emotions.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/js/emotions.js
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-tongue-out.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-smile.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-laughing.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cool.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-money-mouth.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-foot-in-mouth.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-kiss.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-surprised.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-wink.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-sealed.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-frown.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-frown.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-cry.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-embarassed.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-undecided.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-yell.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/img/smiley-innocent.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/emotions/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/link.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/js/advlink.js
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/css/advlink.css
grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/advlink_orig/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/img/wline.gif
grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/spellchecker/css/content.css
grappelli/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/insertdatetime/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/searchreplace.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/js/searchreplace.js
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/css/searchreplace.css
grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/searchreplace/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/moxieplayer.swf /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/moxieplayer.swf
grappelli/tinymce/jscripts/tiny_mce/plugins/media/media.htm /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/media.htm
grappelli/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/editor_plugin.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/js/media.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/js/media.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/js/embed.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/js/embed.js
grappelli/tinymce/jscripts/tiny_mce/plugins/media/css/media.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/css/media.css
grappelli/tinymce/jscripts/tiny_mce/plugins/media/langs/en_dlg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/media/langs/en_dlg.js
grappelli/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin_src.js
grappelli/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/tinymce/jscripts/tiny_mce/plugins/nonbreaking/editor_plugin.js
grappelli/jquery/jquery.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/jquery.min.js
grappelli/jquery/jquery.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/jquery.js
grappelli/jquery/LICENSE-JQUERY.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/LICENSE-JQUERY.txt
grappelli/jquery/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/.DS_Store
grappelli/jquery/jquery-migrate-3.0.1.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/jquery-migrate-3.0.1.min.js
grappelli/jquery/LICENSE.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/LICENSE.txt
grappelli/jquery/jquery-migrate-3.0.1.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/jquery-migrate-3.0.1.js
grappelli/jquery/ui/jquery-ui.structure.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.structure.css
grappelli/jquery/ui/jquery-ui.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.css
grappelli/jquery/ui/jquery-ui.structure.min.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.structure.min.css
grappelli/jquery/ui/jquery-ui.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.js
grappelli/jquery/ui/AUTHORS.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/AUTHORS.txt
grappelli/jquery/ui/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/.DS_Store
grappelli/jquery/ui/jquery-ui.theme.min.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.theme.min.css
grappelli/jquery/ui/index.html /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/index.html
grappelli/jquery/ui/LICENSE.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/LICENSE.txt
grappelli/jquery/ui/jquery-ui.min.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.min.css
grappelli/jquery/ui/jquery-ui.theme.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.theme.css
grappelli/jquery/ui/jquery-ui.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/jquery-ui.min.js
grappelli/jquery/ui/images/ui-icons_cc0000_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_cc0000_256x240.png
grappelli/jquery/ui/images/ui-icons_777620_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_777620_256x240.png
grappelli/jquery/ui/images/ui-icons_555555_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_555555_256x240.png
grappelli/jquery/ui/images/ui-icons_777777_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_777777_256x240.png
grappelli/jquery/ui/images/ui-icons_444444_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_444444_256x240.png
grappelli/jquery/ui/images/ui-icons_ffffff_256x240.png /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/images/ui-icons_ffffff_256x240.png
grappelli/jquery/ui/external/jquery/jquery.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/grappelli/jquery/ui/external/jquery/jquery.js
admin/js/actions.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/admin/js/actions.js
admin/js/admin/.DS_Store /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/admin/js/admin/.DS_Store
admin/js/admin/DateTimeShortcuts.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/admin/js/admin/DateTimeShortcuts.js
admin/js/admin/RelatedObjectLookups.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/grappelli/static/admin/js/admin/RelatedObjectLookups.js
admin/js/nav_sidebar.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/nav_sidebar.js
admin/js/autocomplete.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/autocomplete.js
admin/js/jquery.init.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/jquery.init.js
admin/js/urlify.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/urlify.js
admin/js/calendar.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/calendar.js
admin/js/actions.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/actions.js
admin/js/core.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/core.js
admin/js/SelectFilter2.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/SelectFilter2.js
admin/js/prepopulate_init.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/prepopulate_init.js
admin/js/change_form.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/change_form.js
admin/js/inlines.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/inlines.js
admin/js/cancel.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/cancel.js
admin/js/prepopulate.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/prepopulate.js
admin/js/theme.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/theme.js
admin/js/popup_response.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/popup_response.js
admin/js/SelectBox.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/SelectBox.js
admin/js/collapse.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/collapse.js
admin/js/filters.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/filters.js
admin/js/vendor/xregexp/LICENSE.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/LICENSE.txt
admin/js/vendor/xregexp/xregexp.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.js
admin/js/vendor/xregexp/xregexp.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/xregexp/xregexp.min.js
admin/js/vendor/select2/LICENSE.md /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/LICENSE.md
admin/js/vendor/select2/select2.full.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.js
admin/js/vendor/select2/select2.full.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/select2.full.min.js
admin/js/vendor/select2/i18n/bs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bs.js
admin/js/vendor/select2/i18n/ja.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ja.js
admin/js/vendor/select2/i18n/sr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr.js
admin/js/vendor/select2/i18n/he.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/he.js
admin/js/vendor/select2/i18n/ca.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ca.js
admin/js/vendor/select2/i18n/bn.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bn.js
admin/js/vendor/select2/i18n/sk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sk.js
admin/js/vendor/select2/i18n/hr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hr.js
admin/js/vendor/select2/i18n/ar.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ar.js
admin/js/vendor/select2/i18n/hy.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hy.js
admin/js/vendor/select2/i18n/th.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/th.js
admin/js/vendor/select2/i18n/vi.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/vi.js
admin/js/vendor/select2/i18n/mk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/mk.js
admin/js/vendor/select2/i18n/hi.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hi.js
admin/js/vendor/select2/i18n/lt.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lt.js
admin/js/vendor/select2/i18n/tk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tk.js
admin/js/vendor/select2/i18n/fr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fr.js
admin/js/vendor/select2/i18n/fi.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fi.js
admin/js/vendor/select2/i18n/zh-CN.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-CN.js
admin/js/vendor/select2/i18n/sr-Cyrl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sr-Cyrl.js
admin/js/vendor/select2/i18n/pt-BR.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt-BR.js
admin/js/vendor/select2/i18n/ne.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ne.js
admin/js/vendor/select2/i18n/ko.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ko.js
admin/js/vendor/select2/i18n/et.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/et.js
admin/js/vendor/select2/i18n/pt.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pt.js
admin/js/vendor/select2/i18n/da.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/da.js
admin/js/vendor/select2/i18n/bg.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/bg.js
admin/js/vendor/select2/i18n/es.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/es.js
admin/js/vendor/select2/i18n/is.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/is.js
admin/js/vendor/select2/i18n/hu.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hu.js
admin/js/vendor/select2/i18n/af.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/af.js
admin/js/vendor/select2/i18n/cs.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/cs.js
admin/js/vendor/select2/i18n/nl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nl.js
admin/js/vendor/select2/i18n/sv.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sv.js
admin/js/vendor/select2/i18n/el.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/el.js
admin/js/vendor/select2/i18n/fa.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/fa.js
admin/js/vendor/select2/i18n/it.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/it.js
admin/js/vendor/select2/i18n/dsb.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/dsb.js
admin/js/vendor/select2/i18n/zh-TW.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/zh-TW.js
admin/js/vendor/select2/i18n/ro.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ro.js
admin/js/vendor/select2/i18n/km.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/km.js
admin/js/vendor/select2/i18n/pl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/pl.js
admin/js/vendor/select2/i18n/ms.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ms.js
admin/js/vendor/select2/i18n/ps.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ps.js
admin/js/vendor/select2/i18n/tr.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/tr.js
admin/js/vendor/select2/i18n/en.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/en.js
admin/js/vendor/select2/i18n/nb.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/nb.js
admin/js/vendor/select2/i18n/gl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/gl.js
admin/js/vendor/select2/i18n/de.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/de.js
admin/js/vendor/select2/i18n/eu.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/eu.js
admin/js/vendor/select2/i18n/id.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/id.js
admin/js/vendor/select2/i18n/ru.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ru.js
admin/js/vendor/select2/i18n/hsb.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/hsb.js
admin/js/vendor/select2/i18n/az.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/az.js
admin/js/vendor/select2/i18n/lv.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/lv.js
admin/js/vendor/select2/i18n/ka.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/ka.js
admin/js/vendor/select2/i18n/sl.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sl.js
admin/js/vendor/select2/i18n/uk.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/uk.js
admin/js/vendor/select2/i18n/sq.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/select2/i18n/sq.js
admin/js/vendor/jquery/jquery.min.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.min.js
admin/js/vendor/jquery/jquery.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.js
admin/js/vendor/jquery/LICENSE.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/LICENSE.txt
admin/js/admin/DateTimeShortcuts.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
admin/js/admin/RelatedObjectLookups.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/js/admin/RelatedObjectLookups.js
admin/img/search.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/search.svg
admin/img/icon-unknown.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-unknown.svg
admin/img/tooltag-arrowright.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/tooltag-arrowright.svg
admin/img/icon-deletelink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-deletelink.svg
admin/img/icon-viewlink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-viewlink.svg
admin/img/icon-alert.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-alert.svg
admin/img/inline-delete.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/inline-delete.svg
admin/img/icon-addlink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-addlink.svg
admin/img/selector-icons.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/selector-icons.svg
admin/img/tooltag-add.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/tooltag-add.svg
admin/img/icon-calendar.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-calendar.svg
admin/img/icon-unknown-alt.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-unknown-alt.svg
admin/img/icon-clock.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-clock.svg
admin/img/icon-no.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-no.svg
admin/img/LICENSE /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/LICENSE
admin/img/icon-hidelink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-hidelink.svg
admin/img/README.txt /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/README.txt
admin/img/sorting-icons.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/sorting-icons.svg
admin/img/icon-changelink.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-changelink.svg
admin/img/calendar-icons.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/calendar-icons.svg
admin/img/icon-yes.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/icon-yes.svg
admin/img/gis/move_vertex_off.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_off.svg
admin/img/gis/move_vertex_on.svg /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/img/gis/move_vertex_on.svg
admin/css/base.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/base.css
admin/css/dark_mode.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/dark_mode.css
admin/css/login.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/login.css
admin/css/responsive_rtl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/responsive_rtl.css
admin/css/responsive.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/responsive.css
admin/css/rtl.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/rtl.css
admin/css/widgets.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/widgets.css
admin/css/autocomplete.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/autocomplete.css
admin/css/dashboard.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/dashboard.css
admin/css/nav_sidebar.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/nav_sidebar.css
admin/css/changelists.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/changelists.css
admin/css/forms.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/forms.css
admin/css/vendor/select2/LICENSE-SELECT2.md /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/LICENSE-SELECT2.md
admin/css/vendor/select2/select2.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.css
admin/css/vendor/select2/select2.min.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django/contrib/admin/static/admin/css/vendor/select2/select2.min.css
django-htmx.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_htmx/static/django-htmx.js
js/htmx.min.js /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/js/htmx.min.js
js/tradingview/charting_library/charting_library.standalone.js /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/js/tradingview/charting_library/charting_library.standalone.js
img/how-it-works.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/how-it-works.png
img/penny_loupe_logo_bw.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_logo_bw.png
img/volatility.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/volatility.png
img/penny_loupe_bg.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_bg.png
img/penny_loupe_logo.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_logo.png
img/news_sites.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/news_sites.png
img/pennyloupe_icon.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/pennyloupe_icon.png
img/penny_loupe_logo_inv.png /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/img/penny_loupe_logo_inv.png
css/pennyloupe.css /mnt/disks/pennyloupe_disk/pennyloupe/app/core/static/css/pennyloupe.css
django_extensions/js/jquery.ajaxQueue.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.ajaxQueue.js
django_extensions/js/jquery.bgiframe.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.bgiframe.js
django_extensions/js/jquery.autocomplete.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/js/jquery.autocomplete.js
django_extensions/img/indicator.gif /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/img/indicator.gif
django_extensions/css/jquery.autocomplete.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/django_extensions/static/django_extensions/css/jquery.autocomplete.css
debug_toolbar/js/utils.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/utils.js
debug_toolbar/js/history.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/history.js
debug_toolbar/js/toolbar.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/toolbar.js
debug_toolbar/js/timer.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/timer.js
debug_toolbar/js/redirect.js /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/js/redirect.js
debug_toolbar/css/toolbar.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/css/toolbar.css
debug_toolbar/css/print.css /mnt/disks/pennyloupe_disk/pennyloupe/.venv/lib/python3.11/site-packages/debug_toolbar/static/debug_toolbar/css/print.css

Templates (262 rendered)

Template path

  1. templates

Templates

model_tests.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/model_tests.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}}
base.html
/mnt/disks/pennyloupe_disk/pennyloupe/templates/base.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}}
components/leftnav.html
/mnt/disks/pennyloupe_disk/pennyloupe/templates/components/leftnav.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: leftnav. Contents: [<TextNode: '\n <div'>, <IncludeNode: template=<FilterExpression '"components/leftnav.html"'>>, <TextNode: '\n </di'>]>}
components/header.html
/mnt/disks/pennyloupe_disk/pennyloupe/templates/components/header.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: header. Contents: [<TextNode: '\n\n '>, <IncludeNode: template=<FilterExpression '"components/header.html"'>>, <TextNode: '\n\n '>]>}
components/kpis.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/components/kpis.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'kpi': ''}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0.21, 'financial': 0, 'other': 0.08}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0.03, 'financial': 0, 'other': 0.18}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0.42, 'financial': 0, 'other': 0.08}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0.44, 'financial': 0, 'other': 0.13}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0.18, 'financial': 0, 'other': 0.04}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0, 'financial': 0, 'other': 0}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114, 'bin': 0.9, 'count': 959, 'hit_count': 901, 'hit_rate': 93.95203336809176, 'total_count': 959, 'week': '2025-02-24', 'win_count': 637, 'win_rate': 66.42335766423358}, {'avg_performance': 7.518706074934202, 'bin': 1.0, 'count': 957, 'hit_count': 912, 'hit_rate': 95.29780564263324, 'total_count': 957, 'week': '2025-02-24', 'win_count': 759, 'win_rate': 79.3103448275862}], '2025-03-03': [{'avg_performance': 2.7003736464946764, 'bin': 0.1, 'count': 13, 'hit_count': 8, 'hit_rate': 61.53846153846154, 'total_count': 13, 'week': '2025-03-03', 'win_count': 7, 'win_rate': 53.84615384615385}, {'avg_performance': 1.7982952397629262, 'bin': 0.2, 'count': 82, 'hit_count': 55, 'hit_rate': 67.07317073170732, 'total_count': 82, 'week': '2025-03-03', 'win_count': 35, 'win_rate': 42.68292682926829}, {'avg_performance': 2.4606627859789887, 'bin': 0.3, 'count': 5888, 'hit_count': 3472, 'hit_rate': 58.96739130434783, 'total_count': 5888, 'week': '2025-03-03', 'win_count': 2287, 'win_rate': 38.84171195652174}, {'avg_performance': 4.258581150474061, 'bin': 0.4, 'count': 1183, 'hit_count': 911, 'hit_rate': 77.00760777683854, 'total_count': 1183, 'week': '2025-03-03', 'win_count': 603, 'win_rate': 50.972104818258664}, {'avg_performance': 4.203851497380626, 'bin': 0.5, 'count': 18822, 'hit_count': 13523, 'hit_rate': 71.84677505047286, 'total_count': 18822, 'week': '2025-03-03', 'win_count': 9352, 'win_rate': 49.68653703113378}, {'avg_performance': 4.82491699828772, 'bin': 0.6, 'count': 17354, 'hit_count': 12974, 'hit_rate': 74.76086204909531, 'total_count': 17354, 'week': '2025-03-03', 'win_count': 9081, 'win_rate': 52.327993546156506}, {'avg_performance': 7.158123388319563, 'bin': 0.7, 'count': 4242, 'hit_count': 3901, 'hit_rate': 91.96133899104196, 'total_count': 4242, 'week': '2025-03-03', 'win_count': 2668, 'win_rate': 62.89486091466289}, {'avg_performance': 7.5116446120585945, 'bin': 0.8, 'count': 4597, 'hit_count': 4349, 'hit_rate': 94.60517728953666, 'total_count': 4597, 'week': '2025-03-03', 'win_count': 3424, 'win_rate': 74.48335871220361}, {'avg_performance': 7.207510868640155, 'bin': 0.9, 'count': 1595, 'hit_count': 1491, 'hit_rate': 93.47962382445141, 'total_count': 1595, 'week': '2025-03-03', 'win_count': 1068, 'win_rate': 66.95924764890282}, {'avg_performance': 6.965085825096652, 'bin': 1.0, 'count': 2060, 'hit_count': 1904, 'hit_rate': 92.42718446601941, 'total_count': 2060, 'week': '2025-03-03', 'win_count': 1408, 'win_rate': 68.3495145631068}], '2025-03-10': [{'avg_performance': 6.290901408480255, 'bin': 0.1, 'count': 11, 'hit_count': 9, 'hit_rate': 81.81818181818181, 'total_count': 11, 'week': '2025-03-10', 'win_count': 8, 'win_rate': 72.72727272727273}, {'avg_performance': 5.949983465083946, 'bin': 0.2, 'count': 72, 'hit_count': 52, 'hit_rate': 72.22222222222223, 'total_count': 72, 'week': '2025-03-10', 'win_count': 41, 'win_rate': 56.94444444444444}, {'avg_performance': 3.2340802678516294, 'bin': 0.3, 'count': 9480, 'hit_count': 6245, 'hit_rate': 65.87552742616033, 'total_count': 9480, 'week': '2025-03-10', 'win_count': 4528, 'win_rate': 47.76371308016878}, {'avg_performance': 4.473790963606512, 'bin': 0.4, 'count': 1248, 'hit_count': 988, 'hit_rate': 79.16666666666667, 'total_count': 1248, 'week': '2025-03-10', 'win_count': 680, 'win_rate': 54.48717948717949}, {'avg_performance': 4.538384929799797, 'bin': 0.5, 'count': 19722, 'hit_count': 14945, 'hit_rate': 75.7783186289423, 'total_count': 19722, 'week': '2025-03-10', 'win_count': 10584, 'win_rate': 53.66595679951323}, {'avg_performance': 5.597918144164884, 'bin': 0.6, 'count': 18183, 'hit_count': 14358, 'hit_rate': 78.96386734862234, 'total_count': 18183, 'week': '2025-03-10', 'win_count': 10734, 'win_rate': 59.033162844415116}, {'avg_performance': 7.572677178631421, 'bin': 0.7, 'count': 4953, 'hit_count': 4573, 'hit_rate': 92.32788209166162, 'total_count': 4953, 'week': '2025-03-10', 'win_count': 3363, 'win_rate': 67.89824348879468}, {'avg_performance': 7.772785606072329, 'bin': 0.8, 'count': 7090, 'hit_count': 6721, 'hit_rate': 94.79548660084626, 'total_count': 7090, 'week': '2025-03-10', 'win_count': 5267, 'win_rate': 74.28772919605078}, {'avg_performance': 8.511171435907826, 'bin': 0.9, 'count': 1829, 'hit_count': 1734, 'hit_rate': 94.80590486604702, 'total_count': 1829, 'week': '2025-03-10', 'win_count': 1358, 'win_rate': 74.24822307271734}, {'avg_performance': 9.5249542925121, 'bin': 1.0, 'count': 940, 'hit_count': 884, 'hit_rate': 94.04255319148936, 'total_count': 940, 'week': '2025-03-10', 'win_count': 785, 'win_rate': 83.51063829787235}]}, 'curve_data_week_list': ['2025-02-24', '2025-03-03', '2025-03-10'], 'date_from': '2025-02-25', 'date_to': '2025-04-26', 'keyword': '', 'kpis': {'avg_gain': 4.829783258048549, 'fail_count': 72238, 'hit_count': 123266, 'hit_rate': 76.97005270125135, 'pass_count': 87910, 'total_tests': 160148, 'win_rate': 54.89297399905088}, 'model_id': None, 'models': '<<queryset of core.Model>>', 'performance_data': '<<queryset of core.ModelTest>>', 'price_history': {'FDM': {'2025-02-25': {'performance': 0.2439737034331652, 'price_close': 68.617, 'price_high': 68.9701, 'price_low': 68.24, 'price_open': 68.45, 'volume': 9094}, '2025-02-26': {'performance': 0.03851744186046313, 'price_close': 68.8265, 'price_high': 69.3199, 'price_low': 68.645, 'price_open': 68.8, 'volume': 6254}, '2025-02-27': {'performance': -1.4478109596984625, 'price_close': 67.9813, 'price_high': 68.98, 'price_low': 67.9, 'price_open': 68.98, 'volume': 2657}, '2025-02-28': {'performance': 0.8592483419307483, 'price_close': 68.433, 'price_high': 68.433, 'price_low': 67.85, 'price_open': 67.85, 'volume': 2706}, '2025-03-03': {'performance': -3.22194803309624, 'price_close': 66.6704, 'price_high': 69.03, 'price_low': 66.6704, 'price_open': 68.89, 'volume': 5526}, '2025-03-04': {'performance': -0.11173780487803207, 'price_close': 65.5267, 'price_high': 66.2101, 'price_low': 64.61, 'price_open': 65.6, 'volume': 24769}, '2025-03-05': {'performance': 0.02499233363998941, 'price_close': 65.2363, 'price_high': 65.35, 'price_low': 64.6, 'price_open': 65.22, 'volume': 23216}, '2025-03-06': {'performance': -0.008407286314819759, 'price_close': 64.2246, 'price_high': 64.81, 'price_low': 63.805, 'price_open': 64.23, 'volume': 3244}, '2025-03-07': {'performance': 0.6160937500000019, 'price_close': 64.3943, 'price_high': 64.53, 'price_low': 63.43, 'price_open': 64, 'volume': 4535}, '2025-03-10': {'performance': -1.2488965952080666, 'price_close': 62.6477, 'price_high': 63.4408, 'price_low': 62.21, 'price_open': 63.44, 'volume': 6153}, '2025-03-11': {'performance': -0.033433634236042724, 'price_close': 62.79, 'price_high': 63.145, 'price_low': 62.3532, 'price_open': 62.811, 'volume': 54425}, '2025-03-12': {'performance': -0.9253778337531509, 'price_close': 62.9322, 'price_high': 63.52, 'price_low': 62.23, 'price_open': 63.52, 'volume': 9627}, '2025-03-13': {'performance': -1.9988887124940524, 'price_close': 61.7309, 'price_high': 62.99, 'price_low': 61.555, 'price_open': 62.99, 'volume': 6706}, '2025-03-14': {'performance': 1.185517462351802, 'price_close': 63.16, 'price_high': 63.16, 'price_low': 62.42, 'price_open': 62.42, 'volume': 5113}, '2025-03-17': {'performance': 0.27025316455696174, 'price_close': 63.3708, 'price_high': 63.6, 'price_low': 63.2, 'price_open': 63.2, 'volume': 6892}, '2025-03-18': {'performance': 0.23666739251024405, 'price_close': 63.0642, 'price_high': 63.27, 'price_low': 62.8385, 'price_open': 62.9153, 'volume': 39843}, '2025-03-19': {'performance': 0.9771320890052106, 'price_close': 64.195, 'price_high': 64.22, 'price_low': 63.4985, 'price_open': 63.5738, 'volume': 3622}, '2025-03-20': {'performance': -0.13964517005783372, 'price_close': 63.93, 'price_high': 64.33, 'price_low': 63.92, 'price_open': 64.0194, 'volume': 2562}, '2025-03-21': {'performance': 0.1123239993671855, 'price_close': 63.281, 'price_high': 63.31, 'price_low': 62.93, 'price_open': 63.21, 'volume': 15408}, '2025-03-24': {'performance': 1.1229303342705483, 'price_close': 64.7389, 'price_high': 64.7389, 'price_low': 64.02, 'price_open': 64.02, 'volume': 9722}, '2025-03-25': {'performance': -0.8733961972484121, 'price_close': 64.125, 'price_high': 64.69, 'price_low': 64.12, 'price_open': 64.69, 'volume': 7824}, '2025-03-26': {'performance': -0.1718749999999991, 'price_close': 63.89, 'price_high': 64.48, 'price_low': 63.58, 'price_open': 64, 'volume': 12776}, '2025-03-27': {'performance': 0.4425350780387877, 'price_close': 63.7107, 'price_high': 63.96, 'price_low': 63.39, 'price_open': 63.43, 'volume': 2086}, '2025-03-28': {'performance': -1.6532829475673079, 'price_close': 62.46, 'price_high': 63.64, 'price_low': 62.26, 'price_open': 63.51, 'volume': 17014}, '2025-03-31': {'performance': 0.6382909855963707, 'price_close': 62.1844, 'price_high': 62.52, 'price_low': 61.6, 'price_open': 61.79, 'volume': 6565}, '2025-04-01': {'performance': 1.4288036146732348, 'price_close': 62.4061, 'price_high': 62.83, 'price_low': 61.527, 'price_open': 61.527, 'volume': 4373}, '2025-04-02': {'performance': 0.8406654935210383, 'price_close': 63.0355, 'price_high': 63.159594, 'price_low': 62.3501, 'price_open': 62.51, 'volume': 8589}, '2025-04-03': {'performance': -1.9890601690701073, 'price_close': 59.13, 'price_high': 60.41, 'price_low': 58.7975, 'price_open': 60.33, 'volume': 13272}, '2025-04-04': {'performance': 0.3464594737771455, 'price_close': 56.8262, 'price_high': 57.165, 'price_low': 55.5689, 'price_open': 56.63, 'volume': 167697}, '2025-04-07': {'performance': 3.7297049660985877, 'price_close': 56.6053, 'price_high': 58.55, 'price_low': 54.21, 'price_open': 54.57, 'volume': 23429}, '2025-04-08': {'performance': -5.32423208191127, 'price_close': 55.48, 'price_high': 58.6, 'price_low': 55.288, 'price_open': 58.6, 'volume': 37629}, '2025-04-09': {'performance': 8.292674059261962, 'price_close': 59.5718, 'price_high': 60.4299, 'price_low': 54.88, 'price_open': 55.01, 'volume': 17468}, '2025-04-10': {'performance': -0.9831121833534425, 'price_close': 57.4595, 'price_high': 58.22, 'price_low': 56.455, 'price_open': 58.03, 'volume': 45386}, '2025-04-11': {'performance': 1.170706190061026, 'price_close': 58.0214, 'price_high': 58.0501, 'price_low': 56.49, 'price_open': 57.35, 'volume': 11050}, '2025-04-14': {'performance': -1.0665312341290039, 'price_close': 58.44, 'price_high': 59.07, 'price_low': 57.76, 'price_open': 59.07, 'volume': 18220}, '2025-04-15': {'performance': -0.15368852459016974, 'price_close': 58.47, 'price_high': 58.9199, 'price_low': 58.4, 'price_open': 58.56, 'volume': 3396}, '2025-04-16': {'performance': 0.08551393877202713, 'price_close': 58.52, 'price_high': 58.91, 'price_low': 58.245, 'price_open': 58.47, 'volume': 9918}, '2025-04-17': {'performance': 0.23610169491525193, 'price_close': 59.1393, 'price_high': 59.27, 'price_low': 58.7835, 'price_open': 59, 'volume': 11102}, '2025-04-21': {'performance': -0.6769336071184029, 'price_close': 58.0444, 'price_high': 58.4754, 'price_low': 57.42, 'price_open': 58.44, 'volume': 5228}, '2025-04-22': {'performance': 1.62073087431693, 'price_close': 59.5091, 'price_high': 59.64, 'price_low': 58.56, 'price_open': 58.56, 'volume': 8859}, '2025-04-23': {'performance': -1.5927260812581927, 'price_close': 60.0678, 'price_high': 61.129, 'price_low': 59.82, 'price_open': 61.04, 'volume': 7320}, '2025-04-24': {'performance': 1.485065910228601, 'price_close': 60.82, 'price_high': 60.82, 'price_low': 59.93, 'price_open': 59.93, 'volume': 25217}, '2025-04-25': {'performance': 0.5965202982601482, 'price_close': 60.71, 'price_high': 60.71, 'price_low': 60.025, 'price_open': 60.35, 'volume': 6213}}, 'IWN': {'2025-02-25': {'performance': -0.14216837680800454, 'price_close': 161.55, 'price_high': 162.62, 'price_low': 160.59, 'price_open': 161.78, 'volume': 564285}, '2025-02-26': {'performance': -0.4260048157066109, 'price_close': 161.28, 'price_high': 162.9901, 'price_low': 160.6, 'price_open': 161.97, 'volume': 804754}, '2025-02-27': {'performance': -0.9178294573643349, 'price_close': 159.77, 'price_high': 161.79, 'price_low': 159.68, 'price_open': 161.25, 'volume': 1186228.0}, '2025-02-28': {'performance': 0.996802708294153, 'price_close': 161.1, 'price_high': 161.22, 'price_low': 159.04, 'price_open': 159.51, 'volume': 1965901.0}, '2025-03-03': {'performance': -2.3647393834344395, 'price_close': 157.72, 'price_high': 162.22, 'price_low': 156.78, 'price_open': 161.54, 'volume': 947523}, '2025-03-04': {'performance': -0.33350436121086574, 'price_close': 155.4, 'price_high': 157.85, 'price_low': 153.65, 'price_open': 155.92, 'volume': 1510653.0}, '2025-03-05': {'performance': 0.810810810810805, 'price_close': 156.66, 'price_high': 156.97, 'price_low': 154.04, 'price_open': 155.4, 'volume': 843658}, '2025-03-06': {'performance': 0.0904275933342041, 'price_close': 154.96, 'price_high': 156.31, 'price_low': 153.85, 'price_open': 154.82, 'volume': 801215}, '2025-03-07': {'performance': 0.3549303045947231, 'price_close': 155.51, 'price_high': 156.32, 'price_low': 153.07, 'price_open': 154.96, 'volume': 731002}, '2025-03-10': {'performance': -1.4438085327783552, 'price_close': 151.54, 'price_high': 154.91, 'price_low': 150.45, 'price_open': 153.76, 'volume': 1215790.0}, '2025-03-11': {'performance': -0.5718793137448265, 'price_close': 151.26, 'price_high': 152.88, 'price_low': 149.8428, 'price_open': 152.13, 'volume': 1366711.0}, '2025-03-12': {'performance': -0.7282031096240987, 'price_close': 151.32, 'price_high': 152.68, 'price_low': 150.16, 'price_open': 152.43, 'volume': 978453}, '2025-03-13': {'performance': -1.452432824981837, 'price_close': 149.27, 'price_high': 152.42, 'price_low': 148.67, 'price_open': 151.47, 'volume': 1515509.0}, '2025-03-14': {'performance': 1.3872295234302425, 'price_close': 152.75, 'price_high': 152.86, 'price_low': 150.29, 'price_open': 150.66, 'volume': 664472}, '2025-03-17': {'performance': 1.2130352108058637, 'price_close': 154.36, 'price_high': 154.72, 'price_low': 152.4, 'price_open': 152.51, 'volume': 691119}, '2025-03-18': {'performance': -0.29306414848584633, 'price_close': 153.1, 'price_high': 153.55, 'price_low': 152.48, 'price_open': 153.55, 'volume': 907541}, '2025-03-19': {'performance': 1.20772946859903, 'price_close': 155.03, 'price_high': 156.025, 'price_low': 152.97, 'price_open': 153.18, 'volume': 1533592.0}, '2025-03-20': {'performance': 0.31213421771361016, 'price_close': 154.26, 'price_high': 155.74, 'price_low': 153.488, 'price_open': 153.78, 'volume': 836030}, '2025-03-21': {'performance': 0.3013429413691503, 'price_close': 153.11, 'price_high': 153.58, 'price_low': 151.75, 'price_open': 152.65, 'volume': 576402}, '2025-03-24': {'performance': 0.8774193548387185, 'price_close': 156.36, 'price_high': 156.59, 'price_low': 154.96, 'price_open': 155, 'volume': 666269}, '2025-03-25': {'performance': -0.849351810460446, 'price_close': 155.26, 'price_high': 156.59, 'price_low': 154.9, 'price_open': 156.59, 'volume': 1452399.0}, '2025-03-26': {'performance': -0.5788525855415342, 'price_close': 154.58, 'price_high': 156.4299, 'price_low': 153.91, 'price_open': 155.48, 'volume': 614595}, '2025-03-27': {'performance': 0.0778058743435159, 'price_close': 154.35, 'price_high': 155.21, 'price_low': 153.4613, 'price_open': 154.23, 'volume': 994816}, '2025-03-28': {'performance': -1.8498085285908967, 'price_close': 151.22, 'price_high': 154.255, 'price_low': 150.5, 'price_open': 154.07, 'volume': 766400}, '2025-03-31': {'performance': 0.935954004546047, 'price_close': 150.98, 'price_high': 151.78, 'price_low': 148.53, 'price_open': 149.58, 'volume': 1414571.0}, '2025-04-01': {'performance': 0.24570024570024873, 'price_close': 150.96, 'price_high': 152.042, 'price_low': 149.01, 'price_open': 150.59, 'volume': 864732}, '2025-04-02': {'performance': 2.3763304103353717, 'price_close': 152.94, 'price_high': 153.14, 'price_low': 149.28, 'price_open': 149.39, 'volume': 559081}, '2025-04-03': {'performance': -2.8282004215106373, 'price_close': 142.93, 'price_high': 147.56, 'price_low': 142.77, 'price_open': 147.09, 'volume': 1618661.0}, '2025-04-04': {'performance': -0.471869328493652, 'price_close': 137.1, 'price_high': 138.65, 'price_low': 133.66, 'price_open': 137.75, 'volume': 3305088.0}, '2025-04-07': {'performance': 2.3786076812362813, 'price_close': 135.15, 'price_high': 142.06, 'price_low': 130.28, 'price_open': 132.01, 'volume': 3024318.0}, '2025-04-08': {'performance': -5.989731888191676, 'price_close': 131.84, 'price_high': 140.24, 'price_low': 130.2, 'price_open': 140.24, 'volume': 2277492.0}, '2025-04-09': {'performance': 8.951210142143683, 'price_close': 141.8, 'price_high': 143.65, 'price_low': 129.38, 'price_open': 130.15, 'volume': 2903369.0}, '2025-04-10': {'performance': -1.7769430800346777, 'price_close': 135.98, 'price_high': 138.94, 'price_low': 132.5173, 'price_open': 138.44, 'volume': 1657245.0}, '2025-04-11': {'performance': 1.2084592145015005, 'price_close': 137.35, 'price_high': 137.77, 'price_low': 133.31, 'price_open': 135.71, 'volume': 1408029.0}, '2025-04-14': {'performance': -0.4872107186358149, 'price_close': 138.89, 'price_high': 139.695, 'price_low': 136.45, 'price_open': 139.57, 'volume': 963592}, '2025-04-15': {'performance': 0.4976918638199843, 'price_close': 139.33, 'price_high': 140.73, 'price_low': 138.64, 'price_open': 138.64, 'volume': 888117}, '2025-04-16': {'performance': -0.1726742931146191, 'price_close': 138.75, 'price_high': 139.94, 'price_low': 137.18, 'price_open': 138.99, 'volume': 1966359.0}, '2025-04-17': {'performance': 0.8060453400503811, 'price_close': 140.07, 'price_high': 140.75, 'price_low': 138.71, 'price_open': 138.95, 'volume': 722467}, '2025-04-21': {'performance': -0.7920506912442355, 'price_close': 137.78, 'price_high': 139.2, 'price_low': 136.285, 'price_open': 138.88, 'volume': 1917533.0}, '2025-04-22': {'performance': 1.4070351758793822, 'price_close': 141.26, 'price_high': 141.65, 'price_low': 138.87, 'price_open': 139.3, 'volume': 820549}, '2025-04-23': {'performance': -1.4979980670992792, 'price_close': 142.69, 'price_high': 146.57, 'price_low': 142.26, 'price_open': 144.86, 'volume': 1078891.0}, '2025-04-24': {'performance': 1.392192528333573, 'price_close': 144.93, 'price_high': 145.19, 'price_low': 142.36, 'price_open': 142.94, 'volume': 1256961.0}, '2025-04-25': {'performance': 0.4792998055015266, 'price_close': 144.65, 'price_high': 144.69, 'price_low': 142.92, 'price_open': 143.96, 'volume': 391639}}}} {'block': <Block Node: content. Contents: [<TextNode: '\n\n <div class="pl-cont'>, <IfNode>, <TextNode: '\n '>, <ForNode: for m in models, tail_len: 9>, <TextNode: '\n '>, <Variable Node: keyword>, <TextNode: '" placeholder="Keyword...'>, <Variable Node: compare_tickers>, <TextNode: '" class="uk-input uk-form'>, <Variable Node: date_from>, <TextNode: '" uk-datepicker="format:\''>, <Variable Node: date_to>, <TextNode: '" uk-datepicker="format:'>, <Variable Node: curve_data_week_list|length>, <TextNode: '" value="0" step="1"\n '>, <IncludeNode: template=<FilterExpression '"components/kpis.html"'>>, <TextNode: '\n <!-- /KPIs-->\n\n '>, <IfNode>, <TextNode: '\n\n </div>\n\n'>]>} {'forloop': {'counter': 255, 'counter0': 254, 'first': False, 'last': True, 'parentloop': {}, 'revcounter': 1, 'revcounter0': 0}, 'p': {'avg_performance': 0.618865438924573, 'date': datetime.date(2025, 2, 25), 'fail_count': 512, 'hit_count': 338, 'hit_rate': 48.70317002881844, 'm_id': 60, 'm_name': 'Rolling LGBM 3d PC Platt 3%', 'metrics': {'content': 0, 'financial': 0, 'other': 0}, 'pass_count': 182, 'total_count': 694, 'win_rate': 26.22478386167147, 'x_fdm_performance_0': 0.2439737034331652, 'x_fdm_performance_1': 0.03851744186046313, 'x_fdm_performance_2': -1.4478109596984625, 'x_iwn_performance_0': -0.14216837680800454, 'x_iwn_performance_1': -0.4260048157066109, 'x_iwn_performance_2': -0.9178294573643349}} {'metrics': {'content': 0.18, 'financial': 0, 'other': 0.09}}
snippets/metrics.html
/mnt/disks/pennyloupe_disk/pennyloupe/app/core/templates/snippets/metrics.html
Toggle context {'False': False, 'None': None, 'True': True} {'DEFAULT_MESSAGE_LEVELS': {'DEBUG': 10, 'ERROR': 40, 'INFO': 20, 'SUCCESS': 25, 'WARNING': 30}, 'csrf_token': '<SimpleLazyObject: <function csrf.<locals>._get_val at ' '0x7f4dc1d3b920>>', 'messages': <FallbackStorage: request=<WSGIRequest: GET '/model/tests'>>, 'perms': PermWrapper(<SimpleLazyObject: <function AuthenticationMiddleware.process_request.<locals>.<lambda> at 0x7f4db1b48860>>), 'request': '<<request>>', 'user': '<SimpleLazyObject: <function ' 'AuthenticationMiddleware.process_request.<locals>.<lambda> at ' '0x7f4db1b48860>>'} {'compare_tickers': 'FDM,IWN', 'compare_tickers_list': ['FDM', 'IWN'], 'curve_data': [{'avg_performance': 3.6905226183723774, 'bin': 0.1, 'count': 37, 'hit_count': 28, 'hit_rate': 75.67567567567568, 'total_count': 37, 'win_count': 23, 'win_rate': 62.16216216216216}, {'avg_performance': 3.336306550892685, 'bin': 0.2, 'count': 218, 'hit_count': 149, 'hit_rate': 68.34862385321101, 'total_count': 218, 'win_count': 98, 'win_rate': 44.95412844036697}, {'avg_performance': 2.4521529758520026, 'bin': 0.3, 'count': 20794, 'hit_count': 12563, 'hit_rate': 60.41646628835241, 'total_count': 20794, 'win_count': 8571, 'win_rate': 41.2186207559873}, {'avg_performance': 4.166536477557328, 'bin': 0.4, 'count': 3375, 'hit_count': 2617, 'hit_rate': 77.54074074074074, 'total_count': 3375, 'win_count': 1718, 'win_rate': 50.903703703703705}, {'avg_performance': 4.146576806797269, 'bin': 0.5, 'count': 50843, 'hit_count': 37086, 'hit_rate': 72.94219459905985, 'total_count': 50843, 'win_count': 25579, 'win_rate': 50.309777157130775}, {'avg_performance': 4.772171274363585, 'bin': 0.6, 'count': 48406, 'hit_count': 36740, 'hit_rate': 75.89968185762096, 'total_count': 48406, 'win_count': 26337, 'win_rate': 54.40854439532289}, {'avg_performance': 7.031132742602842, 'bin': 0.7, 'count': 11738, 'hit_count': 10795, 'hit_rate': 91.96626341795877, 'total_count': 11738, 'win_count': 7579, 'win_rate': 64.56806951780541}, {'avg_performance': 7.329056192699537, 'bin': 0.8, 'count': 16397, 'hit_count': 15462, 'hit_rate': 94.29773739098616, 'total_count': 16397, 'win_count': 11990, 'win_rate': 73.12313228029518}, {'avg_performance': 7.423021237916409, 'bin': 0.9, 'count': 4383, 'hit_count': 4126, 'hit_rate': 94.13643623089209, 'total_count': 4383, 'win_count': 3063, 'win_rate': 69.88364134154689}, {'avg_performance': 7.707085051395637, 'bin': 1.0, 'count': 3957, 'hit_count': 3700, 'hit_rate': 93.50518069244377, 'total_count': 3957, 'win_count': 2952, 'win_rate': 74.60197119029567}], 'curve_data_by_week': {'2025-02-24': [{'avg_performance': 2.48035107554341, 'bin': 0.1, 'count': 13, 'hit_count': 11, 'hit_rate': 84.61538461538461, 'total_count': 13, 'week': '2025-02-24', 'win_count': 8, 'win_rate': 61.53846153846154}, {'avg_performance': 2.3664970148125226, 'bin': 0.2, 'count': 64, 'hit_count': 42, 'hit_rate': 65.625, 'total_count': 64, 'week': '2025-02-24', 'win_count': 22, 'win_rate': 34.375}, {'avg_performance': 1.0767794981180734, 'bin': 0.3, 'count': 5426, 'hit_count': 2846, 'hit_rate': 52.4511610762993, 'total_count': 5426, 'week': '2025-02-24', 'win_count': 1756, 'win_rate': 32.36269812016218}, {'avg_performance': 3.6449872755976966, 'bin': 0.4, 'count': 944, 'hit_count': 718, 'hit_rate': 76.05932203389831, 'total_count': 944, 'week': '2025-02-24', 'win_count': 435, 'win_rate': 46.08050847457627}, {'avg_performance': 3.430643476606452, 'bin': 0.5, 'count': 12299, 'hit_count': 8618, 'hit_rate': 70.07073745832994, 'total_count': 12299, 'week': '2025-02-24', 'win_count': 5643, 'win_rate': 45.88177900642329}, {'avg_performance': 3.5343202660041855, 'bin': 0.6, 'count': 12869, 'hit_count': 9408, 'hit_rate': 73.10591343538736, 'total_count': 12869, 'week': '2025-02-24', 'win_count': 6522, 'win_rate': 50.67992851037376}, {'avg_performance': 5.764532699040147, 'bin': 0.7, 'count': 2543, 'hit_count': 2321, 'hit_rate': 91.27015336217066, 'total_count': 2543, 'week': '2025-02-24', 'win_count': 1548, 'win_rate': 60.87298466378294}, {'avg_performance': 6.482898973037831, 'bin': 0.8, 'count': 4710, 'hit_count': 4392, 'hit_rate': 93.2484076433121, 'total_count': 4710, 'week': '2025-02-24', 'win_count': 3299, 'win_rate': 70.04246284501062}, {'avg_performance': 5.706141495340114,